element(locator).sendKeys への呼び出しは、解決または拒否された promise を返します。promise は、テストの制御フローの一部です。
element(locator) 自体への呼び出しはエラーをスローしません。拒否されるのは promise です。シナリオを完了できないため、実際にはテスト全体を失敗させたい要素が見つからない場合。
エラー メッセージを取得するには、以下に示すように promise コールバックを使用できます。
重要な注意: promise の失敗を自分で処理する場合、テストは失敗しないため、再スローする必要があります。
try {
element(by.id('usernameas')).sendKeys(data).then(function() {
console.log('keys sent successfully');
}, function(err) {
console.error('error sending keys ' + err);
throw err;
});
}
catch(err) {
console.log('error occured');
}
コンソール出力は (トリミングされています):
error sending keys NoSuchElementError: no such element
(Session info: chrome=31.0.1650.63)
(Driver info: chromedriver=2.8.241075,platform=Windows NT 6.1 S .....