2011-07-20 11 views
0

Hy。私はセレンIDEに問題があります。私はクリックしなければならないテーブルのボタンを持っています。セレン発見ボタン

 
Command: click 
Target: xpath=//table[@id='mainForm:dataTable']//tr[contains(., 'test1')]/td[9]/div/table/tbody/tr/td[contains(., 'Edit')]/a 

私はボタンをクリックし、セレンの「検索」それは私が私のテーブル内の人のtest1の 'のボタン「編集」のショー。セレニウムはボタンを見つけます。つまり、ターゲットに書き込む内容が正しくなければなりません。

 
[error] Element //table[@id='mainForm:dataTable']//tr[contains(., 'test1')]/td[9]/div/table/tbody/tr/td[contains(., 'Löschen')]/a not found 

を、私は#tはなぜ知っているドン:

問題は、私がテストを実行したい場合、セレンは言う、です。

この問題で私を助けてください:)

+0

2つのXPathがお互いに違うのは分かりますか?クイックアンサーは – Tomalak

答えて

0

このテキストが存在しなければならないところたぶん行9よりも、別のですか?おそらく/td[contains(., 'Löschen')]/aを試してみてください適切なプラクティスは、サーバースクリプト内のその要素に何らかの形で署名することです(例えば、rel =またはtitle =または特定のid =を追加するなど)。なしからこのXPathを成長テストを実行するには

しようとすると、thetあなたは次のように、正確に要求された要素が存在しない状況をキャッチする必要があります。エラーは、あなたがたぶん

表示されますまで、

//table 
//table[@id='mainForm:dataTable'] 
//table[@id='mainForm:dataTable']//tr 
//table[@id='mainForm:dataTable']//tr[contains(., 'test1')] 
//table[@id='mainForm:dataTable']//tr[contains(., 'test1')]/td 
//table[@id='mainForm:dataTable']//tr[contains(., 'test1')]/td[9] 

などなどDOMツリーの変更を行うページ上のjavascriptをいくつか持っています

+0

です。私はそれを試してみます。問題はボタンが同じid =を持つことです)。私はそれを他の方法で見つけなければなりません。 Seleniumは、xpath = // table [@ id = 'mainForm:dataTable']でボタンを見つけます// tr [contains(。、 'test1')]/td [9]/div/table/tbody/tr/td [contains (。、 'Edit')]/aをクリックしたいのですが。 – user846290

関連する問題