問53
頻出度★★★
プログラムテストに関する記述として, 適切なものはどれか。
这道题的解析和你的作答记录。
プログラムテストに関する記述として, 適切なものはどれか。
错误。软件的质量是在设计和实现阶段构建进去的,不是靠测试事后附加上去的。测试只是检测和确认已经构建进去的质量的工序,而且越是上游工序(需求定义、设计)的缺陷,修正成本越高。因此,认为「与其在设计阶段提升,不如在测试阶段加以保证」的想法是本末倒置的。
正解 正确答案是イ。在测试完成后修改程序时,不仅要确认修改的部分本身是否改对了,还必须确认是否因修改的影响而破坏了原本正常工作的部分(功能退化=回归)。因此,要把用于确认修改部分的新测试数据「追加」到迄今为止已确认的测试数据中,对整体重新进行测试。这就是回归测试的基本做法,イ的叙述正是在描述这一步骤,所以是恰当的。反过来,如果只用新的测试数据重新测试,就无法发现因遗漏影响范围而产生的功能退化。
错误。测试的目的不只是确认程序正常运行,还在于找出潜在的缺陷。因此必须包含预料之外的输入、边界值、非法数据等有意让程序产生错误的测试数据(异常情况的测试用例)。只试正常情况的测试,无法确认程序在实际运行中面对异常输入时的承受能力。
错误。程序的编写者容易按照自己的理解和先入之见来设计测试用例,自己没有设想到的情况也会从测试设计中漏掉,因而容易漏检缺陷。为了确保客观性,最好由编写者以外的第三方来设计并执行测试用例(或者加入第三方的评审)。