1、软件测试实训报告河南理工大学 软件学院软 件 测 试实训报告专业班级 计软1503 学 号 4115 0129 学生姓名 张向伊 1 月 4 目录一、引言3二、软件测试技术基础31.软件测试技术32.软件测试终止标准4三、测试对象51.系统功能52.开发环境5四、测试计划51.测试需求51.1功能测试51.2性能测试61.3兼容性测试62.测试资源62.1测试人员62.2测试环境62.3测试工具6五、测试方案61.功能测试62性能测试7六、测试用例设计及其缺陷报告81.登陆模块的测试81.1测试用例设计81.2录制的测试脚本121.3执行测试121.4测试结果132相册模块测试132.1测试用
2、例设计132.2执行测试152.3测试结果153.系统性能测试163.1测试用例设计173.2测试环境193.3测试执行193.4测试结果分析20七、测试总结报告2121一、引言随着计算机应用领域的不断扩大,所处理的问题也越来越复杂。最初,人们用处理简单问题的一些方法去处理日益复杂的问题。因此,软件危机出现了。而软件产品质量则成为开发者和用户最关心的问题。软件测试能够有效地帮助开发者及时发现程序中的错误或缺陷,及时改正,避免软件产品由于存在某种程度的缺陷造成不必要的损失以至影响产品的最终质量。为了给用户提供一个高质量的可靠性强的软件产品,软件测试人员必须从纵向和横向两个方面对系统的各个模块进行
3、深入的分析测试,以便能够准确及时地发现程序中存在的缺陷和错误。软件测试是一项非常复杂的系统工程,从不同的角考虑能够有不同的划分方法。按是否执行程序分为静态测试和动态测试。按程序开发阶段分为单元测试、集成测试、系统测试、验收测试、回归测试、ALPHA测试和BETA测试。按测试方法分为黑盒测试、白盒测试和灰盒测。按测试目的分为功能测试、性能测试、压力测试、安全性测试、兼容性测试等等。因此,为了更好的明确测试的过程,了解测试究竟要完成哪些工作,我们首先要掌握这些软件测试方法和技术。在本次综合实践中,我们小组选择了评分管理系统作为测试对象。目的是经过对评分管理系统的测试来发现程序中存在的缺陷以及修正错
4、误的建议,来提高程序的应用率,为用户提供一个方便、安全、实用的产品。同时把所学知识与实际相结合起来应用,来提高软件测试本事,为以后的软件测试工作积累经验。二、软件测试技术基础1.软件测试技术软件测试技术多种多样,我们能够结合实际环境选择与使用,在此介绍两种测试技术:黑盒测试和白盒测试。黑盒测试:已知产品的功能设计规格,能够进行测试证明每个实现了的功能是否符合要求。黑盒测试意味着测试要在软件的接口处进行。这种方法是把测试对象看作一个黑盒子,测试人员完全不考虑程序内部的逻辑结构和内部特性,只依据程序的需求规格说明书,检查程序的功能是否符合它的功能说明。因此黑盒测试又叫功能测试或数据驱动测试。黑盒测
5、试主要是为了发现以下几类错误:(1)是否有不正确或遗漏的功能?(2)在接口上,输入是否能正确的接受?能否输出正确的结果?(3)是否有数据结构错误或外部信息(例如数据文件)访问错误?(4)性能上是否能够满足要求?(5)是否有初始化或终止性错误?白盒测试:已知产品的内部工作过程,能够经过测试证明每种内部操作是否符合设计规格要求,所有内部成分是否以经过检查。白盒测试是对软件的过程性细节做细致的检查。这种方法是把测试对象看作一个打开的盒子,它允许测试人员利用程序内部的逻辑结构及有关信息,设计或选择测试用例,对程序所有逻辑路径进行测试。经过在不同点检查程序状态,确定实际状态是否与预期的状态一致。因此白盒
6、测试又称为结构测试或逻辑驱动测试。白盒测试主要是想对程序模块进行如下检查:(1)对程序模块的所有独立的执行路径至少测试一遍。(2)对所有的逻辑判定,取“真”与取“假”的两种情况都能至少测一遍。(3)在循环的边界和运行的界限内执行循环体。(4)测试内部数据结构的有效性,等等。只对软件进行外部测试的话会有很多内部程序路径没有被测试到;不能直接针对特定的程序段进行深入测试因此可能会隐藏很多的问题。而与此类测试技术能够互补的正是白盒测试。因此黑盒测试和白盒测试应该结合起来使用。这样才能更好的保证程序的安全性。2.软件测试终止标准软件测试是以最少的时间和人力找出软件中潜在的各种错误和缺陷为目的的。软件测
7、试对于不同的立场,存在着不同的意义。从用户的角度出发,普遍希望经过软件测试暴露软件中隐藏的错误和缺陷,以考虑是否能够接受该产品。而从软件开发者的角度出发,则希望测试系统成为表明软件产品中不存在错误的过程,验证该软件已正确地实现了用户的要求,确立人们对软件质量的信心。三、测试对象1.系统功能本次实验要进行测试的是一个功能强大的QQ空间系统。系统包括以下功能模块:(1)日志模块:撰写和发表日志。(2)撰写说说模块:发表说说。(3)相册管理模块:支持多相册功能,可将相册分类收藏,能够上传照片,创立相册,同时能够上传视频和制作个性相册等功能。(4)音乐盒模块:能够收藏音乐,能够管理我的音乐盒里的音乐等
8、。(5)个人档管理模块:修改自己的个人信息。(6)留言板模块:查看留言和对留言进行回复。(7)用户模板:提供用户制定功能,打造个性,设置自己喜欢的风格。2.开发环境本qq空间系统开发的软件环境如下:(1)操作系统:windows 7 (2)Web服务器:Apach(3)数据库:MYSQL (4)开发语言和工具:PHP+Zend+PHPWIND (5)浏览器:IE四、测试计划1.测试需求此系统属于一般类型的应用软件,各功能正常使用,系统响应比较快,运行稳健,能满足多人正常使用。此系统用户能够建立个人主页(发表日志,发表说说,相册管理,音乐盒管理,个人档管理等)。此次测试的目的就是检查核心模块功能
9、是否正常,验证系统性能是否满足应用需求。这次测试的具体内容如下: 1.1功能测试在功能测试中,重点测试的是登录模块、相册管理模块。1.2性能测试在性能测试中,需要测试不同负载下系统的表现,并获得系统的响应能力、负载能力、吞吐量和资源利用率等性能指标。1.3兼容性测试IE浏览器,360浏览器,搜狗浏览器,火狐浏览器,傲游浏览器都能够兼容运行。2.测试资源2.1测试人员2.2测试环境(1)硬件设备:1台PC机(2)软件环境。操作系统:windows 7 WEB服务器:IE浏览器(3)网络环境:学校内部的以太网,与服务器的连接速率为2M10M。2.3测试工具五、测试方案1.功能测试功能测试的目的是保
10、证系统的功能正常,例如数据输入是否正确。对交互的输出或结果进行分析,以核实应用程序的功能。重点测试的是登录模块、相册管理模块,测试策略见下表:2性能测试性能测试主要是对响应时间、事务处理速率和其它与时间有关的需求进行评测和核实监测系统性能是否都以满足。在本次的性能测试中,主要是进行并发性能测试。本次测试的是登录模块、发表日志模块、个人档管理模块、相册管理模块测试策略见下表:六、测试用例设计及其缺陷报告1.登陆模块的测试1.1测试用例设计根据登录操作的特点,采用边界值方法和等价类设计测试用例。登录个人主页的测试用例如下所示:登录QQ空间测试用例项目名称登录QQ空间主页测试项目编号开发人员模块名称
11、登录QQ空间个人主页用例作者过慈强参考信息需求规格说明书、设计说明书测试类型功能测试设计日期 -4-27测试人员过慈强测试方法手工测试和自动化测试相结合测试日期 -4-27测试对象测试用户能否正常登录前置条件存在正确的用户名和密码;登录页面正常装载;(已注册的一个QQ帐号为:,密码为:cptbtptp5281)用例编号操作输入数据预期结果实际结果测试状态(P/F)01输入正确的帐号、正确的密码,点击“登录”帐号:密码:cptbtptp5281正常登录正常登录,转入对应的系统页面P02输入正确的帐号、正确的密码,按ENTER键帐号:密码:cptbtptp5281正常登录正常登录,转入对应的系统页
12、面P03输入错误的帐号或者没有注册的帐号,正确的密码,点击“登录”(错误的帐号和密码能够登录的概率极小,不作测试)帐号:密码:cptbtptp5281不能正常登录,显示“帐号不存在或者错误”的提示不能正常登录,提示“您输入的帐号或者密码不正确,请重新输入。”F04首次输入正确的帐号、错误的密码,点击“登录”帐号:密码:123456不能正常登录,显示“密码错误”不能正常登录,提示“您输入的帐号或者密码不正确,请重新输入。”F05第二次输入正确的帐号、错误的密码,点击“登录”帐号:密码:123不能正常登录,显示“密码错误”不能正常登录,提示“您输入的帐号或者密码不正确,请重新输入。”F06第三次输
13、入正确的帐号、错误的密码,点击“登录”帐号:密码:1不能正常登录,显示“密码错误”不能正常登录,提示“您输入的帐号或者密码不正确,请重新输入。”并在登录界面上出现验证码F07第四次输入正确的帐号、错误的密码和正确的验证码,点击“登录”帐号:密码:12验证码:图片中的字母不能正常登录,显示“密码错误”不能正常登录,提示“您输入的帐号或者密码不正确,请重新输入。”F08输入正确的帐号、正确的密码和正确的验证码,点击“登录”帐号:密码:cptbtptp5281验证码:图片中的字母正常登录正常登录,转入对应的系统页面P09输入正确的帐号、正确的密码和错误的验证码,点击“登录”帐号:密码:cptbtpt
14、p5281验证码:输入的字母与图片中的字母不一致(字母个数相同)不能正常登录,显示“验证码错误”不能正常登录,提示“您输入的验证码不正确,请重新输入。”F10输入正确的帐号、正确的密码和错误的验证码,点击“登录”帐号:密码:cptbtptp5281验证码:输入的字母与图片中的字母不一致(个数少)不能正常登录,显示“验证码错误”不能正常登录,提示“请输入完整的验证码!”F11输入正确的帐号、密码为空,点击“登录”(此时没有验证码)帐号:密码:不能正常登录,显示“密码不能为空”不能正常登录,提示“您还没有输入密码!”F12帐号、密码都为空,点击“登录”帐号:密码:不能正常登录,显示“帐号为空”不能
15、正常登录,提示“您还没有输入帐号!”F13帐号为空,只输入密码帐号:密码:cptbtptp5281不能正常登录,显示“帐号为空”不能正常登录,提示“您还没有输入帐号!”F14帐号正确,但其后有1至多个空格,密码正确帐号:+2空格密码:cptbtptp5281不能正常登录,显示“帐号错误”正常登录,转入对应的系统页面P15用户名和密码正确,但密码后加1个至多个空格帐号: 密码:cptbtptp5281+2空格不能正常登录,显示“密码错误”不能正常登录,提示“您输入的帐号或者密码不正确,请重新输入。”F16使用Tab键光标在帐号框内,按tab键2次光标可依次移动到密码输入框和页面上的图片Tab键功
16、能正常使用P17在文本输入框中按BackSpace键在帐号框输入:,光标在字符串末尾,按4次BackSpace键帐号本文框显示:51112BackSpace键能正常使用P18在文本输入框中使用左右箭头在帐号输入框中使用左右箭头光标必须能跟踪到相应位置左右箭头能正常使用P19在文本输入框中使用delete键在帐号输入框中使用delete键能正常删除Delete键能正常使用P20在文本输入框中点击鼠标在帐号输入框内单击鼠标光标必须能跟踪到相应位置正常P21在文本输入框中双击鼠标在帐号输入框内双击鼠标输入框中文本被选中输入框中文本被选中P22输入帐号,等待较长时间才输入密码帐号:等待五分钟输入密码密
17、码:cptbtptp5281正常登录正常登录,转入对应的系统页面P23输入帐号,马上切换到其它程序,过一段时间再切换回来帐号:切换到word程序,过一分钟在切换回来光标位置应停在原处光标位置应停在原处P1.2录制的测试脚本Browser(QQ空间-分享生活,留住感动).Page(QQ空间-分享生活,留住感动).WebElement(QQ密码).ClickBrowser(QQ空间-分享生活,留住感动).Page(QQ空间-分享生活,留住感动).WebEdit(p).ClickBrowser(QQ空间-分享生活,留住感动).Page(QQ空间-分享生活,留住感动).WebEdit(p).SetSe
18、cure 4fa2627e36575965be836fa6348cdfceeeaeb15Browser(QQ空间-分享生活,留住感动).Page(QQ空间-分享生活,留住感动).WebButton(登录).ClickBrowser(QQ空间-分享生活,留住感动).Page(绿叶 .).Link(退出).ClickBrowser(QQ空间-分享生活,留住感动).Dialog(Microsoft Internet Explorer).WinButton(确定).Click1.3执行测试 分别运行测试脚本,获得测试结果。脚本在测试过程中我无法进行参数化,咨询过老师后,发现是该系统自身的问题,因此功能
19、测试中没有用到参数化。由于用户名和密码有些是不正确的,因此不能正常登录。对于不能正常登录的情况,系统都将做出相应回应。经过自动化测试,不难看出自动化测试的好处:提高执行效率,并可避免人工进行繁琐数据输入,而且能够避免人为的一些错误。除了经过自动化测试脚本进行测试除外,我们还补充了一些必要的手工测试。手动测试就是直接按照测试用例的要求,输入测试数据,观察运行的结果与预期结果的异同,以判断测试是否经过。1.4测试结果 经过手动测试和自动化测试,未发现登陆界面有系统的缺陷2相册模块测试 此模块主要测试上传照片和创立相册两个子模块。采用场景测试法进行测试。2.1测试用例设计使用场景法进行测试时必须首先
20、分析出北侧的对象及基本事务流和备选事务流。(1)上传照片模块开始是进入相册管理。上传照片包括6个基本步骤:1 点击“上传照片”2 点击“添加照片”3 选择照片4 选择图片专辑5 点击“上传照片”6 点击“完成”这五步依次正确操作便形成了基本事务流。在该模块中有两条备选事务流,分别是:1 备选流一:在基本流4中,添加相册。有两种情况:一是未创立相册,无相册可选,需要添加相册;二是已有相册,准备另外添加新相册。2 备选流二:在基本流5中,网络速度太慢,导致传输错误。从基本流开始,将基本流和备选流结合起来,能够确定如下用例场景:场景1:基本流场景2:基本流,备选流一场景3:基本流,备选流二由场景生成
21、测试用例是经过确定某个特定条件来完成的,这个特定条件将导致特定用例场景的执行。根据上面的场景设计测试用例,如下表:上传照片测试用例项目名称上传照片测试项目编号开发人员模块名称上传照片模块测试用例作者参考信息需求规格说明书、概要设计说明书测试类型功能测试设计日期测试人员测试方法手工(黑盒测试)测试日期测试对象上传照片功能前置条件用户进入相册管理页面,相册中已有“帅哥”的相册。用例编号场景输入数据预期结果实际结果相册监测网速01场景一:上传照片成功选择“帅哥”相册网速很快页面提示:上传完成,是否继续页面提示:上传完成,是否继续02场景二:添加相册(测试未创立相册情况)无相册可选网速很快页面提示:未
22、创立相册,转入创立相册页面页面提示:未创立相册,转入创立相册页面03场景二:添加相册(已有相册,添加新相册)点击“选择相册”网络很快转入选择的相册页面转入选择的相册页面04场景三:网络传输速度慢选择“帅哥”相册网络速度01kb页面提示:网速慢,请稍后重传页面提示:网速慢,请重传(注:白盒测试:是经过程序的源代码进行测试而不使用用户界面。这种类型的测试需要从代码句法发现内部代码在算法,溢出,路径,条件等等中的缺点或者错误,进而加以修正。 黑盒测试:是经过使用整个软件或某种软件功能来严格地测试, 而并没有经过检查程序的源代码或者很清楚地了解该软件的源代码程序具体是怎样设计的。测试人员经过输入她们的
23、数据然后看输出的结果从而了解软件怎样工作。在测试时,把程序看作一个不能打开的黑盆子,在完全不考虑程序内部结构和内部特性的情况下,测试者在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收和正确的输出)(2) 创立相册模块开始是进入相册管理。创立相册模块包括7个基本步骤:1 点击“创立相册”2 填写相册名称3 填写相册描述4 选择分类5 选择空间权限6 选择朋友们的权限7 点击确定这七步依次正确操作便形成了基本事务流。在该模块中有一条备选事务流,其是:1 备选流一:在基本流2中,相册名称为空。由场景生成测试用例是经过确定某个特定条件来完成的,这个特定条件
24、将导致特定用例场景的执行。根据上面的场景设计测试用例,如下表:创立相册测试用例项目名称创立相册测试项目编号开发人员模块名称创立相册模块用例作者参考信息需求规格说明书、概要设计说明书测试类型功能测试设计日期测试人员测试方法手工(黑盒测试)测试日期测试对象创立相册功能前置条件用户进入相册管理页面,相册中已有“帅哥”的相册。用例编号场景输入数据预期结果实际结果相册名称 01场景一:创立相册成功 填写相册名称“美好” 页面提示:创立完成,是否传照片页面提示:创立完成,是否传照片02场景二:创立相册不成功未填写相册名称 页面提示:请填写相册名称页面提示:请填写相册名称2.2执行测试该模块采用手动方式执行
25、测试。根据各个测试用例的说明,一次执行每个测试用例,得出测试结果。2.3测试结果执行每个测试用例之后,未发现缺陷。上传照片功能和创立相册功能正常。3.系统性能测试性能测试就是模拟大量用户对软件系统的各种操作,获取系统和应用的性能指标,分析软件是否满足用户的需求。性能需求的特点决定了我们不可能完全采用传统的手工方式完成,必须借助于自动化测试工具来实现。自动化测试工具具有以下特点和优势:(1)经过使用虚拟用户代替实际用户来减少测试人员数量上的要求。虚拟用户模拟实际用户行为,运行实际的应用程序。(2)一台计算机上能够运行多个虚拟用户,因此减少了硬件设备的需求。(3)能够是测试人员从一个单一的控制点简
26、单有效地控制所有虚拟用户。(4)在测试过程中会自动记录应用程序的性能。测试人员能够从众多图表和报告中进行选择以查看性能数据。本系统采用HP-Mercury公司的LoadRunner性能测试工具进行性能测试。LoadRunner的测试流程如下:第一步制定测试计划创立虚拟用户脚本创立场景运行测试监视场景分析测试结果第二步第三步第四步第五步第六步1) 制定测试计划在任何类型的测试中,测试计划都是必要的步骤。测试计划是进行成功的负载测试的关键。在任何类型的测试的第一步都是制定比较详细的测试计划。测试计划中要重点分析系统的性能需求,并确定性能测试内容。2) 开发测试脚本LoadRunner使用虚拟用户的
27、活动模拟真实用户来操作Web应用程序,而虚拟用户的活动就包含在测试脚本中,因此说测试脚本对于测试来说是非常重要的。开发测试脚本要使用VuGen组件。测试脚本要完成的内容:(1)创立每一个虚拟用户的活动。(2)定义事务。(3)设定集合点。(4)插入检查点。3) 创立场景场景描述在测试活动中发生的各种事件。一个场景包括一个运行虚拟用户活动的压力机器(Load Generator)列表,一个测试脚本的列表以及大量的虚拟用户和虚拟用户组。我们使用LoadRunner中的Controller来创立场景。在创立测试场景之前需要设计出合理的测试场景,以便更真实地模拟用户使用软件系统的情况。4) 运行测试一切
28、配置妥当即可开始运行测试。5) 监视场景在运行测试的过程中,需要监视各个服务器的运行情况(数据库服务器、Web服务器等)和客户端的情况,获取各项性能指标。件事各项性能指标可经过添加性能计数器来实现。6) 分析测试结果我们需要分析大量的图表,生成各种不同的报告,最后得出结论,并对系统性能作出评价。下面按照性能测试的流程详细介绍QQ空间的性能测试过程。3.1测试用例设计登录模块测试用例用例名称登录QQ空间测试用例功能系统支持多个用户并发登录目的测试多用户登录时系统的处理能力方法模拟多个用户在不同客户端登录,然后并发进入系统。采用LoadRunner录制登录过程(此处由于QQ系统本身不支持参数化模拟
29、不同用户登录,因此没使用参数化)并发用户数与事务执行情况并发用户数事务平均响应时间事务最大响应时间事务成功率每秒点击率平均流量(字节/秒)1581.476141.6580.1445.2545.0131072.675163.3800.053.8743.931534.18649.8730.1304.6724.483上传照片测试用例用例名称上传照片测试用例功能系统支持多个用户并发上传照片目的测试多个用户同时上传照片时系统的处理能力方法模拟多个用户在不同客户端上传照片,然后并发操作。采用LoadRunner录制上传照片过程,然后利用其完成测试,要监视服务器的性能。并发用户数与事务执行情况并发用户数事务
30、平均响应时间事务最大响应时间事务成功率每秒点击率平均流量102587389696%34633.110202908408397%2.3254.421 创立相册测试用例用例名称创立相册测试用例功能系统支持多个用户并发创立相册目的测试多个用户同时创立相册时系统的处理能力方法模拟多个用户在不同客户端创立相册,然后并发操作。采用LoadRunner录制创立相册过程,然后利用其完成测试,要监视服务器的性能。并发用户数与事务执行情况并发用户数事务平均响应时间事务最大响应时间事务成功率每秒点击率平均流量10212132540.0134.3244.23220243745430.1082.4332.322组合业务
31、测试用例用例名称组合业务测试用例功能多个用户登陆空间,对相册、个人档、日志模块进行操作,保证系统性能。目的测试用户操作时系统的处理能力方法模拟多个用户登陆空间,对相册、个人档、日志模块进行操作,采用loadrunner录制过程,利用其完成测试。并发用户数与事务执行情况并发数事务平均响应时间事务最大响应时间事务成功率每秒点击率平均流量(字节/秒)556.52217.27145.96382.91925.11167.3140.0760.0760.0764.5254.51054.32113.56342.46979.32523.45265.5630.0720.0720.0722.1883.873.2测试
32、环境性能测试软/硬件配置设备硬件配置软件配置服务器联想ASUS-A42J(1台)CPU:3000MHz内存:2 GWindows7Apache 2.2负载产生设备(模拟客户端)PC机(4台)CUP:2.0G内存:2.0 GWindows7IE8.0LoadRunner 8.1Microsoft Office 负载产生设备(模拟客户端)PC机(4台)CPU:1.87G内存:2.0 GWindows7IE8.0LoadRunner 8.1Microsoft Office 3.3测试执行执行测试场景注:得出的测试数据见上面计划中表格3.4测试结果分析由上面测试结果数据可知,随着并发事件数量的增加,响
33、应时间明显越来越慢,超过一定数量时,系统将无法接受,可是由于试验了条件有限,暂时没有测出其限制具体数量。七、测试总结报告在本次综合实践过程中,经过对应用程序评分管理系统的测试,进一步认识到软件测试在软件开发过程中的重要性,巩固了软件测试技术和方法,能够更加熟练地将自动化测试与手工测试结合起来,在一定程度上提高了自己的软件测试水平。最主要的是,在整个系统的测试过程中,发现了系统存在的缺陷,实现了软件测试的真正意义。希望程序在修改缺陷之后能够给用户提供一个实用的高质量的软件产品。经过这次实践进一步的巩固了所学的知识,经过实践将课堂上的知识运用到实际测试当中,但在此过程中发现自己的许多不足,对所学内容掌握的不够牢固,对所学的知识理解不够透彻。同时意识到要做好一个软件测试人员光靠这点知识是远远不够的,自己要学的东西还很多,因此在今后一定要更深入的去学习。而且如果要做好软件测试这个工作必须要有耐心和发问的精神,这样才能发现程序中存在的不足。
©2010-2024 宁波自信网络信息技术有限公司 版权所有
客服电话:4008-655-100 投诉/维权电话:4009-655-100