次の技術スタックを使用していくつかの統合テストを作成しようとしています: Selenium(JavaScript バインディング)、WebdriverJS、Mocha & Chai。
私は基本的にこの記事に従おうとしていますが、何らかの理由WebdriverJS
で「公式」の SeleniumJS バインディングではなく使用することを提案しています。
ホームページに移動するための簡単なスクリプトを設定し、そのページにつながるリンクをクリックしたいと考えていAbout
ます。HTML は次のとおりです。
<ul id="nav">
...
<li>
<a href="/about/">
<span>About</span>
</a>
</li>
...
</ul>
今、私はこのリンクをクリックするためにこのコードを書きました:
client
.url(my_url)
.getTitle (err, title) ->
expect(err).to.be.null
.click 'a[href*="about"]', (err) ->
expect(err).to.be.null
残念ながら、最後の行は常にエラーをスローします。ネストされた CSS セレクターを使用していることに気付きましたが、これは解析が難しい場合があります。しかし、jQuery
ブラウザからこの要素にアクセスしようとすると、まったく同じ行でオブジェクトが取得されます。
この場合、何が問題なのかについてのアイデアはありますか?
注(個人): のドキュメントWebdriverJS
は非常に貧弱であり、.click()
関数の説明は基本的に 2 行しかありません。