python单元测试框架——pytest

官网:https://docs.pytest.org/en/latest/

pytest帮你写出更好的程序

1、安装:

  Ubuntu16.04安装pytest:

  pip3 install pytest

  pytest --version

    This is pytest version 3.2.3, imported from /usr/local/lib/python3.5/dist-packages/pytest.py

2、An example of a simple test:(一个简单的例子),命名为test_pytest1.py

1 def funx(x):
2     return x + 1
3
4
5 def test_answer():
6     assert funx(2) == 5

运行:

进入python脚本路径:pytest test_pytest1.py

  [email protected]:/home/ranxf/Python3单元测试/demo# pytest test_pytest1.py
============================= test session starts ==============================
platform linux -- Python 3.5.2, pytest-3.2.3, py-1.4.34, pluggy-0.4.0
rootdir: /home/ranxf/Python3单元测试/demo, inifile:
collected 1 item

test_pytest1.py F

=================================== FAILURES ===================================
_________________________________ test_answer __________________________________

def test_answer():
>       assert funx(2) == 5
E       assert 3 == 5
E        +  where 3 = funx(2)

test_pytest1.py:8: AssertionError
=========================== 1 failed in 0.02 seconds ===========================

进入python脚本路径:pytest -q test_pytest1.py(加一个参数-q),运行结果:

[email protected]:/home/ranxf/Python3单元测试/demo# pytest -q test_pytest1.py
F
=================================== FAILURES ===================================
_________________________________ test_answer __________________________________

def test_answer():
>       assert funx(2) == 5
E       assert 3 == 5
E        +  where 3 = funx(2)

test_pytest1.py:8: AssertionError
1 failed in 0.02 seconds

两种运行结果有一点差异,就是少了一些版本信息。

3、一个测试类中创建多个测试用例:

 1 # 一个测试类种创建多个测试用例
 2
 3
 4 class TestClass:
 5     def test_one(self):
 6         x = "this"
 7         assert "s" in x
 8
 9     def test_two(self):
10         x = "hello"
11         assert x == "hi"

时间: 2024-11-09 02:30:39

python单元测试框架——pytest的相关文章

Python单元测试框架 unittest

Python单元测试框架 作者: Steve Purcell, <stephen_purcell at yahoo dot com>翻译: Heiz, <heiz dot yuan at gmail dot com>项目网站: http://pyunit.sourceforge.net/ 目录 概况 系统要求 使用PyUnit构建自己的测试 安装 测试用例介绍 创建一个简单测试用例 复用设置代码:创建固件 包含多个测试方法的测试用例类 将测试用例聚合成测试套件 嵌套测试用例 测试代

Python 单元测试框架 —— PyUnit

转载自http://www.oschina.net/question/12_27127#GUI 目录 概况 系统要求 使用PyUnit构建自己的测试   安装 测试用例介绍 创建一个简单测试用例 复用设置代码:创建固件 包含多个测试方法的测试用例类 将测试用例聚合成测试套件 嵌套测试用例 测试代码的放置位置 交互式运行测试 从命令行运行测试 在用户界面窗口运行测试 为测试编写文档 更多关于测试条件 测试相等性 测试异常 通过PyUnit复用旧测试代码 在JPython和Jython中使用PyUn

Python单元测试框架unittest之深入学习

前言 前几篇文章该要地介绍了python单元测试框架unittest的使用,本篇文章系统介绍unittest框架. 一.unittest核心工作原理 unittest中最核心的四个概念是:test case, test suite, test runner, test fixture. 下面我们分别来解释这四个概念的意思,先来看一张unittest的静态类图(下面的类图以及解释均来源于网络,原文链接): 一个TestCase的实例就是一个测试用例.什么是测试用例呢?就是一个完整的测试流程,包括测

Python单元测试框架:unittest(一)

主要介绍了Python单元测试框架unittest使用方法讲解,本文讲解了unittest概述.命令行接口.测试案例自动搜索.创建测试代码.构建测试套件方法等内容 概述 1.测试脚手架(test fixture) 测试准备前要做的工作和测试执行完后要做的工作.包括setUp()和tearDown(). 2.测试案例(test case) 最小的测试单元. 3.测试套件(test suite) 测试案例的集合. 4.测试运行器(test runner) 测试执行的组件. 命令行接口 可以用命令行运

Python单元测试框架之pytest -- 断言

对于测试来讲,不管是功能测试,自动化测试,还是单元测试.一般都会预设一个正确的预期结果,而在测试执行的过程中会得到一个实际的结果.测试的成功与否就是拿实际的结果与预期的结果进行比较.这个比的过程实际就是断言(assert). 在unittest单元测试框架中提供了丰富的断言方法,例如assertEqual().assertIn().assertTrue().assertIs()等,而pytest单元测试框架中并没提供特殊的断言方法,而是直接使用python的assert进行断言. 下面我们就来介

Python单元测试框架之pytest -- 生成测试报告

继续pytest单元测试框架的学习,pytest可以生成多种类型的测试报告.这一节就来学习pytest如何生成测试报告. 创建test_calss.py 测试用例文件,这里以测试该文件为例. #coding=utf-8 class TestClass: def test_one(self): x = "this" assert "h" in x def test_two(self): x = "hello" assert x == "h

Python单元测试框架之pytest---如何执行测试用例

介绍 pytest是一个成熟的全功能的Python测试工具,可以帮助你写出更好的程序. 适合从简单的单元到复杂的功能测试 l 模块化parametrizeable装置(在2.3,持续改进) l 参数化测试函数(用例) l 标记测试功能与属性 l Skip和xfail:处理不成功的测试用例(在2.4改进) l 通过xdist插件分发测试到多个CPU l 不断地重新运行失败的测试 l 灵活约定的Python测试发现 Home Page: http://pytest.org 安装 >pip insta

python单元测试框架

python的单元测试框架pyUnit和java的junit非常类似,以下是对模块中的方法进行单元测试的例子: 实现代码:输入一个整数组成的列表,判断其中是否有重复的数字,如果有返回True,否则返回False class Solution:    # @param {integer[]} nums    # @return {boolean}    def containsDuplicate(self, nums):        return len(nums) > len(set(nums

Python单元测试框架 :unittest

unittest是xUnit系列框架中的一员,如果你了解xUnit的其他成员,那你用unittest来应该是很轻松的,它们的工作方式都差不多. unittest核心工作原理 unittest中最核心的四个概念是:test case, test suite, test runner, test fixture. 下面我们分别来解释这四个概念的意思,先来看一张unittest的静态类图(下面的类图以及解释均来源于网络,原文链接): 一个TestCase的实例就是一个测试用例.什么是测试用例呢?就是一