私は自分のサイトのテストをしようとしています。一部のユーザーフォームで問題が発生しています。秘訣は、フォーム内のテキストフィールドの数がユーザーオプションによって異なることです(無効なものはコードに存在しますが、スタイル< displayed: none;
>タグがあります)。したがって、すべての要素を見つけるよりも柔軟なアプローチを見つけようとしています。 1つずつフォームにtry/exceptブロックを入力します。
xpathロケーターを使用しています
text_fields = driver.find_elements_by_xpath("//div[@class='form-line']/div[@class='form-inputs']/input[@type='text' and not(ancestor::div[@style='display: none;'])]")
問題は、firebugが必要な要素のみを見つけることですが、それをセレンスクリプトで使用すると、< >タグtext_fields
がなくても、リストを印刷するとすべての要素が表示されます。displayed: none;
表示されている要素のみを取得するにはどうすればよいですか?
PS私の悪い英語でごめんなさい^_^