2015-11-10 15 views
1

我想使用動作類Selenium來點擊iframe中的某個點。但我想要的代碼不是點擊。下面是代碼:使用動作(Selenium)在內部iframe中點擊

Actions action = new Actions(driver); 
action.MoveByOffset(x-coordinate, y-coordinate).Click().Perform(); 

我也試過路過司機,如:

Actions action=new Actions(driver.SwitchTo().Frame(0)); 

,但它給錯誤,我無法找到任何其他的方式來傳遞駕駛員與選定的幀。 我得到的錯誤是

無法找到幀0

+0

請插入錯誤消息。切換iframe後,你可以與iframe交互嗎? –

+0

我已添加錯誤消息 – Sid

回答

0

你想不出開關的iframe,更好的辦法是分配一個iframe對象swithc它。您需要通過xpath找到iframe:

IWebElement iframe = driver.FindElement(By.XPath("//html//body//iframe")); 
driver.SwitchTo().Frame(iframe); 
Actions action = new Actions(driver); 
action.MoveByOffset(x-coordinate, y-coordinate); 
action.Click(); 
action.Perform(); 
+0

它沒有點擊點,但我沒有得到無法找到幀錯誤。 – Sid

+0

@SidharthJain我認爲你可以切換到iframe,但不要點擊座標。覈實? –

+0

@SidharthJain同時調用'.click()'和'.perform'不起作用。檢查更新的代碼? –