001、pytest安装和第一个demo

时间:2021-07-13 17:18:16   收藏:0   阅读:13

参考资料:http://www.python3.vip/tut/auto/pytest/01/

                  https://www.cnblogs.com/yoyoketang/p/9356693.html

       

 pytest 可以用来做 系统测试 的自动化, 它的特点有

 

pytest 用例规则

pytest运行规则:

  项目目录下运行 pytest —> 寻找 当前目录及子目录下以 test_*.py 或  *_test.py 的文件 —> 寻找  Test开头的类 —> 寻找以 test开头函数 。

 

 

1、安装

  虚拟环境安装, 按住 ctrl + alt + s 弹出如下界面,并按箭头指示选择,安装成功后会显示 installed successfully。

  技术分享图片

 

我们还需要产生测试报表,所以要安装一个第三方插件 pytest-html ,方法同上。

 

 2、快速开始

1.新建一个test_sample.py文件,写以下代码:

# -*- coding:utf-8 -*-
# @Author:  Sky
# @Email:   2780619724@qq.com
# @Time:    2021/7/13 14:55

def func(x):
    return x +1


def test_answer():
    assert func(3) == 5

2.打开test_sample.py所在的目录(test_01),cmd窗口输入:pytest(或者输入py.test也可以)

技术分享图片

 

3、pytest运行规则

  项目目录下运行 pytest —> 寻找 当前目录及子目录下以 test_*.py 或  *_test.py 的文件 —> 寻找  Test开头的类 —> 寻找以 test开头函数 。

 

写个测试类

1、前面是写的一个test开头的测试函数,当用例有多个的时候,写函数就不太合适了。这时可以把多个测试用例,写到一个测试类里。

# test_class.py

class TestClass:
    def test_one(self):
        x = "this"
        assert h in x

    def test_two(self):
        x = "hello"
        assert hasattr(x, check) 

说明:  hasattr(object, name)
             判断一个对象里面是否有name属性或者name方法,返回BOOL值,有name特性返回True, 否则返回False 。
             需要注意的是name要用括号括起来 。

 

2、 如果只想运行其中一个 (test_*.py  和  *_test.py),可以指定传递文件名test_class.py  ( 相对路径 或 绝对路径 )来运行模块 :

       pytest -q .\test_sample.py

       备注: -q, --quiet decrease verbosity( 显示简单结果)

       技术分享图片

 

原文:https://www.cnblogs.com/qq-2780619724/p/15005339.html

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!