1. 程式人生 > >python自動化測試開發:當frame/iframe沒有可用的id或者name屬性時,多表單(frame/iframe)如何進行切換

python自動化測試開發:當frame/iframe沒有可用的id或者name屬性時,多表單(frame/iframe)如何進行切換

在設計自動化測試指令碼時,經常會有多表單(frame/iframe)需要切換,否則無法定位到表單上的元素,在python中使用switch_to.frame()方法,具體用法如下

1、switch_to.frame()預設直接調取表單的id活name屬性。

示例:

driver.switch_to_frame("tabLine0_iframe")

2、如果iframe沒有可用的Id或者name屬性,可以先使用css選擇器、xpath、class name等為物件,而後再使用switch_to.frame()方法來呼叫定位好的物件。

例項如下:

dx=driver.find_element_by_xpath('//*[@id="SinaEditor"]/iframe') #先使用css選擇器、xpath、class name等為物件
driver.switch_to.frame(dx)  #呼叫定位好的物件
content_box=driver.find_element_by_xpath("/html/body")
content_box.send_keys(writemail_content)

表單上的操作完成後,要在表單以外的頁面上操作,需要再次切換回來。

示例如下:

driver.switch_to.default_content()