软件测试的复杂性体现在:
》 不可能对程序实现完全测试
》 杀虫剂现象,即为了克服被测试软件的免疫力,软件测试人员必须在不断写新的测试程序,对程序的各个部分进行不断测试,以免被测试软件对单一的测试程序具有免疫力而使软件缺陷不被发现。
》 软件测试的代价不容易掌握,因为随着测试量的增加,测试成本将呈何数倍级上升,而软件缺陷数量降低到某一数值之后将没有明显的变化,寻求最优测试点,掌握好测试工作量是至关重要的。
》 在实际操作过程中,测试人员要进行正确的判断,合理的取舍,根据风险分析来决定哪些故障需要修复,哪些故障可以不修复,即并不是所有的软件缺陷都需要被修复。