私がテストしているSelect要素があります。私は、この選択要素の中にユーザ指定のテキストを含む特定のオプションが存在しないことをアサートする必要があります。また、ユーザ指定のテキストを持つ別のオプションがSelectElementに存在することをアサートします。SelectElement要素の中にSeleniumを介してオプションが存在するかどうかを確認します。
答えて
は、パフォーマンスが少し
public static bool SelectElementContainsItemText(SelectElement selElem, string itemText)
{
bool found = false;
for (int i = 0; i < selElem.Options.Count; i++)
{
var blah = selElem.Options[i].Text;
if (selElem.Options[i].Text.Equals(itemText))
{
found = true;
break;
}
}
return found;
}
あなたは、少なくとも2つの方法でこれを行うことができます:
:あなたのオプションに基づいて要素を作成し、それが存在するかを確認するXPathを使用しては、次のいずれかのようなXPathを使います
// /オプション[テキスト()= 'your_text']
//する/オプションを選択を選択し、[@ヴァルル・レイキャヴィーク= 'your_value']すべてのオプションからテキストを取得し、テキストが、あなたの文字列が含まれているかどうかを確認
最初のオプションはもちろん簡単です。
public bool OptionListContains(SelectElement select, string expectedValue)
{
IList<IWebElement> options = select.Options;
List<string> optionsText = options.Select(a => a.Text).ToList();
return optionsText.Contains(expectedValue);
}
あなたが必要となる前に、LINQクエリを使用していない念のために:
以下適切なAssertをSeleniumコードに供給できますか? SelectElementクラス内に要素やオプションが存在するかどうかを確認できるメソッドはありません。それは私が詰まっている部分です –
申し訳ありませんが、私は持っていない/セレンとC#を使用します。セレンとC#といくつかの簡単なテストを試してみていくつかの基本的なチュートリアルを検索してください。 http://www.seleniumhq.org/docs/03_webdriver.jsp#the-5-minute-getting-started-guide – lauda
を受けるが、これは働くだろう、それを行うための一つの方法です。
using System.Linq;
を参照してください。問題のselect要素には、980個のオプションがあります。私は、最初にすべてのオプションのテキストを取り込んでから、それらのうちの1つにテキストが含まれているかどうかをチェックするので、パフォーマンスが大幅に低下すると思います。私は、トラバーサル時にテキストをチェックしながら各オプションを横断することは、パフォーマンス上の理由から、より良いオプションだと思います。私の答えはこれを行います。 –
- 1. JQueryを使用しないselect要素にオプションが存在するかどうかを確認しますか?
- 2. 要素が存在するかどうかを確認する
- 3. 要素が存在するかどうかを確認します
- 4. ユニットテスト中に指令のhtml要素が存在するかどうかを確認します
- 5. 親要素の子要素が存在するかどうかを確認します。
- 6. Selenium/Java:要素が存在するかどうかを確認するための 'isDisplayed()'の代替メソッド
- 7. ファイルが存在するかどうかを確認します
- 8. 値が存在するかどうかを確認します
- 9. JQuery - 要素が存在するかどうかを確認する
- 10. 要素を挿入する前にunorderd_setに要素が存在するかどうかを確認する
- 11. Selenium - リストボックスにテキストが存在するかどうかを確認する方法
- 12. 要素が分度器に存在するかどうかの確認
- 13. Cloud Spanner APIを介してテーブルが存在するかどうかを確認できますか? (Node.js内)
- 14. 要素が最初に存在するかどうか確認する必要がありますか?
- 15. VB.net配列要素が存在するかどうかの確認
- 16. jquery/PHPのselect要素にitemが存在するかどうかを確認してください
- 17. Python:リストの要素がファイルに存在していないかどうかを確認してください。
- 18. アレイが存在するかどうかを確認していますか?
- 19. 要素またはhtmlタグが存在するかどうかを確認します
- 20. 要素にページが存在するかどうかを確認してください
- 21. Selenium :: Remote :: Driverを使用してページにテキストが存在するかどうか確認する
- 22. 存在するかどうか確認して作成する
- 23. Toplevel()オブジェクトがtkinterに存在するかどうかを確認しますか?
- 24. データがドロップダウンに存在するかどうかを確認しますか?
- 25. iPhoneにアプリケーションが存在するかどうかを確認しますか?
- 26. レストAPIにレコードが存在するかどうかを確認しますか?
- 27. XPathの要素が存在するかどうかを確認してください。
- 28. C#プロセスが存在するかどうかを確認して閉じます
- 29. ロボットフレームワーク - xpathで定義された要素が存在するかどうかを確認します。
- 30. C#でSelenium WebDriverを使用してdivタグが存在するかどうかを確認する方法は?
[ask]をお読みください。試したコードやエラーメッセージなどの実行結果を提供してください。ページや関連するHTMLへのリンクも提供してください。 – JeffC
私はこれをアサートする適切な方法がわからないので、コードを試していません。 SelectElementクラスにはこれをチェックするメソッドが含まれていないようです。ページはプライベートページです –
私はあなたが「知っていない」ことを理解していますが、私の指摘はすべてのチュートリアル、セレクトのドキュメント、その他の質問はこちら...確かにあなたはそれらのいくつかを読んだことがあります。いくつかの試み。 SOはコード作成サービスではありません。私たちはあなたの質問を研究し、あなた自身で少なくともいくつかの試みをする努力を払うことを期待しています。すでに行っている場合は、あなたの質問を更新して、あなたが読んだことを見て、より良いアドバイスをすることができます。 – JeffC