‘’'测试函数
断言 assert+布尔表达式 一般写在函数或者类中
若文件和测试文件位于同一个文件夹下测试引入方法: from 文件名 import 函数名
‘’’
mytest.py:
def addtr(a,b):
return a+b
test_测试.py
from mytest import addtr
def test_add1():# 注意测试函数要以test开头
assert addtr(3,8)==11
def test_add2():
assert addtr(-4, 8) == 2
‘’‘练习11-3:雇员
编写一个名为 Employee 的类,其方法 init()接受名、姓和年薪,并将它们存储在属性中。
编写一个名为 give_raise()的方法,它默认将年薪增加5000美元,但也能够接受其他的年薪增加量。
为Employee 编写一个测试用例,其中包含两个测试方法:
test_give_default_raise()和test_give_custom_raise()。在不使用夹具的情况下编写这两个测试,并确保它们都通过了。
然后,编写一个夹具,以免在每个测试函数中都创建一个Employee对象。重新运行测试,确认两个测试都通过了。
‘’’
class_init.py
class Employee:
def __init__(self,lname,fname,money):
self.lname=lname
self.fname=fname
self.money=money
def give_raise(self,add=5000):
self.money+=add
****test_class_init.py****
```import pytest
from class_init import Employee
@pytest.fixture
def employee1():#fixture所装饰的会在每个测试用例执行之前执行一遍
employee1=Employee('王','婵',10000)
return employee1
def test_give_default_raise(employee1):
employee1.give_raise()
assert employee1.money==15000
def test_give_custom_raise(employee1):
employee1.give_raise(10000)
assert employee1.money==20000