一、测试框架的演变
1.敏捷
2.持续集成
jenkins更新代码仓库,构建,执行单元测试,代码静态分析,多个模块测试
代码管理 Git 代码分析 FindBugs Sonar 给jar包也可以 单元测试 Junit 持续集成管理 Jenkins 独立的集成测试 独立的测试环境管理 独立的人工测试过程3.DevOps+持续交付 与 环境自动化部署
代码管理 Git 代码分析 FindBugs Sonar 单元测试 Junit 持续集成管理 Jenkins 自动化环境构建:Docker 自动化测试、研发、预发布环境管理:Chef、Puppet、Docker 独立的人工测试过程4.持续部署
代码管理 Git 代码分析 FindBugs Sonar 单元测试 Junit 持续集成管理 Jenkins 自动化环境构建:Docker 自动化测试、研发、预发布环境管理:Chef、Puppet、k8s 独立的人工测试过程 灰度发布:灰度发布a/b测试 把线上流量引导到测试环境。放少量人,放落后地区,放年龄,或者a/b版本 质量监控:全链路分析、统一监控平台,性能问题。奔溃日志二、测试知识体系的搭建
第一层:编程能力
1.底层语言:java 2.高层语言:python 3.领域语言:shell,sql,docker 4.领域技术掌握:Linux,android,ios 5.算法与数据结构:堆栈,链表,二叉树第二层:自动化能力
前台自动化: selenium,appium,ATX,STF UIAutomator,WebDriverAgent 服务端接口测试: java:HttpClient、restAssured python:Requests,httprunner 性能测试:Jmeter,nGrinder,Gating,Locust第三层:测试框架深入理解能力
1.Appium的框架原理是什么?有没有做过二次开发 2.如何并发运行测试用例,测试用例的顺序如何控制 3.如何自定义Appium 4.测试报告如何定制,用例覆盖度如何 5.跨多端平台的用例如何维护 6.端到端测试如何做,如何利用mock解决APP数据依赖问题 部门的架构是什么样子的,技术栈用的是什么第四层:问题定位白盒测试能力
静态分析能力 静态扫描工具:FindBugs,Sonar 编译器分析技术:gcc,javac,IIvm 插桩技术:jacoco 动态分析能力:第五层:架构能力与管理
架构能力 自研工具:测试框架与工具、WDA、Diffy/Qunit 平台构建能力:测试管理平台、DevOps/持续交付流程管理平台 开源平台与工具:Jenkins、Jenkins X、BlueOcean/K8s,容器管理技术 数据平台:ELK、Hadoop/Spark/tensorFlow大数据分析能力 质量管理 SCM版本管理体系 质量保证流程与文化建设 问题推动与解决能力三、互联网测试体系
测试左移:研发阶段的质量保证 测试:测试阶段的测试流程 测试右移:发布后的质量监控(大数据分析) 测试阶段的测试流程 内部交付:jenkins自动打包,提供内部网站下载入口 灰度交付:使用fir.im bugly tstflight服务 正式交付:Android:渠道包打包推送 ios:上传到app store 常见后端发布机制 代码编译和发布包构建 后端打包:mvn rpm docker 移动端打包:gradle cocospod 环境构建 docker jenkins等自动构建和部署平台 测试推送 后端升级自动触发接口测试 测试结果自动推动到运维平台决策 建立测试的准入机制 冒烟测试通过 基本的测试checklist 和手段 功能测试:业务测试、回归测试 非功能测试:性能测试、专项测试 测试左移:代码分析,代码审计 sonarqube平台 测试右移:质量监控 合理的测试安排 新功能测试(新业务、新需求) 老功能回归(老功能和需求) 小版本测试(功能点搞定) 大版本测试(大功能改动或者新增) 回归与新功能测试每次都要执行 专项测试可以每个大版本可测试一次版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。