6

私たちのチームは、AngularJS を使用した Web アプリに取り組んでいます。テストには、単体テストと angular-e2e テストに Jasmine を使用します。それはうまくいきます。しかし、今日 QA チームから、Web アプリのテストに Selenium を使用しようとしたが、ほとんどの DOM 要素の ID を定義していないため問題に直面しているとの連絡がありました。これについて少し調査しましたが、うまくいきませんでした。セレンを使用するためだけにすべてのIDを明示的に追加することなく、セレンテストを行う良い方法を誰かが提案できますか? ありがとう!

アップデート

いくつかの会議があり、テストの堅牢性のために要素に id を挿入することになりました。みんな答えてくれてありがとう:)

4

2 に答える 2

5

Selenium WebDriver を使用している場合、ページ上の要素を見つける方法はたくさんあります。XPATHは、柔軟性に関する限り、おそらくより優れたアプローチの 1 つですが (ただし、すぐに見苦しくなります)、WebDriver では、クラス名、タグ名、名前、リンク テキスト、および CSS も使用できます。

Selenium WebDriver - UI 要素の検索

于 2013-08-16T14:53:39.533 に答える
2

私たちは今、仕事で同じ状況に遭遇しました。このディスカッションで述べたように、この問題を克服するために考えられる 2 つのアプローチを比較しました。

  1. 要素を別の場所に配置してみてください。
  2. Angular 開発では必要ない場合でも、必要に応じて新しい属性を導入します。

(2) を採用し、必要に応じて ID を追加することにしました。堅牢性のテストははるかに優れており、オーバーヘッドはまったく重要ではありません。

私たちは正確に何をしましたか?関連する要素に、named 属性data-hookが追加され、彼を識別する適切な値が追加されました。よく働く。

于 2014-03-18T12:45:52.427 に答える