论文部分内容阅读
摘要:本文简单介绍了无锡职业技术学院校友录系统的作用及其特点。按照常见交流网站测试的流程,详细叙述了校友录系统的测试技术、方法和环境,根据测试计划编写并执行测试用例,汇总提交bug后对系统提出修正与完善的解决方案。
关键词:校友录;软件测试;测试计划;测试用例
2009年10月,无锡职业技术学院即将迎来50周年华诞。为了能让校友们有一个寄托情思、交流信息的场所,经学院领导立项批准,笔者所在院系自主开发了校友录系统。该系统自投入使用以来,基本满足了广大校友与母校及师生朋友之间的沟通联系。但由于开发过程中的逻辑体系能见性较差,难于测量和控制,系统本身还存在着需要修正与完善的地方。软件测试是保证软件质量和可靠性的重要手段,下面我们就来深入地分析与研究软件测试技术在该系统中的应用。
一、校友录系统的结构与功能
1.系统结构
校友录系统是一个B/S体系结构的信息系统,在数据库服务器上安装校友录系统的数据库,在Web应用服务器上使用IIS进行网站发布,在用户浏览器端由于已预先安装了Web浏览器(如IE、Firefox等),因此用户只需输入相应的网址信息即可使用本系统。其结构如图1所示。
2.系统功能
根据本院校友工作的管理模式、要求和方法,系统分为普通用户层和管理员用户层。
(1)普通用户层功能
①信息浏览:用户可以查看浏览的信息,如杰出校友、校友企业、各地校友分会等;②信息查询:按入学年份或毕业年份查询出相应班级后再进行校友信息的查询,也可直接输入校友姓名进行信息的查询;③校友注册:注册后校友可以登陆校友录系统进行相关操作 ,如进入“用户管理”修改本人注册的信息、查询本班同学的详细信息、加入校友会等;④信息发布:注册后的校友可以发表相关主题的文章寄语母校。
(2)管理员用户层功能
①用户管理:对已注册用户的用户信息进行维护管理;②新闻管理:对新闻进行添加、修改、删除和发布工作;③教师授权管理:对需要开放权限的教师进行授权管理,授权教师可以查询到学生的基本信息和详细注册信息,未授权教师只能查询学生的基本信息;④校友会审核管理:对提交进入校友会申请的用户进行资格审核,通过后将其正式编入各地区校友会中。
二、软件测试技术的选用
软件的测试就是要在计算机上以各种可能的数据和操作条件对程序进行实验,找出存在的问题并加以修改使之完全符合设计要求的过程。在动态测试中,通常使用白盒测试和黑盒测试,从不同的角度设计测试用例,查找软件代码中的错误。两者各有优缺点,试论如下:
1.白盒测试
白盒测试根据被测程序的逻辑结构设计测试用例,使用语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖、路径覆盖等覆盖标准,力求提高测试覆盖率。
2.黑盒测试
黑盒测试不考虑程序的内部结构与特性,只根据程序功能或程序的外部特性设计测试用例。常用于软件确认测试。
在对白盒测试和黑盒测试的优点、缺点、性质等进行比较后(如表1所示),我们决定主要采用黑盒测试的方法。
三、校友录系统软件测试
1.测试流程
根据校友录系统本身的项目特点,我们制定了如下的测试策略:
(1)制定测试需求。通过确定要测试的内容和各自的优先级、重要性使测试设计工作更有目的性,在需求的指导下设计出更多更有效的用例。
(2)测试重点偏向发现系统隐藏的缺陷。以80/20原理为指导,尽量做到在有限的时间里发现尽可能多的缺陷(尤其是严重缺陷)。
(3)测试计划与测试需求制定、测试用例设计同步进行。
(4)先设计再完善。由于测试用例的编写是一个不断完善的过程,在有限的时间里,需要先设计出一整套测试用例,再逐步完善。
系统的测试流程如图2所示。
2.测试类型
在测试过程中,我们采用多种类型的测试,比较全面的对系统进行测试。
3.测试工具
(1)数据验证工具
本次测试使用的数据检索工具为:Aqua Data Studio 4.7,链接后台数据库进行检索,来验证数据的正确性。
(2)压力测试工具
由于本网站是面向网络上的所有用户开发,避免不了会遇到同时在线人数过多而产生的系统压力,所以要进行系统的压力测试,LoadRunner是压力测试用自动化测试工具。
(3)其他工具
在测试文档、和测试用例编写的过程中均用到了Office软件中的Word、Excel等,使用红蜻蜓截图工具对系统进行截图。
4.测试用例设计
(1)测试用例的设计原则
测试用例设计的难点就是如何用较少的测试用例达到较高的覆盖度。校友录系统的测试用例更趋于针对系统功能和转换规则所设计的测试方案。其对系统的每个特定功能点或操作的测试构成了一个个测试用例,能非常有效地检验出系统可能存在的错误或缺陷。等价类划分、边值分析、错误推测、因果图等方法是几种常用的方法。下面重点介绍前两种方法。
①等价类划分
根据程序的I/O特性,将程序的定义域划分为有限个等价区段,即“等价类”。从等价类中选择出的用例具有“代表性”。对于程序的规格说明是合理的、有意义的输入数据构成的集合为有效等价类,否则为无效等价类。应按照输入条件划分为有效等价类和无效等价类。例如,校友录系统在进行校友注册时,要求注册名首字母必须是字母。我们可以将此划分为一个有效等价类:第一个字符是字母;同时还可以划分一个无效等价类:第一个字符不是字母。在选择测试用例时,可以为每个等价类编号,使一个测试用例尽可能覆盖多个有效等价类。特别要注意的是,一个测试用例只能覆盖一个无效等价类。
②边值分析
选择等价类的边缘值作为测试用例,让每个等价类的边界都得到测试,选择测试用例既考虑输入亦考虑输出。例如,校友录系统可以输入入学年份(1960年后)和毕业年份(2009年前)进行校友查询。可以选择如下的测试用例:入学年份为1959、1960、1961,毕业年份为2008、2009、2010等。
(2)测试用例执行
测试执行严格按照用例上的描述,测试结果与预期结果一致填写“OK”,不一致填写“NG”,并用红色标记,在右侧列注明bug号。如图3。
四、测试总结与改进建议
经过对校友录系统的全面测试,发现系统存在的缺陷主要可以分为三类。
(1)校验类缺陷
输入框校验型的bug是最容易被开发者所忽视的一部分bug,然而输入框校验的完善却是关系到检索功能实现的关键步骤。校友录系统中凡是涉及到数据框的部分都只做了简单的非空验证,而长度校验、非法字符输入等校验均未实现。建议将校验添加,并将提示的信息分类,以使用户更加方便地使用此功能。
(2)界面显示类缺陷
在校友总录模块中,开发做成的效果是:点击图片链接,点击进入各个分院的校友录。但是部分图片没有明确的传达出分院的信息,建议将链接更换为提示信息更加明确的图片,以便提升用户体验。
(3)程序运行类缺陷
程序运行类缺陷包括非空验证、页面刷新等功能的缺陷。例如当用户输入校友检索条件后,跳转到另一页面,点击返回之后回到首页,但是Session变量值并没有清空,用户输入的检索信息仍然存在。建议使用自动刷新形式,方便用户使用,提高系统效率。
参考文献
[1]周鸣.针对B/S系统的软件测试分析[J].电脑知识与技术2009,5: 626-628,630
[2]徐巍,贺庚英,李辉,宋子凯.教务管理系统的软件测试与可靠性分析[J].湖北工学院学报2002,12: 43-45
[3]朱贺.黑盒软件测试的用例设计技术[J].辽宁科技学院学报 2008,4: 29-30
关键词:校友录;软件测试;测试计划;测试用例
2009年10月,无锡职业技术学院即将迎来50周年华诞。为了能让校友们有一个寄托情思、交流信息的场所,经学院领导立项批准,笔者所在院系自主开发了校友录系统。该系统自投入使用以来,基本满足了广大校友与母校及师生朋友之间的沟通联系。但由于开发过程中的逻辑体系能见性较差,难于测量和控制,系统本身还存在着需要修正与完善的地方。软件测试是保证软件质量和可靠性的重要手段,下面我们就来深入地分析与研究软件测试技术在该系统中的应用。
一、校友录系统的结构与功能
1.系统结构
校友录系统是一个B/S体系结构的信息系统,在数据库服务器上安装校友录系统的数据库,在Web应用服务器上使用IIS进行网站发布,在用户浏览器端由于已预先安装了Web浏览器(如IE、Firefox等),因此用户只需输入相应的网址信息即可使用本系统。其结构如图1所示。
2.系统功能
根据本院校友工作的管理模式、要求和方法,系统分为普通用户层和管理员用户层。
(1)普通用户层功能
①信息浏览:用户可以查看浏览的信息,如杰出校友、校友企业、各地校友分会等;②信息查询:按入学年份或毕业年份查询出相应班级后再进行校友信息的查询,也可直接输入校友姓名进行信息的查询;③校友注册:注册后校友可以登陆校友录系统进行相关操作 ,如进入“用户管理”修改本人注册的信息、查询本班同学的详细信息、加入校友会等;④信息发布:注册后的校友可以发表相关主题的文章寄语母校。
(2)管理员用户层功能
①用户管理:对已注册用户的用户信息进行维护管理;②新闻管理:对新闻进行添加、修改、删除和发布工作;③教师授权管理:对需要开放权限的教师进行授权管理,授权教师可以查询到学生的基本信息和详细注册信息,未授权教师只能查询学生的基本信息;④校友会审核管理:对提交进入校友会申请的用户进行资格审核,通过后将其正式编入各地区校友会中。
二、软件测试技术的选用
软件的测试就是要在计算机上以各种可能的数据和操作条件对程序进行实验,找出存在的问题并加以修改使之完全符合设计要求的过程。在动态测试中,通常使用白盒测试和黑盒测试,从不同的角度设计测试用例,查找软件代码中的错误。两者各有优缺点,试论如下:
1.白盒测试
白盒测试根据被测程序的逻辑结构设计测试用例,使用语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖、路径覆盖等覆盖标准,力求提高测试覆盖率。
2.黑盒测试
黑盒测试不考虑程序的内部结构与特性,只根据程序功能或程序的外部特性设计测试用例。常用于软件确认测试。
在对白盒测试和黑盒测试的优点、缺点、性质等进行比较后(如表1所示),我们决定主要采用黑盒测试的方法。
三、校友录系统软件测试
1.测试流程
根据校友录系统本身的项目特点,我们制定了如下的测试策略:
(1)制定测试需求。通过确定要测试的内容和各自的优先级、重要性使测试设计工作更有目的性,在需求的指导下设计出更多更有效的用例。
(2)测试重点偏向发现系统隐藏的缺陷。以80/20原理为指导,尽量做到在有限的时间里发现尽可能多的缺陷(尤其是严重缺陷)。
(3)测试计划与测试需求制定、测试用例设计同步进行。
(4)先设计再完善。由于测试用例的编写是一个不断完善的过程,在有限的时间里,需要先设计出一整套测试用例,再逐步完善。
系统的测试流程如图2所示。
2.测试类型
在测试过程中,我们采用多种类型的测试,比较全面的对系统进行测试。
3.测试工具
(1)数据验证工具
本次测试使用的数据检索工具为:Aqua Data Studio 4.7,链接后台数据库进行检索,来验证数据的正确性。
(2)压力测试工具
由于本网站是面向网络上的所有用户开发,避免不了会遇到同时在线人数过多而产生的系统压力,所以要进行系统的压力测试,LoadRunner是压力测试用自动化测试工具。
(3)其他工具
在测试文档、和测试用例编写的过程中均用到了Office软件中的Word、Excel等,使用红蜻蜓截图工具对系统进行截图。
4.测试用例设计
(1)测试用例的设计原则
测试用例设计的难点就是如何用较少的测试用例达到较高的覆盖度。校友录系统的测试用例更趋于针对系统功能和转换规则所设计的测试方案。其对系统的每个特定功能点或操作的测试构成了一个个测试用例,能非常有效地检验出系统可能存在的错误或缺陷。等价类划分、边值分析、错误推测、因果图等方法是几种常用的方法。下面重点介绍前两种方法。
①等价类划分
根据程序的I/O特性,将程序的定义域划分为有限个等价区段,即“等价类”。从等价类中选择出的用例具有“代表性”。对于程序的规格说明是合理的、有意义的输入数据构成的集合为有效等价类,否则为无效等价类。应按照输入条件划分为有效等价类和无效等价类。例如,校友录系统在进行校友注册时,要求注册名首字母必须是字母。我们可以将此划分为一个有效等价类:第一个字符是字母;同时还可以划分一个无效等价类:第一个字符不是字母。在选择测试用例时,可以为每个等价类编号,使一个测试用例尽可能覆盖多个有效等价类。特别要注意的是,一个测试用例只能覆盖一个无效等价类。
②边值分析
选择等价类的边缘值作为测试用例,让每个等价类的边界都得到测试,选择测试用例既考虑输入亦考虑输出。例如,校友录系统可以输入入学年份(1960年后)和毕业年份(2009年前)进行校友查询。可以选择如下的测试用例:入学年份为1959、1960、1961,毕业年份为2008、2009、2010等。
(2)测试用例执行
测试执行严格按照用例上的描述,测试结果与预期结果一致填写“OK”,不一致填写“NG”,并用红色标记,在右侧列注明bug号。如图3。
四、测试总结与改进建议
经过对校友录系统的全面测试,发现系统存在的缺陷主要可以分为三类。
(1)校验类缺陷
输入框校验型的bug是最容易被开发者所忽视的一部分bug,然而输入框校验的完善却是关系到检索功能实现的关键步骤。校友录系统中凡是涉及到数据框的部分都只做了简单的非空验证,而长度校验、非法字符输入等校验均未实现。建议将校验添加,并将提示的信息分类,以使用户更加方便地使用此功能。
(2)界面显示类缺陷
在校友总录模块中,开发做成的效果是:点击图片链接,点击进入各个分院的校友录。但是部分图片没有明确的传达出分院的信息,建议将链接更换为提示信息更加明确的图片,以便提升用户体验。
(3)程序运行类缺陷
程序运行类缺陷包括非空验证、页面刷新等功能的缺陷。例如当用户输入校友检索条件后,跳转到另一页面,点击返回之后回到首页,但是Session变量值并没有清空,用户输入的检索信息仍然存在。建议使用自动刷新形式,方便用户使用,提高系统效率。
参考文献
[1]周鸣.针对B/S系统的软件测试分析[J].电脑知识与技术2009,5: 626-628,630
[2]徐巍,贺庚英,李辉,宋子凯.教务管理系统的软件测试与可靠性分析[J].湖北工学院学报2002,12: 43-45
[3]朱贺.黑盒软件测试的用例设计技术[J].辽宁科技学院学报 2008,4: 29-30