欢迎关注微信公众号交流: 零基础学自动化测试 《接口测试自动化实战》--接口自动化书籍 https://yuedu.baidu.com/ebook/aaf72f1b42323968011ca300a6c30c225901f07d 欢迎阅读

pytest--环境搭建

上一篇 / 下一篇  2019-12-04 09:19:25

​pytest是一个非常成熟的全功能的Python测试框架,主要特点有以下几点。

  • 简单灵活,容易上手,文档丰富;

  • 支持参数化,可以细粒度地控制要测试的测试用例

  • 能够支持简单的单元测试和复杂的功能测试,还可以用来做selenium/appnium等自动化测试、接口自动化测试(pytest+requests);

  • pytest具有很多第三方插件,并且可以自定义扩展,比较好用的如pytest-selenium(集成selenium)、pytest-html(完美html测试报告生成)、pytest-rerunfailures(失败case重复执行)、pytest-xdist(多CPU分发)等;

  • 测试用例的skip和xfail处理;

  • 可以很好的和Jenkins结合进行持续集成

  • 与allure完美结果,输出漂亮的测试报告

安装pytest
通过pip安装:

pip install -U pytest

校验是否正确安装:

pytest --version

简单使用
新建py文件,编写以下代码:
# -*- coding:utf-8 -*-__author__ = 'Eike'def func(x):return x + 1def test_answer():assert func(3) == 5
命令行切换到文件所在目录,执行测试(或者直接在IDE中(pycharm)运行):
执行结果:
[100%]================================== FAILURES ===================================_________________________________ test_answer _________________________________def test_answer():>       assert func(3) == 5E       assert 4 == 5E        +  where 4 = func(3)test_demo10.py:13: AssertionError========================== 1 failed in 0.08 seconds ===========================Process finished with exit code 0
可以看到,返回的结果4!=5所以断言不通过
从上面的例子可以看出,pytest 中断言的用法直接使用 assert ,和 unittest 中断言 self.assert 用法有所区别。
如何编写pytest测试样例
通过上面的实例,我们发现编写pytest测试样例非常简单,只需要按照下面的规则:
  • 测试文件以test_开头(以_test结尾也可以)

  • 测试类以Test开头,并且不能带有 init 方法

  • 测试函数以test_开头

  • 断言使用assert即可

关于断言,后续将详细介绍

TAG:

 

评分:0

我来说两句

Miss_love

Miss_love

《接口测试自动化实战》-接口测试书籍 https://yuedu.baidu.com/ebook/aaf72f1b42323968011ca300a6c30c225901f07d

日历

« 2024-04-21  
 123456
78910111213
14151617181920
21222324252627
282930    

数据统计

  • 访问量: 25109
  • 日志数: 24
  • 图片数: 1
  • 建立时间: 2017-09-11
  • 更新时间: 2019-12-04

RSS订阅

Open Toolbar