在设计自动化测试脚本时,经常会有多表单(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()