自动化测试工程效能实践

如果无法正常显示,请先停止浏览器的去广告插件。
分享至:
1. 自动化测试工程效能实践 针对接口自动化测试和服务端代码的解决方案 司文 《敏捷测试高效实践》作者 ECUG Meetup 第 3 期
2. 个人简介 司文 16 年 IT 工作经验( 2 年开发、 14 年测试) 曾在外企( HP )工作过 8 年 银行工作 5 年,技术经理 精通自动化测试、敏捷测试、探索测试、测试工具平台开发等工作 在 2021 年和朋友出版《敏捷测试高效实践 测试架构师成长记》一书 个人微信 ECUG Meetup 第 3 期
3. 为什么来听分享 学习技术、提高认知 News No…. ECUG Meetup 第 3 期
4. 01 测试领域的工程效能 C ECUG Meetup 第 3 期 目 录 02 API自动化测试解决方案 03 服务端代码染色覆盖率 04 评估成果与价值
5. 测试领域的工程效能 ECUG Meetup 第 3 期
6. 软件开发过程 产品 高效 低效 ECUG Meetup 第 3 期 开发 测试 运维 上线
7. 测试领域的工程效能 UI 自动化 MOCK 工具 混沌工程 API 自动化 数据服务 精准测试 代码染色 AI 赋能测试 本质 成本 ECUG Meetup 第 3 期 效率 …
8. 问题 自动化测试 是一种技术手段 与 交付质量 ECUG Meetup 第 3 期 的关系是什么?
9. 测试的痛点 计划 实际 0 自动化测试脚本 产品需求 开发 产品需求 测试 开发 测试 上线 上线 测试时间被压缩 week 1 week 2 测试执行 0 自动化测试脚本 week 1 week 2 测试执行 自动化测试总迟到 ECUG Meetup 第 3 期
10. API自动化测试解决方案 ECUG Meetup 第 3 期
11. 自动化测试的灵魂三问 1 2 3 ECUG Meetup 第 3 期 你是不是花了挺久的时间写自动化测试脚本? 时间又久 自动化测试执行失败了,你首先想到的是什么? 发现缺陷又少 砍掉自动化测试行不行? 还不得不做
12. 恶性循环 交付太晚 来不及测完(风险后置) 自动化测试时间不足 来不及写 维护困难 质量差 死胡同 线上问题 反复沟通 加班 复盘… ECUG Meetup 第 3 期 未雨绸缪
13. API 自动化测试面临的问题 能不能一键生成自动化测试脚本? API接口 开发 ECUG Meetup 第 3 期 执行 脚本 测试 报告
14. 测试领域生成自动化测试脚本的方案 1 2 3 ECUG Meetup 第 3 期 人工编写,工具辅助 借助请求日志,工具生成 AI 算法,路径矩阵 + n 阶随机游走 ……
15. 自动化脚本结构拆解 TestProject 接 口 层 接 层 TestApi.py 接口层 API接口定义,包含URL、入参、方法 支持环境URL托管切换 业务逻辑层 TestFlow.py 逻辑层 业务逻辑、上下文参数赋值、校验逻辑等 用例组织层 TestCase.py 用例层 用例步骤组织、执行环境参数等 数据驱动层 TestCase.csv 数据层 用例数据输入、优先级调整、用例描述等 ECUG Meetup 第 3 期
16. 极速生成自动化测试脚本的解决方案 文件仓库 devicexxx deviceyyy TestApi.py TestApi.py TestFlow.py TestFlow.py TestCase.py TestCase.py TestCase.csv TestCase.csv … 服务端 解析封装信息 处理报文结构 生成脚本文件 获取文件列表及下载地址 标记机器名:devicexxx 标记机器名:devicexxx 发送接口信息 查询最新脚本并下载 (接口地址、报文头、请求报文、响应报文…) TestProject 接口层 PyCharm 配置命令 执行接口测试 1 ECUG Meetup 第 3 期 点击同步脚本 测试 2 自动化测试插件 TestApi.py 业务逻辑层 TestFlow.py 用例组织层 TestCase.py 数据驱动层 TestCase.csv
17. 极速生成自动化测试脚本的解决方案 调试接口 PyCharm 断言 单接口脚本 数据参数 数据驱动文件 多选接口 场景接口脚本 编排传参 数据驱动文件 自动化测试插件 接口列表 1 API A 2 API B 3 API C 4 API D 5 API E … … ECUG Meetup 第 3 期 执行 执行
18. 使用场景有哪些? 所谓全场景是指在手工测试的事前、事中、事后, 我们的服务都可以利用尽可能多的信息生成合适的自动化脚本。 01 02 03 事前 事中 事后 通过API接口契约生成自 通过Fiddler工具的抓包信 动化测试脚本 息,一边手工测试,一边 通过Postman工具的历 史请求记录,通过工具 生成自动化测试脚本 生成自动化测试脚本 ECUG Meetup 第 3 期
19. 解决方案成果 原来 ≈ 3 小时 设计用例 现在 准备数据 ≈ 10 分 钟 生成自动化测试脚本工具 ECUG Meetup 第 3 期 10 个 API 场景脚本 脚本编写调试 维护 10 个 API 场景脚本 突破效率人力上限
20. 答案 脚本生成 是一款工具 赋能 自动化测试 赋能 交付质量 ECUG Meetup 第 3 期 是一种技术手段
21. 服务端代码染色覆盖率 ECUG Meetup 第 3 期
22. 交付测试时的痛点 自动生成 API 自动化测试脚本后,效率提升了 但是,上线还是有问题 信息不对称导致的生产问题 漏了、忘了、没想到、疏忽了、逻辑盲区、历史原因、夹带私货 公开 透明 打破信息差 靠工具 代码是骗不了人的 测试过的代码覆盖率 ECUG Meetup 第 3 期 代码染色
23. 捋清思路 - 覆盖率 ECUG Meetup 第 3 期 单测覆盖率 需求覆盖率 测试用例覆盖率 缺陷覆盖率 自动化测试覆盖率 代码覆盖率
24. 希望解决的问题 1 我想知道,这次版本新增 / 修改的代码,都测试过了吗? 避免漏测 2 上线前的回归,怎么弄清楚需要测试的范围? 避免漏测 ECUG Meetup 第 3 期
25. 测试执行的代码覆盖率 测试行为 交付代码 待测系统 测试工程师 评审 评审 补充测试用例 ECUG Meetup 第 3 期 未测试 √ - √ - 开发工程师
26. 技术实现 构建 收集 计算 结果 手工/自动化 执行 代码染色覆盖率平台 Git 仓库 数据上传 API 待测应用接口 id exec_no_1 测试 CI/CD 构建 平台 应用 部署 创建 执行ID 分类 合并 开发 计算 报告 自动化测试 自动化测试 脚本 覆盖率结果 拉取源码 准备 测试 ECUG Meetup 第 3 期 覆盖率报告 测试 Git 仓库 产出 测试
27. 问题 代码覆盖率是不是越高越好? ECUG Meetup 第 3 期
28. 覆盖率工具的三点秘籍 1 核心代码覆盖率 bean √ 质量门禁 3 关注未覆盖的数据 常规覆盖率 非 Try Catch 版本 Diff 覆盖率 非 异常判断 controller dao √ √ 2 service business config utils ECUG Meetup 第 3 期 30% → 38% → 45% → 60% → 80% 同自己作比较,一次比一次好 & 未覆盖的代码
29. 覆盖率工具的两个坑 已染色部分,无法判断是否漏测 已执行过 用例 A 用例 B 执行 测试通过 多人协作场景 小张 小李 小王 执行结果 用例 A 用例 B 执行 ECUG Meetup 第 3 期 谁测的不知道 …
30. 问题 代码覆盖率还能解决什么问题? ECUG Meetup 第 3 期
31. 评估成果与价值 ECUG Meetup 第 3 期
32. 评估成果与价值 week 1 0 自动化测试脚本 5000 个 手工测试用例 week 2 测试执行 设计 数据 脚本编写 维护 1000 个 自动化测试用例 ? 10 w 行代码 3小时 / 10 个API场景脚本 5000 手工测试用例 1000 自动化测试用例 0 week 1 week 2 设计、数据、脚本编写、维护 10分钟 / 10 个API场景脚本 迭代流程优化 ECUG Meetup 第 3 期 工作效率提升 测试行为 补充/优化 用例 10 w 行代码 7 w 行代码未测试 1 w 行核心逻辑未测试 此次上线版本Diff 2000行未测试 测试质量提高
33. 广告 特色: • 漫画式的叙述方式 • 测试小工转型架构师的成长历程 • 三款测试创新工具 • 敏捷开发模式与测试工作创新 JD ECUG Meetup 第 3 期 当当 个人微信
34. Q&A JD ECUG Meetup 第 3 期 当当 个人微信

Home - Wiki
Copyright © 2011-2024 iteam. Current version is 2.137.1. UTC+08:00, 2024-11-16 02:45
浙ICP备14020137号-1 $Map of visitor$