系统集成项目通过验收测试的主要标准为()
A.所有测试项均未残留各等级的错误
B.需求文档定义的功能全部实现,非功能指标达到设计要求
C.立项文档、需求文档、设计文档与系统的实现和编码达到一致
D.系统通过单元测试和集成测试
参考答案:B
解析:根据《系统集成项目管理工程师教程》中"3.3.2软件设计、测试与维护"一节的所述内容,测试不仅是检查预防措施是否有效的主要手段,而且是识别由于某种原因预防措施无效而产生的错误的主要手段。需要注意的是,在广泛的测试活动成功完成后,软件可能仍包含错误,交付后出现的软件失效的补救措施是由软件维护达成的。因此,选项A的说法是错误的。根据《系统集成项目管理工程师教程》中"19.1.1项目验收"一节的所述内容,系统集成项目的验收工作步骤中的系统测试是对信息系统进行全面的测试,依照双方合同约定的系统环境,以确保系统的功能和技术设计满足业主的需求,并能正常运行。系统测试阶段应包括编制测试用例,建立测试环境,逐条进行测试。由此可知,选项B的说法是符合上述情况和要求的。根据《系统集成项目管理工程师教程》中"4.3.3项目生命周期与产品生命周期的关系"一节的所述内容,(1)单元测试的主要目的是针对编码过程中可能存在的各种错误,例如用户输入验证过程中的边界值的错误。(2)集成测试主要目的是针对详细设计中可能存在的问题,尤其是检查各单元与其他程序部分之间的接口上可能存在的错误。(3)系统测试主要针对概要设计,检查系统作为一个整体是否有效地得到运行,例如在产品设置中是否能达到预期的高性能。(4)验收测试通常由业务专家或用户进行,以确认产品能真正符合用户业务上的需要。要想实现"立项文档、需求文档、设计文档与系统的实现和编码达到一致"这一目标,实际上是需要通过在整个信息系统开发的各个阶段中实施多种软件测试活动来予以保证的,包括单元测试、集成测试、系统测试和验收测试,而不仅仅针对验收测试而言,因此选项C的说法是错误的。验收测试和单元测试、集成测试分别是在系统的不同开发阶段所采用的不同测试技术和方法,不是简单的叠加或相互替代的关系,因此选项D的说法也是错误的。因此,综合以上内容分析可知,正确答案应选B。