2011-07-22 1 views
0

説明ボックスをクリックして簡単な説明を入力するテストを作成しようとしています。 Firefox 4でSelenium 2.0を使用しているときは、コードを使用していました:Selenium 2 WebdriverはFirefox 4から5にアップグレードした後にxpathで要素を見つけることができません

 WebElement venueDescription = driver.findElement(By.xpath("//iframe[contains(@id,'Frame')]")); 

    venueDescription.sendKeys("This is a description for the Venue"); 

これを行うには、次のようにします。しかし、firefox 5とSelenium 2.1にアップグレードした後、「要素を見つけることができません」というエラーが表示されます。 コードのコピーです。 最初と3番目のテキストエリアが隠されているので、contains()を使って2番目のテキストエリアを選択します。これはアップデートまでうまくいきました。

<input id="cf_textarea1311363997499___Config" type="hidden" style="display:none" value="LinkBrowserURL=%2FCFIDE%2Fscripts%2Fajax%2FFCKeditor%2Feditor%2Ffilemanager%2Fbrowser%2Fdefault%2Fbrowser.html%3FConnector%3D..%2F..%2Fconnectors%2Fcfm%2Fconnector.cfm%26_cf_clientid%3D242D1F3D48B023DBFB61177D36938485&LinkUploadURL=%2FCFIDE%2Fscripts%2Fajax%2FFCKeditor%2Feditor%2Ffilemanager%2Fconnectors%2Fcfm%2Fupload.cfm%3F_cf_clientid%3D242D1F3D48B023DBFB61177D36938485&ImageBrowserURL=%2FCFIDE%2Fscripts%2Fajax%2FFCKeditor%2Feditor%2Ffilemanager%2Fbrowser%2Fdefault%2Fbrowser.html%3FType%3DImage%26Connec...e%3DImage%26_cf_clientid%3D242D1F3D48B023DBFB61177D36938485&FlashBrowserURL=%2FCFIDE%2Fscripts%2Fajax%2FFCKeditor%2Feditor%2Ffilemanager%2Fbrowser%2Fdefault%2Fbrowser.html%3FType%3DFlash%26Connector%3D..%2F..%2Fconnectors%2Fcfm%2Fconnector.cfm%26_cf_clientid%3D242D1F3D48B023DBFB61177D36938485&FlashUploadURL=%2FCFIDE%2Fscripts%2Fajax%2FFCKeditor%2Feditor%2Ffilemanager%2Fconnectors%2Fcfm%2Fupload.cfm%3FType%3DFlash%26_cf_clientid%3D242D1F3D48B023DBFB61177D36938485&AutoDetectLanguage=false&DefaultLanguage=en"> 
<iframe width="0" scrolling="no" height="0" frameborder="0" src="javascript:void(0)" style="position: absolute; z-index: 10000;"> 
<iframe width="0" scrolling="no" height="0" frameborder="0" src="javascript:void(0)" style="position: absolute; z-index: 10000;"> 
<iframe width="0" scrolling="no" height="0" frameborder="0" src="javascript:void(0)" style="position: absolute; z-index: 10000;"> 
<iframe width="0" scrolling="no" height="0" frameborder="0" src="javascript:void(0)" style="position: absolute; z-index: 10000;"> 
<iframe width="0" scrolling="no" height="0" frameborder="0" src="javascript:void(0)" style="position: absolute; z-index: 10000;"> 
<iframe width="0" scrolling="no" height="0" frameborder="0" src="javascript:void(0)" style="position: absolute; z-index: 10000;"> 
<iframe id="cf_textarea1311363997499___Frame" width="675" scrolling="no" height="200" frameborder="0" src="/CFIDE/scripts/ajax/FCKeditor/editor/fckeditor.html?InstanceName=cf_textarea1311363997499&Toolbar=BasicText"> 
<textarea id="cf_textarea1311363997499" name="description" style="display: none;"></textarea> 
+0

あなたはこれが答えた場合私は、例のHTMLを簡単な条件にトリミングすることをお勧めします。 – MarkHu

答えて

0

iFrameに切り替えようとしたことがありますか?私はテストのウェブサイト上で

、すべてがのiFrameに埋め込まれていると私はそれらの要素のいずれかに得ることができる前に、私が最初に彼らに切り替える必要があり、このように:

driver.switchTo().defaultContent(); 
driver.switchTo().frame(driver.findElement(By.xpath("//iFrame[@id='Frame']"))); 
関連する問題