知识点讲解
 
       系统测试
知识路径: > 嵌入式系统的项目开发与维护知识 > 系统实施知识 > 系统调试与测试 > 
被考次数:3次
被考频率: 中频率
总体答错率: 54%
知识难度系数:
考试要求: 掌握     
相关知识点:2个
               测试目的
               系统测试是为了发现错误而执行程序的过程,成功的测试是发现了至今尚未发现的错误的测试。
               测试的目的就是希望能以最少的人力和时间发现潜在的各种错误和缺陷。应根据开发各阶段的需求、设计等文档或程序的内部结构精心设计测试实例,并利用这些实例来运行程序,以便发现错误的过程。
               测试原则
               系统测试是保证系统质量和可靠性的关键步骤,是对系统开发过程中的系统分析、系统设计和实施的最后复查。根据测试的概念和目的,在进行信息系统测试时应遵循以下基本原则。
               (1)应尽早并不断地进行测试。测试不是在应用系统开发完之后才进行的。由于原始问题的复杂性、开发各阶段的多样性以及参加人员之间的协调等因素,使得在开发的各个阶段都有可能出现错误。因此,测试应贯穿在开发的各个阶段,应尽早纠正错误,消除隐患。
               (2)测试工作应该避免由原开发软件的人或小组承担,一方面,开发人员往往不愿否认自己的工作,总认为自己开发的软件没有错误;另一方面,开发人员的错误很难由本人测试出来,很容易根据自己编程的思路来制定测试思路,具有局限性。测试工作应由专门人员来进行,这样会更客观、更有效。
               (3)在设计测试方案时,不仅要确定输入数据,而且要根据系统功能确定预期输出结果。将实际输出结果与预期结果相比较就能发现测试对象是否正确。
               (4)在设计测试用例时,不仅要设计有效、合理的输入条件,也要包含不合理、失效的输入条件。在测试的时候,人们往往习惯按照合理的、正常的情况进行测试,而忽略了对异常、不合理、意想不到的情况进行测试,而这可能就是隐患。
               (5)在测试程序时,不仅要检验程序是否做了该做的事,还要检验程序是否做了不该做的事。多余的工作会带来副作用,影响程序的效率,有时会带来潜在的危害或错误。
               (6)严格按照测试计划来进行,避免测试的随意性。测试计划应包括测试内容、进度安排、人员安排、测试环境、测试工具和测试资料等。严格地按照测试计划可以保证进度,使各方面都得以协调进行。
               (7)妥善保存测试计划、测试用例,作为软件文档的组成部分,为维护提供方便。
               (8)测试例子都是精心设计出来的,可以为重新测试或追加测试提供方便。当纠正错误、系统功能扩充后,都需要重新开始测试,而这些工作的重复性很高,可以利用以前的测试用例,或在其基础上修改,然后进行测试。
               测试过程
               测试是开发过程中一个独立且非常重要的阶段,测试过程基本上与开发过程平行进行。
               一个规范化的测试过程通常包括以下基本的测试活动。
               (1)拟定测试计划。在制定测试计划时,要充分考虑整个项目的开发时间和开发进度,以及一些人为因素和客观条件等,使得测试计划是可行的。测试计划的内容主要包括测试的内容、进度安排、测试所需的环境和条件、测试培训安排等。
               (2)编制测试大纲。测试大纲是测试的依据,它明确详尽地规定了在测试中针对系统的每一项功能或特性所必须完成的基本测试项目和测试完成的标准。
               (3)根据测试大纲设计和生成测试用例。
               (4)实施测试。测试的实施阶段是由一系列的测试周期组成的。在每个测试周期中,测试人员和开发人员将依据预先编制好的测试大纲和准备好的测试用例,对被测软件或设备进行完整的测试。
               (5)生成测试报告。测试完成后,要形成相应的测试报告,主要对测试进行概要说明,列出测试的结论,指出缺陷和错误。另外,给出一些建议,如可采用的修改方法,各项修改预计的工作量及修改工作的负责人员。
               测试管理是影响测试团队效率与整体水平的重要因素之一,对于提高整体水平也具有重要意义。测试管理就是对软件测试输入项(如测试大纲、测试计划、测试用例、测试脚本、方案策略和测试工具等)和输出项(测试记录:测试结果、缺陷报告、测试工作日志等,测试总结:测试分析数据、测试评估数据、项目经验与教训等)进行管理,并在完成一定数量的软件测试之后提升下一软件测试工作水平,复用测试项。
               测试工具
               测试是软件过程中一个费钱又费力的阶段,而有许多测试工具有助于测试代码构建。这些工具能覆盖很大一部分功能需求,使用这些工具可以极大地降低测试过程的成本。这些测试工具通常包括如下部分。
               (1)测试管理者。管理程序测试的运行,其主要任务是掌握测试数据、所测试的程序和测试结果等信息。
               (2)启示器。产生对期待的测试结果的预测。
               (3)文件比较器。将持续测试的结果和先前的测试结果进行比较,报告出它们之间的不同。比较器在回归测试中非常重要,所谓回归测试,就是测试程序的新版本和旧版本,从不同的执行结果中发现新程序中的问题。
               (4)报告生成器。为测试结果提供报告定义和生成功能。
               (5)动态分析器。向程序中添加代码,对程序中语句执行次数进行计数。测试运行完成时,运行记录能够显示每个程序语句被执行的频繁程度。
               (6)模拟器。可以提供多种类型的模拟器。目标模拟器模拟程序将要执行的机器环境;用户界面模拟器是一个脚本驱动的程序,它能模拟多个用户之间的并发交互行为;输入/输出模拟器可以对交易处理序列的时序进行重复。
 

更多复习资料
请登录电脑版软考在线 www.rkpass.cn

京B2-20210865 | 京ICP备2020040059号-5
京公网安备 11010502032051号 | 营业执照
 Copyright ©2000-2023 All Rights Reserved
软考在线版权所有