Python第六周第一次作业

时间:2021-10-29 13:53:56

学习测试类的使用

11-1 城市与国家

def city_country(city, country):  
    return city.title() + ", " + country.title() 

import unittest
from city import city_country

class CityTestCase(unittest.TestCase):
    def test_city_country(self):
        name = city_country('guangzhou', 'china')
        self.assertEqual(name, 'Guangzhou, China')
        
unittest.main()

Python第六周第一次作业

11-2 人口数量

当代码刚修改过时:

Python第六周第一次作业

代码正确修改后(学会了换行……):

def city_country(city, country, population = 0):  
    if population:
        return city.title() + ", " + country.title() + \
        ' - population ' + str(population)
        
    else:
        return city.title() + ", " + country.title()

import unittest
from city import city_country

class CityTestCase(unittest.TestCase):
    def test_city_country(self):
        name = city_country('guangzhou', 'china')
        self.assertEqual(name, 'Guangzhou, China')
      
    def test_city_country_population(self):
        name = city_country('guangzhou', 'china', 5000000)
        self.assertEqual(name, 'Guangzhou, China - population 5000000')
    
unittest.main()

Python第六周第一次作业

11-3 雇员

学习setUp()

class Employee():
    def __init__(self, first_name, last_name, money):
        self.first_name = first_name
        self.last_name = last_name
        self.money = money
        
    def give_raise(self, raise_money = 5000):
        self.money += raise_money


import unittest
from employee import Employee

class EmployeeTestCase(unittest.TestCase):
    def setUp(self):
        self.employee = Employee('Alice', 'Arlert', 50000)
    
    def test_give_raise_default(self):
        self.employee.give_raise()
        self.assertEqual(self.employee.money, 55000)
      
    def test_give_raise_custom(self):
        self.employee.give_raise(1)
        self.assertEqual(self.employee.money, 50001)
    
unittest.main()
Python第六周第一次作业