Python编程 从入门到实践 第十一章习题

11-1 城市和国家

import unittest
from city_funtions import get_city_country

class NameTestCase(unittest.TestCase):

    def test_city_country(self):
        formatted_name = get_city_country('santiago','chile')
        self.assertEqual(formatted_name,'Santiago , Chile')

if __name__ == '__main__':

    unittest.main()
输出:
Ran 1 test in 0.004s

OK

11-2 人口数量

import unittest
from city_funtions import get_city_country

class NameTestCase(unittest.TestCase):

    def test_city_country(self):
        formatted_name = get_city_country('santiago','chile')
        self.assertEqual(formatted_name,'Santiago , Chile')

    def test_city_country_population(self):
        formatted_name = get_city_country('Santiago', 'chile',  5000000)
        self.assertEqual(formatted_name, "Santiago , Chile - population 5000000")

if __name__ == '__main__':

    unittest.main()

输出:

Ran 1 test in 0.001s

OK

11-3 雇员:

#Employee.py
class Employee():

    def __init__(self, fir, las, sal = 0):
        self.first = fir
        self.last = las
        self.salary = sal

    def give_raise(self, num = 0):
        if num:
            self.salary += num
        else:
            self.salary += 5000
#test_Employee.py
import  unittest
from Employee import Employee

class TestEmpployee(unittest.TestCase):

    def setUp(self):
        self.new_employee = Employee("Alex", "Leo")
        self.salary = 5000

    def test_give_default_raise(self):
        self.new_employee.give_raise()
        self.assertEqual(self.salary, self.new_employee.salary)

    def test_give_custom_raise(self):
        add_salary = 4000
        self.new_employee.give_raise(add_salary)
        self.assertEqual(add_salary + self.salary,self.new_employee.salary)

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

输出:


Ran 1 test in 0.001s

OK


猜你喜欢

转载自blog.csdn.net/sysu_alex/article/details/79949809