练习 11-3:雇员 编写一个名为Employee 的类,其方法___init__()接受名、姓和年薪,并將它们存储在属性中。编写一个名为give raise()的方法,它默认将年薪增加5000 美元,但地能够接受其他的年薪增加量。
为 Employee编写一个测试用例,其中包舍两个测试方法:test give default
raise()和 test_give_ custom raise()。使用方法 setUp(),以免在每个测试方法中都新建雇员实例。运行这个测试用例,确认两个测试都通过了。
employee.py
class Employee:
"""收集公司员工信息的调查问卷。"""
def __init__(self, fist_name, last_name, annul_salary):
self.fist_name = fist_name
self.last_name = last_name
self.annul_salary = annul_salary
def give_raise(self, add_annul_salary = 5000):
self.annul_salary = self.annul_salary + add_annul_salar
test_employee.py
import unittest
from employee import Employee
class TestEmployee(unittest.TestCase):
"""针对 Employ 类的测试"""
def setUp(self):
self.first_name = 'Harry'
self.last_name = 'Potter'
self.annul_salary = 7400
self.my_employee = Employee(fist_name, last_name, annul_salary)
def test_give_default_raise(self):
self.my_employee.give_raise()
self.assertEqual(self.my_employee.annul_salary, 12400)
def test_give_custom_raise(self):
self.my_employee.give_raise(2600)
self.assertEqual(self.my_employee.annul_salary, 10000)
if __name__ == '__main__':
unittest.main()