ui自动化测试框架01(pytest+selenium+allure)
1、目的
- 我们的产品要能够根据用例规定的操作回放模拟操作;
- 用例应该是既能够单独执行,也可以按指定顺序集合执行;
- 如果希望达到无人值守的目的,那么邮件通知和CI必不可少;
- 我们肯定希望用例维护起来简洁便利。
2、为什么选择selenium
QTP太贵了,selenium是开源的
3、selenium和webdriver是什么关系?
selenium可以理解为一个工具集,包括IDE、WebDriver等。
这里稍微解释一下,可以视为selenium打包了webdriver,而webdriver本身是一套操作浏览器的api协议规范。
第一个需求,我们的产品要能够根据用例规定的操作回放模拟操作;已经确认了技术类型,我们接着看下面的需求。
第二个需求,实际上就是用例管理,一般而言各个语言都有自己的测试框架用于处理这些,python当然也不例外,py上的测试框架有unittest,pytest,nose等等,由于我们的需求各个框架基本都能满足,所以直接选择了py内置的测试框架unittest使用,如果想了解各大框架之间对比的话,可以点击这里查看。
第三个需求,也就是无人值守。这里因为我们公司的ci工具是jenkins,所以就直接选定了用jenkins作为技术手段。
最后一个需求,实际上是一个很重要的优化点,如何让用例维护简单?这里其实是一个很弹性的选择,我的选择是只通过框架设计来达到,更好的选择是把用例的描述规范化甚至脱离代码层面,例如使用yaml来描述用例。
作者:Null_ice
链接:https://www.jianshu.com/p/a079a42806e1
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。