本帖最后由 stream 于 2010-11-4 09:33 编辑
Effective software testing //有效的软件测试
Chapter 1. Requirements Phase //第一章 需求阶段 The most effective testing programs start at the beginning of a project, long before any program code has been written. The requirements documentation is verified first; then, in the later stages of the project, testing can concentrate on ensuring the quality of the application code. Expensive reworking is minimized by eliminating requirements-related defects early in the project's life, prior to detailed design or coding work. The requirements specifications for a software application or system must ultimately describe its functionality in great detail. One of the most challenging aspects of requirements development is communicating with the people who are supplying the requirements. Each requirement should be stated precisely and clearly, so it can be understood in the same way by everyone who reads it. If there is a consistent way of documenting requirements, it is possible for the stakeholders responsible for requirements gathering to effectively participate in the requirements process. As soon as a requirement is made visible, it can be tested and clarified by asking the stakeholders detailed questions. A variety of requirement tests can be applied to ensure that each requirement is relevant, and that everyone has the same understanding of its meaning.
//最有效的测试是从项目一开始就展开的,远远在任何代码编写完成之前。首先是需求文档被验证,然后再后面的阶段中,测试可以集中确保应用程序代码的质量。在软件生命周期中,通过剔除和需求相关的缺陷可以减少昂贵的重复劳动,这样比在设计或编码工作时发现这类缺陷优越得多。
软件应用程序或者系统的需求规格说明书一定是最终描述功能的细节。在建立需求的过程中最重要的挑战之一就是和提供需求人员进行交流。每条需求都需要描述的精准和清晰,这样可以让任何读需求的人可以有相同的理解。如果有一套文档需求的统一的方法,那么利益相关者在需求阶段被集中并有效参与需求过程就可能成为他们的一种责任。只要需求是可见的,那么就是可以被测试的,可以通过问利益相关者问题来阐明的。各种各样的需求测试可以被申请,用以确保每个需求是中肯的,每个人都有相同的理解,没有二义性。
Item 1: Involve Testers from the Beginning //第一节 在项目开始时引入测试 Testers need to be involved from the beginning of a project's life cycle so they can understand exactly what they are testing and can work with other stakeholders to create testable requirements.
//测试人员需要在软件生命周期的起始阶段就进行参与,这样可以让他们更准确的理解他们要测试的东西并且可以和利益相关者一起打造可测的需求。 Defect prevention is the use of techniques and processes that can help detect and avoid errors before they propagate to later development phases. Defect prevention is most effective during the requirements phase, when the impact of a change required to fix a defect is low: The only modifications will be to requirements documentation and possibly to the testing plan, also being developed during this phase. If testers (along with other stakeholders) are involved from the beginning of the development life cycle, they can help recognize omissions, discrepancies, ambiguities, and other problems that may affect the project requirements' testability, correctness, and other qualities. //缺陷预防是技术和流程,这些技术和流程可以帮助缺陷在后面开发阶段被传播前就被发现和避免。缺陷预防是在需求阶段最有效的,因为需求的改变而修复缺陷的影响也最小:仅仅是需求文档的修改或者测试计划的修改,也或者是在开发阶段。如果测试人员(还有利益相关者)在开发周期一开始就介入的话,他们可以帮助识别出遗漏、偏差以及含糊不清之处,以及其他影响项目需求的可测试性、正确性及其他质量问题。 A requirement can be considered testable if it is possible to design a procedure in which the functionality being tested can be executed, the expected output is known, and the output can be programmatically or visually verified.
//一个需求被认为是可测的:如果可以设计一个过程,这个过程中功能可以被执行测试,期望结果是可知的,并且输出结果可以被程序化地和可视地验证。
*************** 以上是这两天的翻译成果,后面继续努力,翻译不对的地方也欢迎各位指正。 |