学习
实践
活动
专区
工具
TVP
写文章

pytest了解与简单使用

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~

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190117G1B10Q00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

关注

腾讯云开发者公众号
10元无门槛代金券
洞察腾讯核心技术
剖析业界实践案例
腾讯云开发者公众号二维码

扫码关注腾讯云开发者

领取腾讯云代金券