学生在线考试系统软件测试
2015-12-26吴成庆孙玉涛
吴成庆+孙玉涛
摘要:计算机应用的普及,促进了高等教育模式的改革。为提高教学效率和管理水平,越来越多的高校采取大规模试题库的计算机网络考试模式。而软件测试是软件开发过程中必不可少的重要环节,本文从测试的基本概念着手,将软件测试相关理论运用到学生考试系统的整个测试过程,阐述了对系统管理员、教师用户、学生用户三个模块的功能测试。
关键词:在线考试;软件测试;需求分析;回归测试
中图分类号:TP331
文献标识码:A
DOI:10.3969/j.issn.1003-6970.2015.06.006
本文著录格式:吴成庆,孙玉涛,学生在线考试系统软件测试U].软件,2015,36(6):26-30
SoftwareTestingofStudentsOnlineExaminationSystem
WUCheng-qing,SUNYu-tao
[Abstract]:Thepopularityofcomputerapplicationshasbeenpromotingthereformofhighereducationmode.Therefore,inordertoimprovetheteachingefficiencyandthemanagementlevel,moreandmorecollegesanduniversitiesbegintotakelarge-scaletestmodelofcomputernetworkexamination.Thesoftwaretestingisanimportantandnecessarypartofthesoftwaredevelopment.Wesetaboutfromthebasicconceptsoftestingandapplyrelatedtheorytothewholetestofstudents'examinationsystem,whichillustratethefunctiontestingofthreemodules:thesystemad-ministratorusers,thestudentsandtheteachers.
[Keywords]:Onlineexamination,Softwaretesting,Demandanalysis,Regressiontesting
0引言
学生考试系统简介
随着数字化时代的到来,各行各业对计算机的运用比比皆是。远程教育成为了将来教育界发展的趋势之一,而考试系统是远程教育的一个重要方面。基于因特网的考试系统突破了传统考试的缺陷,充分利用了现代计算机网络的软硬件资源和网络资源。传统考试中,教师需要经历出试卷、印试卷、监考、收发试卷、批改等一系列繁琐的环节,网上考试不仅屏蔽了这些缺陷,节约了大量的人力、物力、财力,而且增加了考试的公平性和客观性,实现考务管理的自动化,实现大规模的考试,简化传统考试流程。软件测试的背景计算机技术的迅速发展和广泛应用,使得软件系统的复杂性和规模与日俱增,同时市场对软件系统的质量要求逐渐提高,而目前的状况是软件的生产成本和软件中存在的缺陷造成的各类经济损失不减反增。对于软件质量的要求催生了软件测试理论与技术快速发展,有效的排除软件故障的最佳手段就是测试。
1测试的必要性和需求分析
1.1软件测试必要性
在软件业较为发达的国家,软件测试不仅成为软件开发的一个有机组成部分,而且在软件开发的系统工程中占据着相当大的比重。以美国的软件开发和生产的平均资金投入为例,通常是:编程占百分之七,测试占百分之十五。软件测试的必要性不言而喻。
GlenfordJ.Myers曾对软件测试的目的提出过以下观点[1]:
(1)测试是为了发现程序中的错误而执行的过程。
(2)好的测试方案是极可能发现迄今为止尚未发现的错误的测试方案。
(3)成功的测试是发现了至今为止尚未发现的错误的测试。
1.2需求分析报告
理论上,软件的测试需求分析是来源于软件需求的,而软件需求又是源于客户需求的。用户需求是软件系统开发的重要基础,大量的数字表明,软件系统中15%的错误来源于错误的请求‘2]。那么用户需求大致可以划分为以下三个方面:功能需求、性能需求和约束性需求。
为了保证学生考试系统能够稳定、可靠、高效地运行,应满足下列功能需求:
1.3功能点列表
2.测试方法[5-7]
2.1白盒测试
白盒测试又称结构测试、逻辑驱动测试或基于代码的测试。”白盒”法全面了解程序内部逻辑结构、对所有逻辑路径进行测试。”白盒”法是穷举路径测试。在使用这一方案时,测试者必须检查程序的内部结构,从检查程序的逻辑着手,得出测试数据。
2.2黑盒测试
黑盒测试也称功能测试,它是通过测试来检测每个功能是否都能正常使用。在测试中,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息。黑盒测试法注重于测试软件的功能需求,主要试图发现:功能不正确或遗漏、界面错误;输入和输出错误、数据库访问错误、性能错误和初始化和终止错误等。
具体的黑盒测试用例设计方法包括等价类划分法、边界值分析法、错误推测法:
(1)划分等价类
等价类是指某个输入域的子集合。在该子集合中,各个输入数据对于揭露程序中的错误都是等效的,并合理地假定:测试某等价类的代表值就等于对这一类其它值的测试.因此,可以把全部输入数据合理划分为若干等价类,在每一个等价类中取一个数据作为测试的输入条件,就可以用少量代表性的测试数据.取得较好的测试结果.
(2)边界值分析
是通过选择等价类边界的测试用例。边界值分析法不仅重视输入条件边界,而且也必须考虑输出域边界。它是对等价类划分方法的补充。长期的测试工作经验告诉我们,大量的错误是发生在输入或输出范围的边界上,而不是发生在输入输出范围的内部.因此针对各种边界情况设计测试用例,可以查出更多的错误。
(3)错误推测法
错误推测法是基于经验和直觉推测程序中所有可能存在的各种错误,从而有针对性地设计测试用例的方法.基本思想是列举出程序中所有可能有的错误和容易发生错误的特殊情况,根据他们选择测试用例。
3测试计划
测试计划,描述了要进行的测试活动的范围、方法、资源和进度的文档;是对整个信息系统应用软件组装测试和确认测试。它确定测试项、被测特性、测试任务、谁执行任务、各种可能的风险。测试计划可以有效预防计划的风险,保障计划的顺利实施。
3.1测试范围
本测试包括:登录界面,学生用户界面,教师用户界面和系统管理员界面
3.2测试方法及测试工具
仅用黑盒测试进行功能测试,不使用任何辅助T具
3.3测试环境
硬件环境:
中央处理器类型:IntelCorei5-2450M;
内存:4G
外存:465G
输入输出:普通键盘输入,打印机输出,联机;
软件环境:操作系统(Windows)、MicrosoftOffice2007
3.4测试用例
测试用例是将软件测试的行为活动做一个科学化的组织归纳,目的是能够将软件测试的行为转化成可管理的模式;同时测试用例也是将测试具体量化的方法之一。
下面是在线考试系统的主要功能的测试用例。
4回归测试
随着系统功能的不断完善,以及性能的提高,在系统的跟进过程中仍需进行回归测试,即重新执行已经做过的测试的某个子集。因为在集成测试的过程中每当一个新模块结合进来的时候,程序就发生了变化,建立了新的数据流路径,可能出现新的I/O操作,激活了新的控制逻辑。这些变化可能使原来的工作正常的功能出现问题。
5结论
本文从测试的基本概念着手,将软件测试相关理论运用到学生考试系统的整个测试过程,阐述了对系统管理员、教师用户、学生用户四个模块的功能测试。无论怎样强调软件测试的重要性和它对软件可靠性的影响都不过分。我们应该力求尽早的发现并纠正差错,保证软件的质量。
参考文献
[1]张海藩,牟永敏著.软件工程导论[M].北京:清华大学出版社,2013.
[2]李代平,等编著.软件工程[M].北京:清华大学出版社,2008.
[3]罗福强,杨剑,张敏辉著.C#程序设计经典教程[M].北京:清华大学出版社,2014.
[4]陈志泊,李冬梅,王春玲.数据库原理及应用教程[M].北京:人民邮电ILIJ版社,2002.
[5]王象刚.软件测试过程管理T具的设计与实现[J].软件,2014,35(2):96-97.
[6]吴文辉,罗丹.网络考试系统设计[J].软件,2014,35(3):146.
[7]李云波.在线考试系统关键技术研究[J].软件,2014,35(1):83.