前提:熟悉测试业务及流程
任何Python自动化测试的前提,都是必须先熟悉实际测试业务。
任何脱离实际测试业务的自动化都是噱头且无实际意义!
测试的基本流程基本是:
测试需求分析,测试用例设计与评审,测试用例执行,报bug,整理测试报告。
测试用例设计与评审是熟悉软件产品需求的重要过程,
可以更深入地了解软件产品的具体需求。
先掌握手动执行用例
用例设计及评审结束后,先学会手动执行测试用例,
通过手动执行用例,也可以更好的了解软件产品的具体需求,
并学会总结归纳不同的测试类型的用例。
比如性能测试用例,稳定性测试用例,接口测试用例等。
总结测试技术
哪些是需要用到其他辅助性工具,
比如命令行工具软件(命令),外部设备,外部关键数据等。
做到把Python运用到实际测试的每一个环节
Python的优势是数据处理,需要将Python脚本贯穿于测试的所有过程,
包括测试环境搭建阶段,测试用例设计阶段,测试用例执行阶段,
测试用例结果分析阶段,Bug处理,测试报告等环节。
都可以利用Python来处理,来提供测试效率。
做到半自动化执行
在执行某些手动测试用例的过程中,你要学会总结归纳,包括:
阶段 | 总结提升方向 |
---|---|
第一阶段 | 哪些测试环境准备(环境准备,数据准备)是可以用Python代码实现的。 |
第二阶段 | 哪些测试用例的执行是重复多次执行,或者长时间执行, 是可以用Python代码实现此类操作的。 |
第三阶段 | 哪些测试结果,是可以用Python代码来进行数据分析的, 再最后人为判断测试结果是Pass, Fail。 |
第四阶段 | 以上这些Python代码块,是不是经常用, 能否做一个测试工具(.exe)分享给周围的测试同学或研发同学。 |
以上学习提示过程中,也可以由易到难地一步一步来尝试实现之.
实现方式及其难易程度 | |
---|---|
容易 | 可以先学会写脚本(Python批处理脚本)形式来实现, |
中等 | 慢慢再考虑写成面向过程(Python函数)形式来实现, |
较难 | 最后再考虑能否写成面向对象(Python类)的形式实现。 |
尝试全自动测试
当你有了一定的Python基础,你学会了编写函数,学会了编写类 ,
也做过一些小型Python项目(比如学会了写一些.exe的工具),
你也可以将很多手动执行的测试用例转换成Python代码文件来一条条执行了。
你就会碰到以下瓶颈:
序号 | 可能碰到的瓶颈 |
---|---|
1 | 你目前的所谓的自动化用例(Python脚本),只能一次执行一条用例 |
2 | 每次测试完后,你可能都需要重新在审核下测试结果, 因为可能有些测试结果,你的Python脚本还没做到自动判断的程度。 |
3 | 由于你是一次一条地执行,所以整体测试报告还是要你自己去整理, 比如pass/fail/block了多少条,占比多少等,无法自动生成测试报告! |
4 | 测试用例脚本维护太麻烦了,修改一处,可能其他的脚本也都需要修改。 |
5 | 测试用例脚本无法统一管理,东一处西一处。 |
那你就可以尝试学习某个框架了,框架主要是更规范地执行测试用例。
框架具有:
框架的优势 | |
---|---|
1 | 测试用例自动执行的功能,上一条执行完毕后,自动执行下一条。 |
2 | 测试结果自动化生成并生成测试报告的功能 |
3 | 只提供了部分User Interface,交互界面会更加方便, 比如你只需编辑关键字, 或者只需要编辑某些数据文件(或者配置文件,xml,txt,excel文件等), 即可实现全部关联修改。 |
4 | 。。。。。。益处多多! |
有框架,则你离全自动化测试又进了一步。
更多更好的原创文章,请到:[www.zipython.com](https://www.zipython.com)
原文链接:https://www.zipython.com/#/detail?id=e43c2cbe9356437c81d7a88f0b3fb986
也可关注“武散人”微信订阅号,随时接受文章推送。