0

cucumber、webrat + IE で selenium_client を使用しています。ご想像のとおり、Firefox は正常に動作します。私は次のことを試しました:

selenium.is_visible("css=#flash .flash_notice")
selenium.is_visible("xpath=//*[@id='flash']/*[@class='flash_notice]")
selenium.is_visible("xpath=//*[@id='flash']/*[contains(@class,'flash_notice]')")

どちらも要素を見つけることができません。IEから返されるhtmlセレンを詳しく見ると、IEと関係があるに違いないと思います...次のようになります。

<UL id=flash>
  <LI className=flash_notice>Deleted</LI>
</UL>

IE がクラス属性を className として返すことに注意してください。これは紛らわしいセレンですか? IEとFirefoxを使用してセレンに同じステートメントを使用できるように、これを回避するにはどうすればよいですか

さらに混乱させるために、この例は機能し、クラス属性のチェックと関係があることを確認しています

selenium.is_visible("xpath=//*[@id='flash']/*[. =\'Deleted\']")
4

1 に答える 1

0

XPATH式の形式が正しくないようです。

最初のXPATHには'、の末尾に一重引用符がありませんflash_notice

そのはず:

selenium.is_visible("xpath=//*[@id='flash']/*[@class='flash_notice']")

2番目のXPATHには、式を台無しにする' ]andの順序が正しくありません。)

そのはず:

selenium.is_visible("xpath=//*[@id='flash']/*[contains(@class,'flash_notice')]")

于 2010-04-17T13:21:45.133 に答える