审查和测试代码是软件工程中另一个基本要点,然而在Web开发设计中,它常常被忽略。通常,测试者会满足于运行系统,测试两三个例子,然后说,“哦,是的,它工作得很好。”这是经常犯的一个错误。在准备将项目作为产品发布之前,要确保它已经在各种情况下经过了广泛的测试和审查。
我们推荐使用两种方法来降低代码错误率(永远不可能清除所有错误,但肯定可以排除大部分错误或将错误减到最小)。
首先,采用代码审查。也就是让另一位编程人员或另一组编程人员查看代码,并提出改进意见。通常经过这样的分析,我们能够对下面的问题提出建议:
■可能忽略的错误
■原程序设计者没有想到的测试用例
■代码优化
■安全性的提高
■可以使用已有组件改进某一段代码
■附加功能
即使一个人独立开发,我们建议也要找一个“代码查错者”(“查错者”和开发者情况差不多,可互相审查代码)。
第二个建议是让最终用户作为Web应用程序的测试人员。Web应用程序和桌面应用程序的主要区别就是每个人都将使用Web应用程序。我们不能假定每个人都能熟练使用计算机,也不可能给他们提供厚厚的手册或快速参考卡片。必须让应用程序自动存档而且自己说明自己。此外,还得考虑用户希望如何使用应用程序。可用性是极为重要的。
对于有经验的编程人员或网上冲浪者来说,很难理解没有经验的用户所遇到的问题。解决这个问题的方法之一就是请代表典型用户的人做测试员。
过去用作测试的一种方法是只基于beta版发布Web应用程序。当认为Web应用程序的主要错误已经消除时,可以将应用程序公布于小部分测试用户,并为网站提供小流量通信。可以许诺为前100位反馈网站使用意见的用户提供免费服务。我可以确信他们会带来一些开发人员原先并未想到的数据和用法及其组合。如果是在为某客户公司开发Web站点,通常,可以通过让公司的员工使用站点而提供许多没有经验的用户。(这也有内在的好处,它可以提高员工在网站中的主人翁感。)