钟元生 黄 梅 刘细发
摘要:课程网站测试有利于充分发挥国家精品课程的作用。本文针对课程网站特点,设计了三个测试用例,运用自动化测试工具LoadRunner8.0对电子商务概论国家精品课程网站进行了负载压力测试。测试表明,当来自校外的网站并发访问人数超过20时,网站性能将受到影响。
关键词:国家精品课程 负载压力测试 测试用例 自动化测试工具
中图分类号:G250.7 文献标识码:B 文章编号:1673-8454(2009)07-0055-02
一、精品课程网站负载压力测试的目的
由于每门国家精品课程均建设了相应的课程网站,大大地方便了优质教学资源的共享。其中,包括了网络教学环境的考察点,具体是指网络教学资源丰富,架构合理,硬件环境能够支撑网络课程的正常运行,并能有效共享。[1] 因此,有必要研究一些技术与方法,对国家精品课程网站的功能与性能进行评价。近年来,研究者对国家精品课程资料的可及性以及建设现状分析等进行了一些有益的探索。[2][3]
在国家精品课程评审指标中并没有详细地说明作为一个国家精品课程网站所应该承受的负载压力是多大,但作为一个课程网站,应该能承受大量用户的在线学习和下载资源。这就需要对课程网站的负载压力进行测试,评价课程网站所能承受的并发访问用户人数。
负载压力测试是指在一定约束条件下测试系统所能承受的并发用户量、运行时间、数据量,以确定系统所能承受的最大负载压力。负载压力测试有助于确认被测系统是否能够支持性能需求,以及预期的负载增长等。负载压力测试不仅仅关注不同负载场景下的响应时间等指标,它也要通过测试来发现在不同负载场景下会出现的问题,例如速度变慢、内存泄露等的原因。[4]
本文是以某高校电子商务概论国家精品课程网站测试为例,在国家精品课程评审指标的基础上,对国家精品课程网站的负载压力评价方法作一些尝试。
二、精品课程网站负载压力测试用例设计
本文中的负载压力测试是从远程客户端检查某高校电子商务概论国家精品课程网站在同一时间能正常响应多大数量的并发访问用户,使得用户能正常获取所需的课程资源及服务。需要强调的是,本实验是在该校外访问其精品课程网站,这正是精品课程全国共享所要求的基本情景。
可访问性对用户来说极其重要,所以在负载压力测试中应该关注三个方面:瞬间访问高峰;每个用户传送大量数据;长时间的使用。本文主要对瞬间访问高峰和每个用户传送大量数据进行测试,即对用户的并发性操作进行测试,针对课程网站的特点,对网站PPT观看、下载资料和在线考试三个模块进行了负载压力测试设计,课程测试用例简表见表1,详细用例样表见表2。
表1负载压力测试用例简表
表2负载压力测试用例样表
每个测试用例分别设计三个不同的场景,三个场景的并发人数分别为30、50和200。测试每个用例中的每个场景,从而计算出网站在多少用户并发时,仍能保持网站正常功能,且在用户可接受的时间范围内响应。
三、负载压力测试的过程与结果分析
1.自动化测试工具
负载压力测试是通过自动化测试工具LoadRunner8.0 实施。[5] LoadRunner8.0是一种预测系统行为和性能的负载测试工具,通过模拟成千上万名用户和实施时性能监测来确认和查找问题,实施步骤如下。
首先录制脚本,根据负载压力测试用例生成录制三个脚本F1、F2、F3。
然后生成测试场景,打开脚本F1设置虚拟用户,点击Tools—>Create Controller Scenario,设置虚拟用户数,首先根据场景1设置虚拟用户数为30,点击运行。然后生成测试结果,点击保存。再根据脚本F1的场景二和场景三分别设置虚拟用户为50、100 ,再分别运行保存。脚本F2、F3同样操作。
最后分析测试结果,下面以脚本F2(即登录VIP下载案例库资料)的场景二的测试结果为例,分析生成的测试结果,如图1所示。
图1测试结果1
图1中,有四个曲线窗口,其中最简单、也是最有用的就是上面两个,点击各个窗口,可以对应地看到底部的数据窗口会显示响应数据。其中,左上角图片的曲线代表随时间变化的虚拟用户数,响应的数据是各个虚拟用户的执行情况,如图2所示。
图2测试结果2
从图2可以看到,总共有50个虚拟用户,20个执行成功,30个发生错误,由于我们采用缺省执行方式,意味着所有用户一起同步运行,没有分组和时间的先后关系,所以其他数据没有意义,可以不看。
图3测试结果3
右上方的曲线代表响应时间,响应的数据如图3所示。在测试用例F2中,用户首先输入用户名和密码,然后点击登录,最后点击案例库,出现文件下载框,等文件全部下载完成。由于录制的脚本很简单,所以只需要看Action—Transaction一行数据即可,从数据中可以看到,这一系列的动作在当前压力测试场景下,最长执行时间是26.800秒,最短时间是19.394秒,平均是22.875秒,标准差是2.198秒,最后一次响应时间是23.926秒。
再结合脚本F2场景一和场景二的测试结果分析,可得下载资料的并发用户数为20左右。
2.测试结果讨论
根据自动化测试工具LoadRunner8.0对三个测试用例F1、F2和F3的总共九个测试场景可得此次负载压力测试实施的实际结果,如表3所示。
表3负载压力测试实际结果
从表3可知,在保证课程网站大部分功能运行正常时,并发人数在20人左右,超过此限制网站性能将受到影响。
四、结束语
利用类似的方法,我们还对其他一些国家精品课程网站进行了类似的负载压力测试。经过测试,发现大多数国家精品课程网站均存在类似的问题。这一结果表明,多数精品课程网站离大众共享使用的要求还有较大距离。如果要让这些精品课程充分发挥作用,在课程网站的软、硬件环境等方面还有一些工作要加强。
参考文献:
[1]中国教育部国家精品课程总网.2007 年国家精品课程评审指标[EB].http://www.jpkcnet.com/new/ biaoge-biaozhunxiazai/ 国家精品课程评审指标(本科).doc.
[2]王佑镁.国家精品课程网上资源可及性评估研究[J].高等工程教育研究,2007(3):118-132.
[3]黄宝玉,项国雄.国家精品课程建设现状分析及思考[J].中国高教研究,2007(9):72-76.
[4]柳纯录,黄子河,陈渌萍.软件评测师教程[M].第三版.北京:清华大学出版社,2006:223-224.
[5]杨萍,李杰.利用LoadRunner实现Web负载测试的自动化[J].计算机技术与发展.2007(1):242-244.
[6]赫建营,晏海华,刘超.一种有效的Web性能测试方法及其应用[J].计算机应用研究,2007(1):275-277.
[7]杨志,关昕,马力.Web系统性能测试实施过程[J].计算机工程与设计,2007(10):2284-2286.