新建第三版第一子版本脚本文件
- test_后台_双创_基础设置_赛区管理_添加赛区_case_v3_1.py
合并添加赛区有效测试方法
- test_add_division_success:实现前六条有效测试用例。
- 前六条测试数据有:
- "A","啊","1","#","我的测试赛区北京赛区上海赛区和广州赛区","123456789测试赛区ABCabc%"
- 分析:检查的预期提示信息文本都相同,都是“赛区信息保存成功”。
- 结论:单个数据的方式传入赛区名称即可
准备test_add_division_success方法参数
- 给test_add_division_success方法准备六条测试数据
- @pytest.mark.parametrize("division_name",["A","啊","1","#","我的测试赛区北京赛区上海赛区和广州赛区","123456789测试赛区ABCabc%"])
- 给测试方法增加一个形参变量division_name,代表传入的参数数据
def test_add_division_success(self,division_name):
使用参数数据
- 在test_add_division_success方法中使用参数传入的测试数据
driver.find_element(By.ID,"_easyui_textbox_input1").send_keys(division_name)
……
if self.is_element_present(By.XPATH,f"//td[@field='name']/div[text()='{division_name}']"): ……
assert self.is_element_present(By.XPATH,f"//td[@field='name']/div[text()='{division_name}']")
运行调试第三版第一子版本脚本
- 运行查看结果
练习
- 参考有效数据测试的合并方法,把无效数据的测试方法也合并为一个test_add_division_fail方法
- 注意:无效数据测试时候的提示信息不同
合并添加赛区无效测试方法
- test_add_division_fail:实现后四条无效测试用例。
- 后四条测试数据有:
- "","123456789测试赛区ABCabc%1","123456789测试赛区ABCabc%1234567890","东南赛区"
- 分析:因为检查的预期提示信息文本都不同,所以需要把预期结果信息也设计为参数传入测试方法。
- 结论:需要使用组合数据的方式传入赛区名称和错误提示信息文本。
准备test_add_division_fail方法参数
- 给test_add_division_fail方法准备四组测试数据:列表嵌套列表。
@pytest.mark.parametrize("division_name,message",
[["","不能为空"],
["123456789测试赛区ABCabc%1","长度超过20"],
["123456789测试赛区ABCabc%1234567890","长度超过20"],
["东南赛区","赛区名称不能重复"]])
- 增加形参变量division_name和message,代表每组的两个数据值
def test_add_division_fail(self, division_name,message):
使用参数数据
-
在test_add_division_fail方法中使用参数传入的测试数据
……
name_input.send_keys(division_name)
……
assert self.is_element_present(By.XPATH,f"//td[text()='{message}']")
WebDriverWait(driver,20).until_not(expected_conditions.presence_of_element_located((By.XPATH,f"//td[text()='{message}']")))
运行调试所有脚本
- 运行查看结果