未来软件测试工程师应该做些什么?早期对软件测试的定义仅仅是发现系统中的错误,软件测试的目的也就是发现软件中的错误。但随着软件测试的发展,软件测试工程师不仅仅是要发 现软件的错误,在控制软件质量过程中,不仅需要验证软件功能性,还需要从功能性、可靠性、 易用性、效率、可维护性、可移植性几大维度去测试软件的质量。软件质量六大维度如图 20-1 所示。
现在的软件测试工程师必须站在全局的角度上去看待软件的质量,现在的用户不只简单地要求 软件可用,还需要好用。曾经遇到这样一个案例,系统有一个打印的功能,在单击“打印”按钮后, 不是直接进行打印,而是先弹出一个打印属性的对话框,结果用户投诉说这个功能不好用,需要单 击两次才能进行打印,这就是软件的可用性问题,它同样影响着软件的质量。
可以想象未来随着软件测试的发展与成熟,软件测试成本的管理也将更为完善,而为了降低软 件测试的成本(当然这里并不代表降低软件测试的投入,而是通过科学的方法来改善软件测试的过 程进而降低成本),希望尽早发现系统中的缺陷,最理想的情况当然是在需求分析阶段就发现系统 的缺陷,这就要求软件测试工程师具备提前预判系统存在缺陷的能力,这也是未来优秀软件测试工 程师必须具备的能力。