1、等待/延迟 刻意设置,控制运行的速度、节奏 固定等待sleep(2) 智能等待implicitly_wait(100) 2、Js弹窗(阻塞式) text:返回alert/confirm/prompt中的文字内容accept:点击确认按钮dismiss:点击取消按钮如果有取消按钮的话sendKeys:向prompt中输入文字处理常见自动化场景 3、Js应用 4、下拉选择框 5、定位一组对象 6、层级定位 7、切换switch_to (1)切框架 switch_to.frame(“frame的ID或NAME”) switch_to.frame(frame的元素对象) a=ba.find_element(By.CSS_SELECTOR,'iframe[id="login_frame"]')
ba.switch_to.frame(a)
ba.find_element(By.ID,'img_out_2965876097').click() (2)切窗口switch_to.alter() Switch_to.window() handle句柄:窗口的唯一标识 ba.switch_to.window(ba.window_handles[-1]) 8、Cookie 假如我们需要验证浏览器中是否存在cookie,因为基于真实的cookie是无法通过白盒和集成测试完成的,webdriver可以读取、添加和删除cookie信息webdriver操作cookie的方法如下:get_cookies()获取所有cookie信息get_cookie(name)返回特定name有cookie信息add_cookie(cookie_dict)添加cookie,必须有name和value值delete_cookie(name)删除特定部分的cookie信息delete_all_cookies()删除所有cookie信息 9、免密登录 10、鼠标键盘 在实际的web产品测试中,对于鼠标的操作,不单单只有click(),有时候还要用到右击、双击、拖动等操作,这些操作包含在ActionChains类中。ActionChains类中鼠标操作常用方法:context_click():右击double_click():双击drag_and_drop():拖动move_to_element():鼠标移动到一个元素上click_and_hold():按下鼠标左键在一个元素上
|