2012-05-10 9 views
0

Sharepoint2010の任意のリストにある[新しいアイテムを追加]リンクがウィンドウ/フレームを表示します。私は、テキストフィールドを見つけて、それらに書き込んで、ウィンドウ/フレームで他の操作を実行できるようにしたいと考えています。現在、以下のメソッドでは失敗しています。Selenium Webdriver 2.x&SharePoint 2010 IFrames

BrowserInstance.SwitchTo()。フレーム(インデックス)---すべてのインデックスを除外しました。 BrowserInstance.SwitchTo()ウィンドウ()---

HTMLのようなものになります。

<Div class=some class> 
<Iframe frameborder=0 ..........> 
</iframe></div> 

残念ながらセレンwebdriverを(C#の)DIV(クラス=いくつかのクラス)を特定しなくiFrameをすべてのフィールドとボタンを保持します。

どのような考えですか?

答えて

0

セレンを使用してこれを実行できませんでした。だから、私はSelenium Test内でWatinコードを使用しました。それは非常に良い考えではないかもしれませんが、WatinはSharePoint 2010のiframeをかなりよく識別しているようです。

0
IWebDriver.SwitchTo().Frame(1); 

私のために働く。

この方法の後でWebDriverWaitを使用していますか?モーダルダイアログがロードされるまで待つ必要があります:

webDriverWait.Until(drv => _driver.SwitchTo().Frame(1)); 

// Locate 'Name' field. 
webElement = webDriverWait.Until(drv => _driver.FindElement(By.XPath("//textarea[@title='Name']")));