什么叫商城网站,网站死了怎么办,php网站搬家教程,小程序代理平台一、为什么选择pytest#xff1f; pytest完全兼容python自带的unittest
pytest让单元测试更简单#xff0c;能很好的管理测试用例。
对于实现接口测试的复杂场景#xff0c;pytest的fixture、PDB等高阶用法都能实现需求。
入门简单#xff0c;对于代码基础薄弱的团队人员…一、为什么选择pytest pytest完全兼容python自带的unittest
pytest让单元测试更简单能很好的管理测试用例。
对于实现接口测试的复杂场景pytest的fixture、PDB等高阶用法都能实现需求。
入门简单对于代码基础薄弱的团队人员也可以用pytest实现较简单的单个接口测试。
社区活跃遇到问题可以在网上找到解决方法。
pytest实战例子修改用户信息 场景测试修改用户昵称是否成功
涉及接口用户登录接口、用户信息修改接口、用户信息接口。用户信息修改接口和用户信息接口需要上传登录接口下发的token字段
接口处理逻辑分析
用户登录后拿到token将token设为全局变量。
上传修改后的用户昵称到用户修改接口
请求用户信息接口拿到昵称字段判断是否为修改后的的昵称。
代码展示
import pytest
updata_name sunny
expect_result updata_name #期待修改后的昵称
class TestUpdataUserInfo:
def setup_class(self):
print(请求登录接口获取到token)
self.token token #将token设为全局变量这里暂时用token代替接口返回的tokendef teardown_class(self):
# 此方法写请求获取用户信息接口拿到用户昵称逻辑代码
tokenStr self.token # 获取到token用于请求修改用户信息接口
print(请求用户信息接口拿到昵称)
nickName sunny#假设接口拿到的昵称为sunny
assert nickNameexpect_result #校验是否为期待的昵称def test_update_userInfo(self):
#此方法写上传修改后的用户昵称到用户修改接口的逻辑
tokenStr self.token #获取到token用于请求修改用户信息接口
print(token:tokenStr)
print(上传需要修改的昵称)
if __name__ __main__:
pytest.main([-s, pytest-demo.py])
现在我也找了很多测试的朋友做了一个分享技术的交流群共享了很多我们收集的技术文档和视频教程。
如果你不想再体验自学时找不到资源没人解答问题坚持几天便放弃的感受
可以加入我们一起交流。而且还有很多在自动化性能安全测试开发等等方面有一定建树的技术大牛
分享他们的经验还会分享很多直播讲座和技术沙龙
可以免费学习划重点开源的
qq群号822269834【暗号csdn999】 二、为什么选择yaml 写法简洁易懂视觉上也很舒适
yaml支持python,yamlpytest实现数据分离很简便。
配置有序支持数组写法数组中的元素可以是基本数据类型也可以是对象
实战例子用yaml写测试数据 上文的pytest例子中测试上传的昵称数据和期待修改后的昵称数据都是写在updataUserInfo.py文件这种写法不方法管理现在改为用yaml文件写测试数据。
代码展示
创建yaml文件updataUserInfo.yaml将测试数据写入
test:
name: test case1
updateName: sunny
result:
expectName: sunny
获取到yaml数据如下
{test: {name: test case1, updateName: sunny, result: {expectName: sunny}}}获取到yaml文件里的数据进行请求和校验
import pytest
import yaml# updata_name sunny
# expect_result updata_name #期待修改后的昵称
class TestUpdataUserInfo(object):def setup_class(self):
##获取yaml文件里面的数据,
with open(./updataUserInfo.yaml, r) as f:
content yaml.safe_load(f)
print(content)
self.update_name content[test][updateName]
self.expect_name content[test][result][expectName]print(请求登录接口获取到token)
self.token token #将token设为全局变量这里暂时用token代替接口返回的tokendef teardown_class(self):
# 此方法写请求获取用户信息接口拿到用户昵称逻辑代码
tokenStr self.token # 获取到token用于请求修改用户信息接口
print(请求用户信息接口拿到昵称)
nickName sunny#假设接口拿到的昵称为sunny
assert nickNameself.expect_name #校验是否为期待的昵称def test_update_userInfo(self):
#此方法写上传修改后的用户昵称到用户修改接口的逻辑
tokenStr self.token #获取到token用于请求修改用户信息接口
print(token:tokenStr)
print(需要修改的值为self.update_name)
print(上传需要修改的昵称)if __name__ __main__:
pytest.main([-s, pytest-demo.py])
三、为什么选择Allure
生成高大上的测试报告展示测试结果直观明了利于向领导展示自动化测试成果。
有失败用例截图、测试步骤和测试说明信息。方便测试人员查看测试结果。
Allure测试报告展示 最后感谢每一个认真阅读我文章的人看着粉丝一路的上涨和关注礼尚往来总是要有的虽然不是什么很值钱的东西如果你用得到的话可以直接拿走 软件测试面试文档
我们学习必然是为了找到高薪的工作下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料并且有字节大佬给出了权威的解答刷完这一套面试资料相信大家都能找到满意的工作。