私は WAMP プラットフォームで Codeception の最新バージョンを実行しています - 私の受け入れは非常に基本的ですが、正常に動作します (以下を参照):
$I = new WebGuy($scenario);
$I->wantTo('Log in to the website');
$I->amOnPage('/auth/login');
$I->fillField('identity','admin@admin.com');
$I->fillField('password','password');
$I->click('Login');
簡単に言えば、ページが 'auth/login' であることを確認し、2 つのフォーム フィールドに入力してログイン ボタンをクリックします。これは問題なく動作します。
これが私の同一の機能テストです:
$I = new TestGuy($scenario);
$I->wantTo('perform actions and see result');
$I->amOnPage('/auth/login');
$I->fillField('identity','admin@admin.com');
$I->fillField('password','password');
$I->click('Login');
コマンドラインからこれを実行すると、次のエラーが表示されます (完全なエラーではありませんが、問題を理解するには十分です)。
1) Couldn't <-[35;1mperform actions and see result<-
[0m in <-[37;1LoginCept.php<-[0m <-41;37mRuntimeException:
Call to undefined method TestGuy::amOnPage<-[0m.......
私の Acceptance スイートでは「PhpBrowser」および「WebHelper」モジュールが有効になっており、Functional スイートでは「FileSystem」および「TestHelper」が有効になっています (acceptance.suite.yml およびfunctional.suite.yml ファイル内)。
明らかに amOnPage() 関数が問題ですが、amOnPage() は受け入れテストと機能テストで機能するはずだと思いますか? または、私は間違っています-また、誰かが表示される「<-[35;1m」などの数字の意味を説明できますか
更新:「WebHelper」モジュールをfunctional.suite.ymlに追加しようとしましたが、amOnPage()がTestGuy.phpファイルで自動生成されていません-アイデアはありますか?
私の設定ファイルは以下の通りです:
ウェブガイ
class_name: WebGuy
modules:
enabled:
- PhpBrowser
- WebHelper
config:
PhpBrowser:
url: 'http://v3.localhost/'
テストガイ
class_name: TestGuy
modules:
enabled: [Filesystem, TestHelper, WebHelper]