0

ブラウザで behat/mink テスト ルーチンを実行する際に問題があります。私はsahiとseleniumのダイバーを試しましたが、結果は同じです:

テストを実行すると、sahi はログイン モーダル ポップアップを開きますが、ユーザー名とパスワードを入力しません。「送信」をクリックすると再び機能しますが、ユーザー名とパスワードがないため、ユーザーはログインしていません (「ユーザー名/パスワードが間違っています」というメッセージが表示されます)。

今質問:

  • なぜこれが起こるのか、そして問題を解決するために私ができることを誰かが知っていますか
  • 誰かがブラウザで実行を遅くする方法を教えてもらえますか (従うのは非常に難しいです)
  • テスト スクリプトの実行中に発生する問題をデバッグする方法について、他にアイデアはありますか?

ログインするための私の機能ステップ:

    /**
     * @Given /^I am login as "([^"]*)"$/
     */
    パブリック関数 iAmLoggedInAs($username)
    {
        $user = $this->getUserFromUsername($username);
        $this->clickLink('ログイン');
        $this->fillField('_username',$user->getEmail());
        $this->fillField('_password','12341234');
        $this->pressButton('_submit');
        $this->loggedInUser = $user;
    }

ページの html:

http://pastebin.com/Mb5a0xnq

4

1 に答える 1

1

フィールド パラメータは、フィールド ラベル (id ではなく実際のテキスト) またはフィールド名のいずれかである必要があります。

あなたの問題の解決策は、次のいずれかを使用することです:

$this->fillField('_username',$user->getEmail());
$this->fillField('_password','12341234');

また

$this->fillField('E-Mail',$user->getEmail());
$this->fillField('Passwort:','12341234');
于 2012-05-17T10:47:47.753 に答える