软件系统测试意味着将软件系统或者应用程序做为一个整体进行测试。应用程序的系统测试从整体上检测软件大致的业务,操作以及终用户需求的一致性。系统测试被归类为黑盒测试。
这是为什么内部设计,架构或者代码对于这种测试来说完全不重要。
当执行一个软件测试时,专业软件测试员倾向于区分是接口里面的,还是整个软件里面的错误或者缺陷。然而,当执行软件或者应用程序的内建(build-in)测试的时候,专业的软件测试员会倾向于,把已经合并起来的单独模块之间的缺陷或者错误区分开来。
系统测试过程中,主要的问题是软件的设计,行为以及客户的期望。因此软件的系统测试阶段也可以被称为软件开发生命周期的审查测试阶段。
什么时候系统测试会变得重要起来?
当软件的所有功能开发完成时,整个软件系统应彻底的被测试,保证业务,功能和非功能的要求。系统测试基于单元测试和集成测试标准。绝大多数情况下由一个特别,独立,并且值得托付的小组来负责系统测试。系统测试在开发用服务器(staging server)上完成。
系统测试的理由
● 系统测试是把软件或者应用程序首次做为一个整体进行测试
● 执行系统测试是为了检查和改进技术,业务,功能和非功能的软件需求,审查和改进软件程序架构也是这个阶段一部分内容。
● 系统测试执行在模拟环境(staging environment)里,与终软件安装所需的环境非常类似。(译者注:staging environment,即在软件终发布前,开发或者设计人员对软件进行调整后可以及时预览改变的测试环境,这个环境更接近于产品终发布后的运行环境)
系统测试完成的标准:
● 完成单元测
● 完成集成测试
● 软件系统开发彻底完成
● 模拟产品环境的测试环境准备完成。例如,模拟环境(staging environment:同上注) 存在
系统测试7个阶段:
● 开发系统测试设计
● 开发系统测试用例
● 选择或者开发一些用于系统测试的数据
● 必要的话,将系统测试用例自动化
● 执行测试用例
● 修复缺陷和回归测试
● 如果需要,在不同的测试环境下,再次完成一个测试周期
软件测试计划的内容可以在公司与公司,或者项目与项目之间替换使用,这取决于软件测试的策略,项目计划的建立以及理解项目测试计划的程度。软件系统测试计划的主要内容包括:
● 范围
● 目标及目的
● 主要区域/关键区域
● 可交付物
● 系统测试计划
● 进度计划
● 进入和完成标准
● 软件测试的延迟和更新标准
● 测试环境
● 可交付标准
● 人员与培训计划
● 角色与职责
● 字典
如何创建系统测试用例
系统测试用例的编写,用跟写功能测试用例一样。不过,当编写系统测试用例的时候,应该考虑2个关键点:
1、系统测试用例应该附上用例和场景
2、测试用例必须满足全部要求,例如,技术上,用户界面,功能性,非功能性你,性能和其他方面。
在维基百科上,当执行系统测试时,要考虑24中不同的测试类型,他们是:用户界面测试,可用性测试,性能测试,兼容性测试,错误处理测试,大容量用户测试,大容量数据测试,压力测试,用户帮助测试,安全测试,可扩展性测试,容积测试,健全测试,冒烟测试,探索性测试,随机测试,回归测试,可靠性测试,恢复性测试,安装测试,效力测试,维护测试,恢复与故障转移测试,业务功能测试。
系统测试用例计划:
● 给测试用例一个ID(数字)
● 测试套件(test suit)的命名
● 测试者 ? 编写测试用例的测试者名字
● 功能的简短描述或者需求环境的ID
● 测试执行时的步骤
● 测试数据-输入数据
● 预期的结果
● 肯定的结果
● 通过/失败
● 测试评审 软件测试计划的内容可以在公司与公司,或者项目与项目之间替换使用,这取决于软件测试的策略,项目计划的建立以及理解项目测试计划的程度。软件系统测试计划的主要内容包括:
● 范围
● 目标及目的
● 主要区域/关键区域
● 可交付物
● 系统测试计划
● 进度计划
● 进入和完成标准
● 软件测试的延迟和更新标准
● 测试环境
● 可交付标准
● 人员与培训计划
● 角色与职责
● 字典
如何创建系统测试用例
系统测试用例的编写,用跟写功能测试用例一样。不过,当编写系统测试用例的时候,应该考虑2个关键点:
1、系统测试用例应该附上用例和场景
2、测试用例必须满足全部要求,例如,技术上,用户界面,功能性,非功能性你,性能和其他方面。
在维基百科上,当执行系统测试时,要考虑24中不同的测试类型,他们是:用户界面测试,可用性测试,性能测试,兼容性测试,错误处理测试,大容量用户测试,大容量数据测试,压力测试,用户帮助测试,安全测试,可扩展性测试,容积测试,健全测试,冒烟测试,探索性测试,随机测试,回归测试,可靠性测试,恢复性测试,安装测试,效力测试,维护测试,恢复与故障转移测试,业务功能测试。
系统测试用例计划:
● 给测试用例一个ID(数字)
● 测试套件(test suit)的命名
● 测试者 ? 编写测试用例的测试者名字
● 功能的简短描述或者需求环境的ID
● 测试执行时的步骤
● 测试数据-输入数据
● 预期的结果
● 肯定的结果
● 通过/失败
● 测试评审