selenium
Candice_92
这个作者很懒,什么都没留下…
展开
-
(selenium系列之七)元素等待
当浏览器加载页面时,页面上的元素可能不能同时被加载完成,如果在加载某个元素时延迟可能造成ElementNotVisibleException.针对这种情况可以设置元素等待改善脚本执行的稳定性。 webdriver 提供了两种类型的等待:显示等待 和 隐式等待 time模块也提供等待:time.sleep(10) 强制等待10秒 显示等待:显示等待使Webdriver等待某个条件成立时继续执行...原创 2018-08-14 10:48:06 · 200 阅读 · 0 评论 -
(selenium系列之五)键盘事件
模拟键盘事件可以使用Keys类提供的键盘方法,具体如下: #coding=utf-8 from selenium import webdriver from selenium.webdriver.common.keys import Keys driver = webdriver.Chrome() driver.get("http://www.baidu.com") driver.fin...原创 2018-08-13 18:22:27 · 328 阅读 · 0 评论 -
(selenium系列之四)webdriver 操作鼠标
ActionChains 类提供了鼠标操作常用的方法: perform() 执行所有ActionChains中存储的行为 context_click() 右击 double_click() 双击 drag_and_drop() 拖动 move_to_element() 鼠标悬停 #coding=utf-8 from selenium import webdriver from...原创 2018-08-13 18:21:26 · 170 阅读 · 0 评论 -
(selenium系列之三)webdriver 操作元素
清除文本:ele.clear() 模拟按键输入:ele.send_keys(*value) 点击元素:ele.click() 提交:ele.submit() 上传文件:ele.send_keys("D:/abc.txt") 只针对这种情况:标签是<input type='file' name='file'> 下载文件: #coding=utf-8 from selen...原创 2018-08-13 17:48:26 · 152 阅读 · 0 评论 -
(selenium系列之二)webdriver 操作浏览器
d控制浏览器窗口大小:driver.set_window_size(480,800) 控制浏览器前进、后退:driver.forward()、driver.back() 刷新浏览器:driver.refresh() 操作cookie: all_cookies = driver.get_cookies() 获取所有cookie信息 specific_cookie = drive...原创 2018-08-13 16:15:31 · 226 阅读 · 0 评论 -
RF+Selenium2Library元素定位不到的问题
在基于RobotFramework框架使用Selenium2Library库对web系统做UI自动化时经常会遇到元素定位不到的问题,就我目前所遇到的情况,除元素本身定位有误外,大致有5类问题导致元素定位不到,即休眠时间较短、未进入frame、未进行窗口跳转、元素被隐藏、元素为只读。其中,元素被隐藏的解决方法我有参考网上的资料,参考链接见正文。 1. 等待时间太短,页面元素还没加载出来,或者...原创 2017-09-18 10:47:43 · 5115 阅读 · 0 评论 -
(selenium系列之一)selenium元素定位
下周就要入职新公司了,提前把基础知识再巩固一下。 selenium 有两个不同的类都提供了元素定位的方法:webdriver , By 1. 调用WebDriver类里的方法 参考源码: %pythonENV%\Lib\site-packages\selenium\webdriver\remote\webdriver.py 使用方法为: #coding=utf-8 from selen...原创 2018-08-13 15:38:23 · 191 阅读 · 0 评论 -
一个简单的web自动化测试用例(webdriver 与 unittest 结合)
#coding=utf-8 from selenium import webdriver import unittest import time import sys reload(sys) sys.setdefaultencoding('utf8') class MyTest(unittest.TestCase): def setUp(self): self.dri...原创 2018-08-14 17:40:43 · 1979 阅读 · 0 评论 -
python 单元测试框架 unittest
单元测试框架的用途:提供用例组织与执行、提供丰富断言方法、提供丰富的日志 unittest的4个重要概念: 1. TestCase :一个TestCase的实例就是一个测试用例,一个完整的测试流程,包括测试前准备环境的搭建(setUp)、实现测试过程的代码(以"test"开头的方法)、测试后环境的还原(tearDown) 2. TestSuite: 一个功能的验证往往需要多个测试用例,可以把...原创 2018-08-14 17:28:19 · 222 阅读 · 0 评论 -
(selenium系列之八)切换
web应用中经常有iframe表单嵌套、跳转不同窗口、弹出警告框、确认框等的情况,就需要切换进去才能操作。 表单切换:driver.switch_to.frame('child_frame') 表单切回:driver.switch_to.parent_frame() 多窗口切换:driver.switch_to.window("new_window_handle") 切换到警告框:driv...原创 2018-08-14 11:00:08 · 158 阅读 · 0 评论 -
(selenium系列之六)selenium 获取验证信息
常用的验证信息有 title、URL、text,获取方式如下: title = driver.title now_url = driver.current_url user = driver.find_element_by_id("user").text 验证: assert '百度' in title assert now_url == "http://www.baidu.co...原创 2018-08-13 18:49:42 · 452 阅读 · 0 评论