TA的每日心情 | 开心 2023-12-6 14:48 |
---|
签到天数: 285 天 连续签到: 1 天 [LV.8]测试军长
|
python3.5+selenium2.0自动化测试总结
1、 环境搭建:
Python3.5 IDLE开发工具(32-bit);pip命令;
常用到导入插件模块:unittest、HTMLTestRunner、time、webdriver、xlrd、pickle、
2、webdriver原理描述:
Webdriver--->绑定浏览器(端口指定),可理解为翻译器(客户端代码翻译成浏览器可识别代码),浏览器启动后作为webdriver的 remote server,客户端发送HTTP请求给remote server的监听端口,而 remote server则需要依赖浏览器组件IEDriverServer.exe、chromedriver.exe等转化浏览器的native调用。
3、对象(元素)的定位方法:
1)id定位 2)name定位 3)classname定位 4)xpath定位 5)link text定位 6)CSS定位
…………
4、自动测试模型:
1)模块化,公共模块脚本与私有模块脚本分离; 2)数据驱动,脚本中程序与数据相分离,数据改动后不影响脚本; 3)线性测试,一个脚本一个用例,易用,但维护成本高,不建议使用;
5、自动化用例设计:
目前自动化测试大部分定位在冒烟测试和回归测试两个阶段,自动化主要用来保证产品主体功能正确、完整,把测试人员从繁索重复的工作中解脱出来,保证产品质量的同时提高测试人员工作效率,提高产出。
原则:1)一个用例就是一个场景,从登录到退出,到关闭浏览器; 2)一个脚本只验证一个功能点; 3)尽量只做正向逻辑验证,逆向逻辑尽量少,自动化脚本本身昰比较脆弱的; 4)脚本之间不要有关联; 5)如果数据有修改,一定要还原; 6)在整个脚本中只对验证点进行验证,不要在脚本的每一步都验证。
6、unittest测试框架与报告生成:
导入unittest框架包, setUp 和tearDown两个方法分别对应初始化和用例执行完的清理工作, unittest.main()方法用来测试类中以test开头的用例,所有执行测试的类都继承于TestCase类,而TestSuite则昰所有测试用例的一个容器,用addTest方法可以添加用例到容器中。
报告的生成,需要导入HTMLTestRunner模块,一般格式为:
runner =HTMLTestRunner.HTMLTestRunner(
stream=fp, #报告所写入的文件
title=u'XXX测试报告',
description=u'用例执行情况:')
runner.run(testunit) #运行容器中的用例
#未完,待续...... |
|