Web自动化测试框架搭建

<一>、web自动化框架的搭建
---selenium常用浏览器操作

-定位元素
八大元素定位方法
find_element_by_id,find_element_by_name,find_element_by_xpath,find_element_by_class_name,find_element_by_tag_name,find_element_link_text,find_element_by_partial_link_text,find_element_by_css_selector
el.click点击操作
el.send_keys()用户输入,键盘操作
窗口切换,ifram切换,alert
元素的三大等待
ActionChains, .perform()
下拉框操作,Select()
系统交互上传文件,pywinauto,pyautogui
发送JS,页面滚动,修改DOM元素
---用例设计
先通过Excel设计好用例,
title,data,steps,expected
---框架结构
基本上可以和接口相似,
common部分可以直接拿过来用,Config部分可以根据web自动化的配置修改,Handlerer也是根据需要的修改,
---自动化用例实现
就是平时selenium的基础操作组合起来的
根据用例设计,操作浏览器和页面
---异常用例
很多情况是正向测试,主流程,可能写了这个异常用例,但是不会跑

---正常用例

根据测试步骤进行
---用例筛选
unittest,添加用例,discover()
suit.addTests()
---pytest的好处
灵活的筛选用例,
不需要手工添加,手动运行,pytest.main()
testsuit,tets_loader,test_runner,
自动发现测试用例
pytest和unittest兼容
---pytest发现用例的规则
模块名称必须以test_(或者_test.py)
测试类不能有_init_(self)
方法名称必须以test_开头
pytest测试用例函数可以脱离类的形式,可以直接用函数的形式,类可以不继承
unittest.TestCase
自动发现用例(pytest)
---标记功能的步骤
先注册ini文件,pytets.ini,
打开标签,测试用例函数上面加上@pytest.mark.标签名
运行指定标签用例,在终端下输入,pytest -m "标签名",按下回车就可以了。

<二>、测试用例设计执行的说明
‘‘‘
1, 打开浏览器
2,访问登录页面
3,元素定位+元素操作(输入用户名和密码,点击登录)
4,通过获取页面内容得到实际结果进行断言
‘‘‘
打开浏览器到定位元素过程种可以设置一个隐性等待,这个等待时间可以直接在config中设置,如果在yaml文件中设置,
selenium:
wait_time: 20 这样可以直接在测试用例中导入,form middleware.handler import Handler,如果在config文件中导入WAIT_TIME=20,可以直接在测试用例中导入 from config.config import WAIT_TIME
然后获取实际的结果,actual和预期的结果用断言比较,self.assertEqual(actual,"预期结果");如果预期结果是实际结果的一部分,就用包含关系,self.assertTrue("预期结果" in actual)


 

Web自动化测试框架搭建

上一篇:盒子模型 CSS样式和列表


下一篇:Kubernetes搭建