1. 什么情况下需要安装测试组专门进行安装测试?
安装可以很简单,像一些简单的桌面应用程序,只是简单地复制一些文件,对于这种应用,不需要专门的安装测试组,安装测试能够和其他测试合并在一起。
安装也可以很复杂,需要支持多个操作系统平台,多种数据库,多个版本的中间件,多种网络服务器,多种拓扑结构等,这就要求测试人员具有较好的操作系统、数据库及网络服务器等知识。一般需要一个专门的安装测试组来进行相关测试。
一般来说,企业级Java EE应用都需要使用数据库软件。
2. 典型的拓扑结构是三层架构?
前端是网络服务器,中间是应用服务器,后端是数据库服务器。
3. 安装测试应该完成哪些内容?
确保待测产品能够在所有支持的操作系统、数据库、应用服务器中间件、网络服务器、拓扑结构等各种组合情况下,被正确地安装和卸载。
确保安装文档的正确性和易读性。
通俗来说,就是确保安装相关的代码和相关的安装配置文档的正确性。
4. 如何规划安装测试?——安装测试计划
每一个测试人员都需要认真仔细地阅读安装测试计划,并且按照这个文档的规定来进行具体的测试,这是对每一个测试人员最基本的要求。测试计划的主体部分详细描述了安装测试的测试配置和测试场景,这部分内容也最多。
5. 安装测试的基本流程?
a. 学习测试计划和测试用例:在安装测试计划中,包含所有的测试用例,一般要求每个测试人员对所有测试用例有一个基本的了解,对自己要测试的部分,要有全面和细致的了解。
b. 搭建测试机器:依据测试用例明确规定的硬件配置和操作系统版本搭建测试环境,同时检查安装文档中关于软硬件配置描述的正确性。
c. 准备待测试软件产品:将待测试产品从服务器中下载到测试机器上,注意待测软件所需要依赖的基础软件。
d. 按照安装手册中的步骤来执行:一来可以发现安装手册的问题,联系文档人员及时纠正,二来发现安装程序的问题,开bug.
e. 撰写测试报告,详细记录测试结果:以便测试组长掌握当前测试状态和进度情况。
一份手册,N台机器,一堆软件,这就是安装测试执行的形象总结。
6. 一个好的可执行的测试计划是确保测试质量的关键,那么,安装测试计划是如何做出来的?
a. 撰写测试计划时,首先要清楚地列出产品所有能够支持的测试配置:对于不同的待测软件,可以依据设计文档提供的信息从各个角度找出测试配置,如操作系统,应用服务器,数据库,网络服务器,拓扑,版本,安装类型等。
b. 有了测试配置之后,需要找出测试场景:依据需求说明书或用户手册找出测试场景。
c. 通过a 和 b, 测试用例就应运而生了,即测试用例=测试配置+测试场景。
测试配置、测试场景、测试用例是测试计划的精髓。
7. 什么是测试配置?
待测软件所能支持的硬件环境、软件环境和配置方法的组合。
8. 由于时间和人力的有限,不可能面面俱到的测试,如何缩小测试范围同时保证测试覆盖点?
a. 每种支持的操作系统版本至少需要测试一次:遗漏任何一个安装文档中叙述的系统版本支持,都有较大风险。
b. 每种支持的网络服务器版本至少测试一次:理由同上。
c. 每种支持的数据库版本至少测试一次:理由同上。
d. 设计文档中需要重点测试的配置必须测试:注意开发人员的某些代码可能在某测试配置下会出问题
e. 客户典型配置必须测试:大多数用户的使用软件产品习惯,确保待测产品的正常使用
f. 以往版本产品由客户报告的问题分析和由测试人员报告的缺陷分析:若新产品,这部分数据没用,若产品升级版本的测试,就可以分析这部分数据。
9. 什么是测试场景?
一系列紧密关联的操作步骤的集合,比如产品安装流程,卸载流程等。
10. 从软件产品的生命周期中可以找出哪些场景?
一个产品会经历安装、升级、卸载的过程:
a. 在选定的测试配置上安装产品:这是最基本的测试场景,安装手册中记录产品能够被正确、轻松地安装,若途中遇到问题能有清晰的提示信息且在问题解决后安装能继续进行,安装完成后,能正常启动。
b. 卸载产品:也是最基本的测试场景
c. 卸载后重新安装产品
d. 文件权限检查和敏感数据检查:安全性测试场景
e. 残障人员也能顺利安装产品:确保产品的可访问性测试场景
11. 产品安装测试相关的通过标准有哪些?
a. 安装程序能够自动检查安装前提条件是否满足:如磁盘空间,网络状况,CPU,内存,用户权限等,其中任何一个环节出现异常应有相应的错误信息抛出。
b. 软件安装向导的用户界面测试:如描述性文字、输入框、选择框、按钮、进度条等功能正常使用及显示。
c. 软件安装各个选项的组合确保符合概要设计说明:如典型安装,完全安装等,安装过程及结果符合预期行为。
d. 软件安装过程中是否能够支持取消,取消后的处理是否按预期进行。
e. 软件安装过程中意外情况的处理:如重启、断电、死机等情况。
f. 安装过程是否可以回溯,即回到上一步重新选择:测试安装易用性。
g. 软件安装过程中是否支持快捷键,快捷键的设置是否符合用户要求:安装可用性测试。
h. 软件静默安装测试:将安装过程中必要的用户输入写入文本响应文件中通过命令行安装
i. 正确的响应文件,静默安装能够成功完成且在日志文件中记录安装成功的相关信息
ii. 错误的响应文件,静默安装失败且在日志文件中记录失败的原因
i. 软件安装后安装日志中没有错误信息
j. 软件安装后应用是否能够正常运行:为保证这一点,一般在软件安装后会执行一些基本的功能测试用例
k. 安装后的文件夹及文件是否写到了指定目录里,文件大小及权限是否正确:安装的完整性及安全性,一般安装后使用一个扫描程序扫描安装后的文件夹和文件。
l. 安装后一些重要文件的内容是否正确:如版本信息文件、注册文件等。
m. 安装后数据库中的信息是否正确:
i. 数据库是否被正确创建
ii. 数据库模式(像表、索引、触发器等)是否被正确创建
iii. 数据库中的数据是否正确
iv. 检查数据库工作工作量一般比较大,使用工具帮助检查
12. 产品卸载测试相关的通过标准有哪些?
a. 测试软件自带的卸载程序
b. 测试使用操作系统自带的添加/删除工具来卸载程序的情况
c. 测试卸载程序在程序运行/终止状态时的卸载情况:卸载程序能够检查程序状态,一般需要处于停止状态才能卸载
d. 测试卸载软件过程中能否取消卸载过程:若不支持,取消按钮应不可用状态,若支持,取消后软件是否能正常使用
e. 测试卸载后文件是否完全删除,含安装文件夹、注册表、系统环境变量:若未删除,应提示用户相关信息
f. 卸载过程中出现意外情况的测试,如死机、重启、断电等
g. 软件自带卸载程序的UI测试
13. 用户手册验证工作贯穿整个安装测试始终,那么它应该有哪些特点呢?
安装文档必须是清晰、正确且易读的。
14. 如何验证用户手册?
a. 测试人员在执行具体的测试用例时,必须严格安装文档步骤来操作。在不正确的部分提交修改建议并验证。
b. 测试组长定期组织测试人员集体审阅所有文档内容,就不清楚的部分展开讨论和深入追查。
15. 文档的审阅流程:
16.自动化测试的工具很多,介绍两个与安装测试相关的自动化工具:
a. IBM Rational Functional Tester(RFT),先进的,自动化的功能和回归测试工具,适合做GUI界面相关的自动化测试。
b. Apache ANT: 基于Java的自动化脚本引擎,脚本格式为XML,除了做Java编译相关任务外,还可以通过插件实现很多应用的调用,适合命令行交互相关的自动化测试。