pytest是一个非常成熟的全功能的Python测试框架,简单灵活,易上手,插件丰富。
一,自动化测试方向
自动化测试主要有接口自动化和UI自动化,由于UI变化的可能性比较大,除非特别成熟的项目,否则不适合做UI自动化测试,接口是每一个系统都会使用的,接口自动化能提高效率,减少不必要的时间消耗
二,什么是接口
所谓接口,通俗的讲就是两个物体相连接的部位,从程序角度来说,就是系统与系统之间根据约定的‘协议’对接,将数据抽象出去的方式。
三,为什么要做接口测试
接口与系统相关,保证了接口的质量,有利于增加系统的稳定性,大部分系统,UI的弹性很大,但是接口变化的可能性不大,只要保证了接口的质量,无论上层UI怎么变化,都不影响系统。
四,自动化测试中的‘3A原则’
Arrange: 初始化测试对象或者准备测试数据
Act : 调用被测方法
Assert: 断言
五,实践
在pycharm中使用库,需要先在[settings-->project Interpreter]中点击pip,然后输入要添加的库名,将库添加到package.如图。
然后就可以在代码中使用import导入了,看图解释
六,关于初始化和参数化
2. @pytest.fixture(param=list|string) # 该装饰器表示当前方法传入的参数可被request.param访问,且在测试方法(test_开头的方法)中传入同名的方法(被fixture修饰的方法)可直接访问fixture修饰的方法的数据,描述的比较绕,标注理解(见图)
七,为什么选择pytest,而不是pyunit
就我个人而言,我觉得pytest更为灵活,可以对自己定义的方法进行断言,而pyunit则需要使用框架提供的方法去断言,框架提供那么多方法固然好,但我还会说更喜欢pytest的自定义
八.思维导图
end~
领取专属 10元无门槛券
私享最新 技术干货