私は現在、分度器でテストしようとしている簡単なフォームを持っています。基本的な入力タイプでうまくいくようですが、ngTagsInputの設定では機能しないようです。私は以下のエラーを引き起こさずにこれを設定する特別な方法があるのだろうかと思っていました。分度器:ngTagsInputでビルドされた要素をテストするには?
Failed: unknown error: cannot focus element
(Session info: ...)
(Driver info: ...)
...
現在のところ、私のフォームには4つの要素があります。名前(標準入力)、タイプ(ラジオボタン)、ターゲット(タグ入力)、および送信ボタン。 HTMLでは、このように表示されます。
最後に、書いた1つの分度器のテストは、このようになります。
it('should submit a valid thing',function(){
//Sets a name for the object
element(by.model('name')).sendKeys('user');
//Sets a type for the object
element(by.id('t1')).click();
/*Inputting tags (the functions below) seem to not work and throw an error*/
//Clicks (or focuses on) the tag input box
element(by.model('targets')).click();
//Types in the elements within it
element(by.model('targets')).sendKeys('target1');
//Presses Enter to submit that particular target
browser.actions().sendKeys(protractor.Key.ENTER).perform();
//Repeat for more
element(by.model('targets')).sendKeys('target2');
browser.actions().sendKeys(protractor.Key.ENTER).perform();
element(by.model('targets')).sendKeys('target3');
browser.actions().sendKeys(protractor.Key.ENTER).perform();
element(by.id('submit')).click();
}
申し訳ありませんが、コピーして貼り付ける代わりに入力しました。しかし、はい、by.model()です。私は質問の詳細を修正しました。 – OliviaHarmon
ありません。これは現在このページの唯一のものです。 – OliviaHarmon
レンダリングされるHTMLを見て、それらの要素の1つに焦点を当てる必要があります。カスタム要素はフォーカスを受け取ることができません。 – MBielski