Mocha/Chai と一緒にWebdriverIOを使用して自分のサイトのテストを書いていますが、これを行うと:
it('select application', function(done) {
client
.click('.disciplinetext > table:nth-child(7) > tbody:nth-child(1) > tr:nth-child(1) > td:nth-child(3) > button:nth-child(1)')
// more stuff
要素はまだ存在しません (レンダリングされませんでした)。.click()
実際に要素をクリックしようとする前に、ページの読み込みが完了するのを暗黙のうちに待つべきではありませんか?
その前にこの行を平手打ちするとうまくいきます:
.waitFor('.disciplinetext > table:nth-child(7) > tbody:nth-child(1) > tr:nth-child(1) > td:nth-child(3) > button:nth-child(1)',1000)
しかし、 、、、またはその他のAPI コマンドwaitFor
の前にスローする必要はありません。何か不足していますか?.setValue()
.click()
.getText()
ページ全体が読み込まれるまで待機するコマンド、または要素にアクセスする前に暗黙的に待機する設定はありますか?