使用python的unittest测试类

本文介绍了如何使用Python的unittest模块为Employee类编写测试用例。Employee类包含__init__方法用于存储名、姓和年薪,以及give_raise方法默认增加5000美元年薪。测试用例包括test_give_default_raise和test_give_custom_raise,通过setUp方法确保每个测试用例都有独立的雇员实例。经过运行,确认所有测试已通过。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

题目:

编写一个名为Employee 的类,其方法__init__() 接受名、姓和年薪,并将它们都存储在属性中。编写一个名为give_raise() 的方法,它默认将年薪增加5000美元,但也能够接受其他的年薪增加量。
为Employee 编写一个测试用例,其中包含两个测试方法:test_give_default_raise() 和test_give_custom_raise() 。使用方法setUp() ,以免在每个测试方法中都创建新的雇员实例。运行这个测试用例,确认两个测试都通过了。



employ.py
待测试的类

class Employee():
	def __init__(self,first_name,last_name,salary):
		self.first_name=first_name
		self.last_name=last_name
		self.salary=salary

	def give_raise(self,default=5000):
		return int(self.salary)+default


test_employ.py
测试类

# coding=utf-8
import unittest
from employ import Employee

class TestEmploy(unittest.TestCase):
	def setUp(self):
		self.people=Employee("ZHU","Fangya",20000)
		self.salary=[25000,30000]


	def test_give_default_raise(self):
		self.assertEqual(self.people.give_raise(),self.salary[0])

	def test_give_custome_raise(self):
		self.default=10000
		self.assertEqual(self.people.give_raise(default=10000),self.salary[1])


if __name__=="__main__":
    unittest.main()


运行结果

Done:2 of 2 (0.137s)
C:\Python27\python.exe "C:\Program Files (x86)\JetBrains\PyCharm 4.0.6\helpers\pycharm\utrunner.py" C:\Users\waiwai\PycharmProjects\untitled2\test_employ.py true
Testing started at 16:03 ...

Process finished with exit code 0


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值