本节书摘来自华章出版社《软件测试价值提升之路》一书中的第2章,第2.2节,作者:杨晓慧编著,更多章节内容可以访问云栖社区“华章计算机”公众号查看。
2.2 匹配新的业务要求
这些年软件发生了什么变化?前面的章节已经提到,软件的应用已经从特定的行业渗透到了各行各业,包括日常生活。软件的用户已经由专业人员扩展到了社会上的每一个人。所以对于软件至少有以下几个特点是需要测试去适应的:
推出快。这是一个快鱼吃慢鱼的时代,即使产品面对的是行业市场,也会面临着客户今天想出来的主意,明天就想看到东西的紧迫感。所以以前的软件公司要过CMM认证,现在讲的是敏捷,而测试需要具有适应这种开发模式的工具、方法和组织结构。
变化频繁。跟着用户的需求走,而不是跟着标准走,这是现在软件的特点。用户只要不停止思考,需求就不会停止进化。软件架构更新升级的周期一般不超过2年,新架构要继承所有的老特性,而且还会在研发效率、性能、可靠性、体验、成本等的某一个或几个方面有飞跃,测试也需要具备相应的验证和评估能力。
接口杂。现在的软件都倾向于让用户在自己的平台上集成需要的全部信息,这样用户的体验才是最好的,也才会有黏性,但是这样也意味着后台的接口会非常多,这些接口通常是非标准的,而且并非稳定不变。繁杂的接口,对测试使用的模拟工具、自动化工具、接口捕获和分析工具提出了很大的挑战。
开放性。大多数的软件都有面向互联网用户的客户端,这样一来,软件的用户既有内部专业人员,也有普通互联网用户或者内部的一般操作员。对测试而言,这意味着应用场景会更复杂,安全性的挑战也会更大。
新技术。不管是否愿意,这些年一些新的技术概念已经冲进了软件圈子每个人的视野,如,云测试、探索式测试、极速测试、基于模型的测试(Module based testing,MBT)、基于风险的测试(Risk based testing,RBT)、测试过程改进(Test process improvement,TPI),以及各种各样号称多快好省的测试工具等。如果测试工程师不能比其他研发成员更早剥开这些名词的本质,就会显得不思进取。
重体验。很多并不具备基本计算机知识、电脑操作水平一般而并不熟悉的人成为了软件用户,软件的体验设计也没有形成普适性的所谓的“22条军规”。对体验的验证也必须有新的思路。