别再加端到端集成测试了,快换契约测试吧

随着业务的不断拓展、产品功能不断增加,系统架构越来越复杂,端对端集成测试的成本越来越高,测试用例也越增越多,集成测试又成了快速验证的阻塞区。在当今持续集成的开发模式中,开发团队会频繁集成,每次集成都会通过流水线(Pipeline)快速验证、准备部署包、进而发布。然而,集成测试的这些问题会严重影响或阻碍产品快速发布。

那么问题来了,怎么解决集成测试的现有问题,让测试再前进一大步?

其实,早在几年前,著名的敏捷和TDD专家JB Rainsberger就提到了。

“集成测试是个骗局”,正确的是应该用一种契约或协议测试来测试集成后的系统行为!

QA请勿忘初心

QA的工作涉及软件研发流程的各个环节,且涉及到每一位参与研发的人员,但质量保证工作又不涉及具体的软件研发细节,侧重于整个流程。

QC则侧重于点,利用各种方法去检查某个功能是否满足业务需求。

ThoughtWorks 的QA则是这两者的混合体,既要保证开发流程的质量,又要保证Story的功能正确。

我来ThoughtWorks已经3年了,当过BQConf讲师与主持人,参加过公司内各类测试相关活动,也阅读过邮件中分享的关于测试的话题,大部分人关注点都离不开自动化测试,面试的QA也说想到ThoughtWorks来学习高深的自动化测试,仿佛自动化测试代表了整个QA界,我反对盲目的自动化测试,确切的说反对盲目的UI自动化测试。很多QA在自动化测试海洋里迷失了自己。

我要强调自动化测试:真的没有银弹。

物联网测试地图

物联网的出现,给测试带来了很多有意思的挑战,使得众多QA开始重新思考传统的测试过程。

例如,我最近测试了一个产品,在这个产品中的移动APP会跟连接的机器产生会话。这两个设备各种各样的状态给测试场景的设计带来了特别大的挑战。下面给大家介绍一个很有用的物联网产品测试框架——物联网测试地图,它可以帮助我们管理物联网设备多种排列的复杂状态。