1.测试自动化
测试、测试,就是测已知,试未知。已知部分可以结合业务场景,通过测试设计工程方法进行枚举覆盖,可复用的部分逐渐沉淀进入回归集合。常规执行无外乎手工、半自动和自动化三种方式(当下引入 AI 技术辅助测试执行逐渐热门,短期内常规方式仍是主体,AI 作为辅助手段)
其中,回归部分存在完全重复执行;新增覆盖场景难免有前置环境、数据、状态准备需求,存在大量的部分重复执行。人并善于重复性工作,得让机器做。
一来,重复行为会让人随着时间的推移,效率曲线会下降;
再者,既定的工作机器一定比人来的可靠;
最后,更多的探索性测试才是测试工作的高价值部分。
测试人员做“时间的朋友”。经验的累计在于分析业务逻辑、熟悉功能实现,探究应用场景为手段,而非重复性操作。避免陷入勤奋陷阱,1 年的经验重复 做上10 年。
测试自动化技术的发展离不开“分层测试”的概念。分层测试是典型的化整为零的思想,把复杂的系统拆解成宽耦合粒度,这样可以尽早介入进行验证的方法。
一般测试分层有:UT、后端(逻辑)测试、前端(交互)测试、集成测试、性能、稳定性、兼容性、安全等专项测试。其中:
- 接口测试自动化技术源于针对逻辑实现主体的后端的测试;
- UI 自动化测试技术源于端到端的测试,包括基于浏览器的测试以及移动端 UI 测试;
- 浏览器兼容性测试、移动端兼容性测试源于系统测试;
常见的测试工具 / 框架如下表所示:
测试自动化技术分类测试自动化技术分门别类不算少,工具/ 框架成百上千也不在话下。如何实施是门学问,老J 给出自动化测试策略
- 关键路径,核心稳定场景优先实施;
- 接口组合场景为主,UI 为辅;
- 兼容性场景必做自动化;
- 前置条件可做半自动化
- 自动化测试平台化、服务化
关于左移精准测试、右移流量复制测试,以及 AI 测试技术以将单独开一篇讨论。
最后,强调一点执行提效是手段,覆盖全面是目的。重复的操作自动化;更多时间进行探索性测试。
网友评论