2017-06-26 14 views
0

本当に構文の助けが必要です。Codeceptsセレクタ: "email"入力フィールドの選択方法?

<input class="email__field ng-pristine ng-empty ng-valid-email ng-invalid ng-invalid-required ng-touched" name="email" ng-model="authForm.email" ng-keypress="keypress($event);" ng-disabled="false" focused="true" required="" style="" type="email"> 

ドキュメントよると::http://devdocs.io/codeceptjs/helpers/seleniumwebdriver/index#fillfield

I.fillField('email', '[email protected]'); 

名前で要素を見つける必要があります

は、私は、入力フィールドを持っています。 エラーメッセージ: "名前でフィールドメールが見つかりません" | text | CSS | XPath "

構文が間違っているか、WebDriverに問題がありますか? など。

I.amOnPage(some url here); 

、それが働いているので、私はwebdriverをはOKされるべきだと思う: 前のコマンド/ステップがあります。

答えて

1

使用した構文が正しいです。要素の検索に問題がある可能性があります。

待ちます)、以下により

1の問題をデバッグしよう - (2)) "I.amOnPage" と "I.fillField"
2間の秒に試してみてください> I.waitを要素 'email'をクリックし、fillField I.click( '// input [@ name =' email ']'); I.fillField( 'email');
3)fillFieldのxpathを渡すようにしてください。無効になっている別の要素がある可能性があります。例えば:I.fillField( '// input [@ ng-model = "authForm.email"] [@ name =' email ']')

また、要素がiframe内にないことを確認してください最初にフレームに切り替えてから操作を行う必要があることを意味します。

+0

ありがとうございました。もう一度それは待っている問題だった。 – Simon

+0

その電子メールフィールドのCSSセレクタを動作させることができますか? xpathとして、私は使用します:I.fillField( '// input [@ name = "email"]'、 '[email protected]');それは働いていますが、私はCSSセレクタの地獄を得ることができません。たとえば、document.querySelector( 'input [type = "email"]')は必要な要素を返しますが、それに基づくCSSセレクタは失敗しました。 – Simon

+0

実行スクリプトをI.executeScript( "document.querySelector(\" input [name = 'email'] \ ")として試してみてください。setAttribute( 'value'、 '[email protected]');"); – NithyaViji

関連する問題