96SEO 2026-02-19 10:51 10
据驱动-excelpytest结合数据驱动-csvpytest结合数据驱动-jsonpytest测试用例生命周期管理一pytest测试用例生命周期管理二pytest测试用例生命周期管理三pytest测试用例生命周期管理-自动注册pytest测试用例生命周期管理-自动生效pytestfixture实现参数化

数据驱动就是数据的改变从而驱动自动化测试的执行最终引起测试结果的改变。
简单来说就是参数化的应用。
数据量小的测试用例可以使用代码的参数化来实现数据驱动数据量大的情况下建议大家使用一种结构化的文件(例如
App、Web、接口自动化测试测试步骤的数据驱动测试数据的数据驱动配置的数据驱动
pyyaml方法yaml.safe_load(f)方法yaml.safe_dump(f)
被测对象operation.py测试用例test_add.py测试数据data.yaml
TestWithYAML:pytest.mark.parametrize(x,y,expected,
pytest.mark.parametrize(x,y,expected,
TestWithYAML:pytest.mark.parametrize(x,y,expected,
int(expected)2.pytest结合数据驱动-excel
https://openpyxl.read***docs.io/en/stable/
openpyxl.load_workbook(./data/test.xlsx)#
pytest.mark.parametrize(x,y,expected,
pytest.mark.parametrize(x,y,expected,
openpyxl.load_workbook(../data/test.xlsx)sheet
row:data.append(cell.value)values.append(data)return
TestWithYAML:pytest.mark.parametrize(x,y,expected,
int(expected)3.pytest结合数据驱动-csv
的缩写以纯文本形式存储数字和文本文件由任意数目的记录组成每行记录由多个字段组成
TestWithCSV:pytest.mark.parametrize(x,y,expected,
pytest.mark.parametrize(x,y,expected,
pytest.mark.parametrize(x,y,expected,
openpyxl.load_workbook(../data/test.xlsx)
pytest.mark.parametrize(x,y,expected,
TestWithYAML:pytest.mark.parametrize(x,y,expected,
int(expected)4.pytest结合数据驱动-json
json方法json.loads()方法json.dumps()
json.loads(f.read())print(data)print(type(data))s
ensure_asciiFalse)print(s)print(type(s))if
TestWithJSON:pytest.mark.parametrize(x,y,expected,
pytest.mark.parametrize(x,y,expected,
pytest.mark.parametrize(x,y,expected,
openpyxl.load_workbook(../data/test.xlsx)
pytest.mark.parametrize(x,y,expected,
pytest.mark.parametrize(x,y,expected,
json.loads(f.read())print(data)print(type(data))print(list(data.values()))return
TestWithYAML:pytest.mark.parametrize(x,y,expected,
int(expected)5.pytest测试用例生命周期管理一
pytest2.在登陆的函数上⾯加pytest.fixture()3.在要使⽤的测试⽅法中传⼊登陆函数名称就先登陆4.不传⼊的就不登陆直接执⾏测试⽅法。
取值范围说明function函数级每一个函数或方法都会调用class类级别每个测试类只运行一次module模块级每一个.py
包只调用一次(暂不支持)session会话级每次会话只需要运行一次会话内所有方法及类模块都共享这个方法
pytestpytest.fixture(scopefunction)
test_order(login):print(下单功能)class
login):print(case2)7.pytest测试用例生命周期管理三
你已经可以将测试⽅法【前要执⾏的或依赖的】解决了测试⽅法后销毁清除数据的要如何进⾏呢
在pytest.fixture(scopemodule)。
在登陆的⽅法中加
login():#setup操作print(完成登录操作)tocken
#相当于return#teardown操作print(完成登出操作)def
test_order(login):print(下单功能)class
与其他测试⼯程师合作⼀起开发时公共的模块要放在⼤家都访问到的地⽅。
这个⽂件进⾏数据共享并且他可以放在不同位置起着不同的范围共享作⽤。
pytestpytest.fixture(scopefunction)
test_order(login):print(下单功能)class
pytestpytest.fixture(scopefunction,
case:数据为{login})pytest.fixture(params[[tom,
login(request):print(f用户名{request.param})return
作为专业的SEO优化服务提供商,我们致力于通过科学、系统的搜索引擎优化策略,帮助企业在百度、Google等搜索引擎中获得更高的排名和流量。我们的服务涵盖网站结构优化、内容优化、技术SEO和链接建设等多个维度。
| 服务项目 | 基础套餐 | 标准套餐 | 高级定制 |
|---|---|---|---|
| 关键词优化数量 | 10-20个核心词 | 30-50个核心词+长尾词 | 80-150个全方位覆盖 |
| 内容优化 | 基础页面优化 | 全站内容优化+每月5篇原创 | 个性化内容策略+每月15篇原创 |
| 技术SEO | 基本技术检查 | 全面技术优化+移动适配 | 深度技术重构+性能优化 |
| 外链建设 | 每月5-10条 | 每月20-30条高质量外链 | 每月50+条多渠道外链 |
| 数据报告 | 月度基础报告 | 双周详细报告+分析 | 每周深度报告+策略调整 |
| 效果保障 | 3-6个月见效 | 2-4个月见效 | 1-3个月快速见效 |
我们的SEO优化服务遵循科学严谨的流程,确保每一步都基于数据分析和行业最佳实践:
全面检测网站技术问题、内容质量、竞争对手情况,制定个性化优化方案。
基于用户搜索意图和商业目标,制定全面的关键词矩阵和布局策略。
解决网站技术问题,优化网站结构,提升页面速度和移动端体验。
创作高质量原创内容,优化现有页面,建立内容更新机制。
获取高质量外部链接,建立品牌在线影响力,提升网站权威度。
持续监控排名、流量和转化数据,根据效果调整优化策略。
基于我们服务的客户数据统计,平均优化效果如下:
我们坚信,真正的SEO优化不仅仅是追求排名,而是通过提供优质内容、优化用户体验、建立网站权威,最终实现可持续的业务增长。我们的目标是与客户建立长期合作关系,共同成长。
Demand feedback