目录
1.知识点
2.练习
11.1 城市和国家
11.2人口数量
def str_country_city(city,country):
strs = f"{city} {country}"
return strs
#test.py
from country_city import str_country_city
def test_city_country():
srtss = str_country_city('santiago','chile')
assert srtss == 'santiago chile'
def str_country_city(city,country,population):
strs = f"{city} {country} population={population}"
return strs
from country_city import str_country_city
def test_city_country():
srtss = str_country_city('santiago','chile','500000')
assert srtss == 'santiago chile population=500000'
# 练习:测试类
# survey.py
class AnonymousSurvey:
"""收集匿名调查问卷的答案"""
def __init__(self,question):
"""储存一个问题并为储存答案做准备"""
self.question = question
self.responses = []
def show_question(self):
"""显示调查问卷"""
print(self.question)
def store_response(self,new_response):
"""存储单份调查问卷"""
self.responses.append(new_response)
def show_results(self):
"""显示收集到的所有答案"""
print("survey results:")
for response in self.responses:
print(f"-{response}")
# test_survey.py
from survey import AnonymousSurvey
def test_store_single_response():
"""测试单个回答"""
question = "What language did you first learn to speak"
language_survey = AnonymousSurvey(question)
language_survey.store_response('English')
assert 'English' in language_survey.responses
def test_store_three_response():
"""测试三个回答"""
question = "What language did you first learn to speak"
language_survey = AnonymousSurvey(question)
responses = ['English','Chinese','Spanish']
for response in responses:
language_survey.store_response(response)
for response in responses:
assert response in language_survey.responses
11.3雇员
class Employee:
def __init__(self,first,last,pay=10000):
self.first = first
self.last = last
self.pay = pay
def raise_pay(self,increase=5000):
self.pay+=increase
pay1 = self.pay
return pay1
import pytest
from employee_raisefee import Employee
@pytest.fixture
def employee_raise():
employee_raise = Employee('ka', 'ka', 10000)
return employee_raise
def test_employee_pay_raise(employee_raise):
# pay1 = Employee('ka','ka',10000)
assert employee_raise.raise_pay(6000) == 16000
def test_employee_default_pay_raise(employee_raise):
# pay1 = Employee('ka','ka')
assert employee_raise.raise_pay() == 15000