2012-04-19 11 views

答えて

19

isElementPresent() - 私たちが探している要素は、ページのどこかに存在している場合は、この方法は、基本的にテストします。 -

のisVisible()はディスプレイを探します:なしスタイルタグ - 私たちは気をつけていない場合、この要素が見える最初のチェックがある場合要素がisElementPresentを使用して存在しているかどうかを確認することが... NULLポインタを投げるかもしれません() 方法。次に、要素が表示されているかどうかを確認してください。

私たちの要素が見えなくても、isElementPresent()は気にしません。 EX用

:あなたは

selenium.isElementPresent("testinput") - returns true! 
selenium.isVisible("testinput") - returns false! 
+0

isVisible()はNULLポインタ例外を取得しません。しかし、要素が存在しない場合は、SeleniumExceptionを取得できます。通常のテクニックは 'if(selenium.isElementPresent(locator)&& selenium.isVisible(locator)){... do something ...}'のようなものです。 –

11

どのように例外を取得

selenium.isElementPresent()selenium.isVisible()

のために真のですか?

ブールisElementPresent(のjava.lang.Stringロケータ)

指定された要素は、ページ上のどこかにあることを確認します。

ブールのisVisible(のjava.lang.Stringロケータ)

指定された要素が表示されているかどうかを決定。エレメント「 」は、CSS「visibility」プロパティーを 「hidden」に設定するか、「display」プロパティーを「none」に設定することで、エレメント またはその祖先のいずれかに対して不可視にレンダリングできます。要素 が存在しない場合、このメソッドは失敗します。

+2

で上記のコンポーネントをテストする場合、今APIは設計が不十分なようだ

: は、以下の私のテストアプリケーションのコンポーネントのためのHTMLコードであると言うことができます。アサーションが必要な場合は、assertElementIsPresentまたはassertIsVisibleを指定します。 isMethodsは、ターゲットが利用できない場合に例外をスローするべきではありません。問題は、APIの非対称設計から来ています。あなたはその日悪い日だったに違いない。 – boatcoder

関連する問題