传统系统的编程语言和逻辑全是过程式的。这种逻辑顺序只有当数据中的值引起不同的循环或控制顺序改变时才会发生变化。

  客户机/服务器和图形用户界面系统不是过程式的。它们是事件驱动的。这意味着计算机针对发生的事件执行相应的程序。这里的事件是指用户采取的行为,象键盘活动,鼠标移动,鼠标击键动作和按键的动作,都是事件的例子。因为事件发生的顺序不能预先知道,事件驱动系统相对来说更难测试。开发人员不可能知道用户下一次要选中哪个按钮或菜单项。实际上,应用程序必须在任何时候对所有发生和可能发生的事件作好正确处理的准备。

  另外,随着RAD(快速应用开发方式)的引入,导致应用的实现速度很快,但这种方式也有它的不足。一个重要的缺点是项目规划经常漏掉重要的测试阶段。测试象在传统开发项目中一样,经常被忽视,并且给予很不现实的少量时间和资源。对于这一点,测试RAD方式下提交的应用并保证软件质量是测试团队的首要工作。

  黑盒测试在实施时又分为客户端的测试和服务器端的性能测试。客户端的测试主要关注应用的业务逻辑,用户界面,功能测试等;服务器端的测试主要关注服务器的性能,衡量系统的响应时间、事务处理速度和其他时间敏感的需求。在应用系统终被交付之前保证这两方面的测试没有缺陷。

  由于测试并不是进行一次可以完成的个过程,而是需要根据产品版本的变化生成不同的测试过程,如果这一过程仅通过手工方式完成是很难达到的。需要通过工具的帮助,从而简化测试的复杂程度,降低在测试成本上的开销,缩短投放市场的时间。还有一个突出的特点是应用程序的回归测试,这是手工方式完成不了的过程,只有通过工具才能实施。而回归测试在测试阶段是很重要的过程,通过回归测试可以发现很多隐含的缺陷和错误。

  在服务器端的测试主要以模拟合法用户活动给系统的负载,负载测试的统计结果被用来预测用户将体验到的性能和响应时间。这都需要在客户机/服务器系统发行之前都要进行的。