English 中文(简体)
UnitTest Framework - Py.test Module
  • 时间:2024-03-19 01:32:30

UnitTest Framework - Py.test Module


Previous Page Next Page  

当时,Holger Krekel于2004年改名为“std的包裹,其名称往往与“标准图书馆”的名称混为一谈,而“标准图书馆”号是“灰色”号(略为混淆)。 尽管一揽子计划包含几个分包,但现在几乎完全知道其试样框架。

测试框架建立了新的甲型六氯环己烷检测标准,今天许多开发商非常欢迎这一框架。 它为测试写作而引进的Elegant和Avry idioms,使测试套能够用更加精细的手法书写。

py.test is a no-boilerplate Alternative to ecosoc's standard unittest model. 尽管它是一种完全成熟和可行的测试工具,但它却带有一种简单的yn子。 创建测试套像编写具有多种功能的单元一样容易。

页: 1

Installation

利用以下代码装上当前灰色分配中的测试模块以及测试。 通用。 测试可以同时进行。

pip install pytest

Usage

你们只能用肯定性声明来表达测试期望。 抗议的“内部投机”将明智地报告言论的中间价值,使你不必学习JUnit Legacy methods的许多名字。

# content of test_sample.py
def func(x):
   return x + 1
   
def test_answer():
   assert func(3) == 5

利用以下指挥线进行上述试验。 试验一旦进行,在奥塞罗省就显示出以下结果:

C:Python27>scriptspy.test -v test_sample.py
============================= test session starts =====================
platform win32 -- Python 2.7.9, pytest-2.9.1, py-1.4.31, pluggy-0.3.1 -- C:Pyth
on27python.exe
cachedir: .cache
rootdir: C:Python27, inifile:
collected 1 items
test_sample.py::test_answer FAILED
================================== FAILURES =====================
_________________________________ test_answer _________________________________
   def test_answer():
>  assert func(3) == 5
E     assert 4 == 5
E     + where 4 = func(3)
test_sample.py:7: AssertionError
========================== 1 failed in 0.05 seconds ====================

测试也可以从指挥线进行,包括使用电离转换的测试模块。

python -m pytest test_sample.py

Grouping Multiple Tests in a Class

一旦你们开始接受过几个以上的测试,就往往有理由在班级和单元中进行分类测试。 让我们写一个包含两个测试的班子:

class TestClass:
   def test_one(self):
      x = "this"
      assert  h  in x
   def test_two(self):
      x = "hello"
      assert hasattr(x,  check )

将展示以下试验结果:

C:Python27>scriptspy.test -v test_class.py
============================= test session starts =====================
platform win32 -- Python 2.7.9, pytest-2.9.1, py-1.4.31, pluggy-0.3.1 -- C:Pyt
on27python.exe
cachedir: .cache
rootdir: C:Python27, inifile:
collected 2 items
test_class.py::TestClass::test_one PASSED
test_class.py::TestClass::test_two FAILED
================================== FAILURES =====================
_____________________________ TestClass.test_two ______________________________
self = <test_class.TestClass instance at 0x01309DA0>

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

test_class.py:7: AssertionError
===================== 1 failed, 1 passed in 0.06 seconds ======================
Advertisements