·day09
1.定义测试用例代码文件 test_code1.py,
在类中定义两个测试方法, 使用 三种方法运行该用例
# 在test_code1.py文件实现加法操作
def add(x, y):
return x + y
import pytest
# 定义测试类
class TestAdd:
# 定义测试方法01
def testadd_01(self):
a = add(1, 1)
print(a)
# 定义测试方法02
def testadd_02(self):
a = add(1, 0)
print(a)
# 定义测试方法03
def testadd_03(self):
a = add(1, 1)
if a == 2:
print('测试通过')
else:
print('测试不通过')
#执行用例
if __name__ == '__main__':
# -s 表示支持控制台打印,如果不加,print 不会出现任何内容
pytest.main(["-s", "test_code1.py"])
#注代码需要都在test_code1.py文件夹内
#方法1:在终端使用命令行运行
# pytest -s 用例代码文件
# -s 的作用,输出显示 代码中的 print,即如果没有 -s 选项, print() 的代码不会显示
#方法2:在主函数中执行
# if __name__ == '__main__':
# pytest.main(['-s', 'test_code1.py'])
#书写了主函数,就可以右键运行了
#方法3:在主函数中执行
# 光标位置在类上,右键运行 选择Run(会运行该类所有的测试方法)
# 光标位置在方法上,右键运行,选择Run(只运行光标所在的一个测试方法)
2.完成对 login 函数的测试
# 假设对某网站的登录进行测试
def login(username, password):
if username == 'admin' and password == '123456':
return '登录成功'
else:
return '登录失败'
# 1)这个是开发书写的代码功能,不要修改我的 login 函数
# 2)可以认为这函数就是 tpshop 登录
设计测试数据:
正确的用户名和密码: admin,123456, 登录成功
错误的用户名: root, 123456, 登录失败
错误的密码: admin, 123123, 登录失败
错误的用户名和错误的密码: aaa, 123123, 登录失败
import pytest
def login(username, password):
if username == 'admin' and password == '123456':
return '登录成功'
else:
return '登录失败'
class TestLogin:
def test_login(self):
a=login('admin','123456')
if a == ('登录成功'):
print('测试通过')
else:
print('测试不通过')
def test_login1(self):
a=login('root','123456')
if a == ('登录失败'):
print('测试通过')
else:
print('测试不通过')
def test_login2(self):
if login('admin','123123')== ('登录失败'):
print('测试通过')
else:
print('测试不通过')
def test_login3(self):
if login('aaa','123123')== ('登录失败'):
print('测试通过')
else:
print('测试不通过')
pytest.main(["-s", "test_code1.py"])
#代码需要都在test_code1.py文件夹内
#1.在test_code1.py文件夹内定义login 函数
#2.定义一个测试登录类class TestLogin:
#3.定义测试动作test_login方法
#4.给login 函数赋值为下一步判断做准备
#【变量=login('admin','123456')】1.login 函数特性
#5.如果给login 函数赋值等于登录成功
#那么打印测试通过否则打印测试不通过
#如此重复test_login1,test_login2,test_login3
#唯一变量就是1.login 函数特性给login(测试数据赋值)
#if条件就是预期结果
1)关于优化2行变1行
a=login('admin','123123')
if a == ('登录失败'):
2)优化后if login('admin','123123')== ('登录失败'):
3)也可以将login 函数放在别的文件夹
4)需要添加from 文件名不用带扩展名 import 函数名login
5)需要修改pytest.main(["-s", "文件名+扩展名.py"])
6)图解如下