5 在线考试系统测试方案
5 在线考试系统测试方案
5.1 软件测试
所谓软件测试,就是一个过程或一系列过程,用来确认计算机代码完成了其应该完成的功能,不执行其不该有的操作。软件应当是可预测且稳定的,不会给用户带来意外惊奇。
多年来,许多专家已提出各种不同的关于软件测试(Software Testing)的定义,其中一些关于测试的共同定义包括:
“……以寻找错误为目的的执行程序的过程。”
[11]
——迈尔斯 G.J.软件测试的艺术,Wiley出版社,1979年 “软件测试是一个以寻找错误为目的的分析和操作软件的过程。”
[12]
——软件测试快速入门,2001
该领域的很多专家似乎都在倡导测试的主要目的是找到缺陷,而且尽可能在软件开发生命周期的早期发现这些缺陷。但是,归根结底,软件测试的目的并不仅仅如此,他更重要的目的在于保证软件产品的最终质量。所以,软件测试要做到:
? 要证明软件是“工作的”; ? 要证明软件是“不工作”的; ? 要证明存在软件缺陷; ? 不能以“寻找错误为目标”; ? 不要试图穷尽测试; ? 要测试“软件规格说明书”; ? 要深入分析缺陷和错误;
? 要帮助度量软件质量并为团队中的其他成员提供信息。
根据产品的特点,要在不同阶段进行不同的测试操作。有一些测试是随时随地进行的,不少测试是有计划进行的,例如在每个功能完成之后,在每一个版本编译完成之后,就一定要进行回归测试、冒烟测试和版本验证测试。在产品的测试版本阶段,一般都会执行探索性测试。对于软件的用户界面、安全性、性能和可靠性、稳定性、用户安装等跟用户的软件使用体验直接有关的方面,我们也都必须要进行测试。
[10]
[9]
31
5 在线考试系统测试方案
5.1.1 单元测试
单元测试是针对软件的最小模块进行正确性检验的测试工作。他是验证软件单元的实现是否和该单元的说明完全一致的相关联的测试活动组成的。根据软件单元的说明文档编写测试用例,对重要的接口、局部数据结构、边界条件、独立路径和错误处理路径,通过代码检查或执行测试用例有效地进行测试。
[11]
5.1.2 功能测试
功能测试又称为黑盒测试(Black-box Testing)。利用黑盒测试法进行动态测试时,需要测试软件产品的功能,不需测试软件产品的内部结构和处理过程。采用黑盒技术设计测试用例的方法有:等价类划分、边界值分析、错误推测、因果图和综合策略。黑盒测试注重于测试软件的功能性需求,即黑盒测试使软件工程师派生出执行程序所有功能需求的输入条件。黑盒测试并不是白盒测试的替代品,而是用于辅助白盒测试发现其他类型的错误。
5.1.3 性能测试
性能测试是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。
[12]
负载测试和压力测试都属于性能测试,两者可以结
合进行。通过负载测试,确定在各种工作负载下系统的性能,目标是测试当负载逐渐增加时,系统各项性能指标的变化情况。压力测试是通过确定一个系统的瓶颈或者不能接收的性能点,来获得系统能提供的最大服务级别的测试。
本系统采用LoadRunner进行性能测试:
[13]
32
5 在线考试系统测试方案
图5.1 性能测试截图
图5.2 性能测试截图
5.2 测试用例 5.2.1 测试用例
33
5 在线考试系统测试方案
表5.1 测试用例
用例编号 测试测试重要级预置条输入参测试步骤 预期输出 1、进入系统主页 2、点击左侧树状菜单“考生管理” 3、点击“考生管理”菜单中的“考生信息”模块 4、“姓名”一项输入:王丽 5、“性别”一项选择:女 6、“出生年月”一项选择:1988-03-27 7、“身份证号”一项输入:220104198803274127 8、“单位”一项选择:中共吉林省委,省委办公厅,教育部 9、“职务”一项输入:部长 10、“任现职时间”一项选择:2005-06-01 11、“照片”一项通过“浏览”按钮选择本地图片 12、点击“保存”按钮 系统提示操作成功 谢珍真 测试人 项 标题 别 件 数 EXAM_ST_FUN__001 考生管理->考生信息 验证增加考生功能 中 进入系统主页 34
5 在线考试系统测试方案
5.2.2测试结果
图5.3 测试结果截图
图5.4测试结果截图
35