单项选择题

软件测试的目的正确的是()。
①测试是为了发现程序中的错误而执行程序的过程;  
②好的测试方案是极可能发现迄今为止尚未发现的错误的测试方案;
③成功的测试是发现了至今为止尚未发现的错误的测试; 
④测试并不仅仅是为了找出错误,通过分析错误产生的原因和错误的发生趋势,可以帮助项目管理者发现当前软件开发过程中的缺陷,以便及时改进。

A.①
B.①②③
C.②③④
D.①②③④