资源描述
软件质量保证与测试
实验报告
班 级
1305211
学 号
130521103
姓 名
朱维
2016年5月4日
目录
第一次试验 LoadRunner性能测试工具 1
一、实验目的 1
二、实验内容 1
三、实验步骤 1
1.录制脚本 1
2.结果分析 5
第二次试验 单元测试 7
一、实验目的 7
二、实验内容 7
1.函数测试 7
2.编程测试 7
三、实验结果 7
3.1函数测试 7
3.2编程测试 9
四、结果分析与结论 12
第三次实验 自动化测试 12
一、实验目的 13
二、实验内容 13
三、实验结果 13
1.安装seleniumIDE插件 13
2.selenium2 环境配置 14
3. 录制脚本 15
4. 转换成java代码 19
5. 导入myeclipse中 21
四、 结果分析与结论 21
第四次实验 版本控制 22
一、 实验目的 23
二、 实验内容 23
三、 实验结果 23
1. VSS的安装及配置 23
2. VSS2005的汉化 25
3. 打开VSS2005服务器 26
4. 创建共享文件 27
5.更改服务器设置 29
6. VSS服务器端和VS2008的绑定 31
7. VSS客户端连接服务器端数据库 32
8. 管理项目 34
四、 结果分析与结论 39
第五次试验 反编译 39
一、 实验目的 40
二、 实验内容 40
三、 实验结果 40
1. 将要反编译的工程打成jar包 40
2.利用JD-GUI进行java代码的反编译 40
3. 利用Proguard工具进行上述java代码混淆 42
四、 结果分析与结论 49
第六次试验 Bug管理 49
一、 实验目的 50
二、 实验内容 50
三、实验结果 50
1.XAMPP软件的安装。 50
2.启动xampp 51
3.修改密码 56
4. 安装BugFree 59
5. BugFree邮箱配置 61
6.Bugfree界面 62
7.后台管理 63
8.BUG管理 65
四、 结果分析与结论 67
“130521103”+软件测试文档编制标准软件缺陷报告 67
1.软件缺陷报告标识符 70
1. 软件缺陷总结 71
2. 软件缺陷描述 71
3.1输入 71
3.2期望得到的结果 72
3.3实际结果 72
3.4异常情况 73
3.5日期和时间 73
3.6软件缺陷发生步骤 73
3.7测试环境 74
3.8再现测试 74
3.9测试人员 75
3.10 见证人 75
4.影响 75
从自己角度理解软件质量与保证 75
一、 软件质量的内涵 76
二、 软件质量保证 76
如何编写高质量代码 77
一、打好基础 78
二、 代码标准 78
三、 三思而后行 78
四、代码重构 78
五、代码审查 78
六、单元测试 79
整理第十章知识 测试用例的设计 79
1.黑盒测试的基本概念 80
2. 等价类划分 80
3.边界值分析法 80
4.因果图法 81
5. 功能图法 81
6. 黑盒测试方法的比较与选择 81
7.设计因果图测试用例 82
附录 84
单元测试源代码: 85
计算器源代码: 86
第一次试验 LoadRunner性能测试工具
一、实验目的
熟悉LoadRunner的使用并对网站进行测试。
二、实验内容
1..熟悉LoadRunner的操作界面
2.掌握LoadRunner进行测试的基本流程
3.测试一个网站
三、实验步骤
1.录制脚本
首先打开LoadRunner,其启动界面如下图所示:
图1 LoadRunner启动界面
点击Create/Edit Script,并选择Web(HTTP/HTML)后,点击Create进行创建:
图2 New Virtual User界面
此时进入了Virtual User Generator界面,点击File->New进行创建,如下图所示:
图3 创建脚本录制
点击红色小圆点开始录制脚本,如下图所示:
图4 Start Record按钮
弹出界面如下图所示:
图5 开始录制界面
本次录制使用网址www.baidu.com,在URL Address一栏中填入地址后,点击OK开始录制,片刻后弹出网页,脚本已经开始录制,如下图所示:
图6 录制的网页
在网页中任意操作,完成后点击小方块停止录制,LoadRunner会生成相应的脚本,如图:
图7 录制产生的脚本
在启动界面,点击Run Load Tests进行负载测试,选择刚才录制的脚本,如图所示:
图8 New Scenario界面
得到结果后,可以点击Analyze进行分析,也可以保存。
2.结果分析
使用Run Load Tests结果如图所示:
图9 Run Load Tests结果
使用Analyze Test Results分析得到的图形如下:
图10 Analyze Test Results结果
4.结果分析与结论
根据Analyze图形的结果可以得知,任一时刻的负载跟当时网页点击事件、网络传输等有关系。当网页处于静止状态时,几乎不占用CPU,而当点击事件增多或有大量网络传输发生时,CPU的压力会比较大。LoadRunner可以明确的列出其状况,包括鼠标点击事件的数量,网络传输字节量等等,为编程测试提供了方便的条件,是非常实用的测试工具。
第二次试验 单元测试
一、实验目的
理解单元测试的理论和目的,对程序进行单元测试。
二、实验内容
1.函数测试
编写适当的环境调用给与的Test.java文件中的函数,设计合适的测试用例测试函数中存在的问题,要求给出测试用例及对应的结果,找出问题后给出代码的修改建议。
2.编程测试
1.编写三角形类,类中包含三角形面积的计算方法。对其进行测试。扩展:编写抽象图形类,内含面积计算的虚方法,编写三角形,矩形,圆形等图形实体类继承抽象图形类,并重写面积计算方法,对其进行测试。
2.编写计算器,计算器界面形式可以为控制台程序,也可以为窗体应用程序,功能尽可能增加,对其中的运算方法进行抽象,继承及重载。对其进行测试。
三、实验结果
3.1函数测试
编写User类
图1 User类
涉及测试用例函数
图.2 Junit测试代码
测试结果
图.3 Junit测试结果
问题:
1. Test类的类名不能与Junit的@Test相同,所以将类Test改成Test0。
2. getUserAge()方法不完善,如果在控制台上输入英文,将报错。改成下面的代码。
图4 Junit测试代码
3.2编程测试
求解图形面积:Area抽象方法,SanJiaoXing.java,JuXing.java,Yuan.java分别继程Area方法,并实现getArea()方法。
图5 类结构
测试Junit代码:
图 6 Junit代码
测试结果:
图7 Junit测试结果
计算器:
图8 抽象类
实现类:
图9 实现类
测试类:
图10 测试类
结果:
图11 结果
四、结果分析与结论
实验通过Junit进行测试,Junit测试最大的特点与好处是,能很好得进行单元测试,一个功能一个功能的测试,可以很清楚很方便的找出错误代码,并进行改正。总之,Junit是一个很实用的java单元测试工具。
第三次实验 自动化测试
一、实验目的
1.学会安装seleniumIDE, firebug, firepath。
2.了解并掌握seleniumIDE的使用,利用seleniumIDE进行网页的自动化测试。
3.学会使用seleniumIDE进行脚本的录制并回放。
4.可以将脚本转换成java代码。
二、实验内容
1.使用selenium-ide录制脚本进行回放并导出相应的c#或java代码
2.使用selenium2技术参考示例代码与上网查找资料。设计出自己的测试用例(京东网登录测试,淘宝网支付测试等等),在相应环境中编写出相应的脚本代码。
三、实验结果
1.安装seleniumIDE插件
1)首先下载火狐浏览器,并且按住Ctrl+Shirt+A,调出组件扩展页面,在右上角的搜索框中输入firebug,下载并安装firebug。同样的方法安装插件firepath。重启浏览器。
图1 firebug和firepath安装成功
2)同样调出组件扩展页面,点击搜索框边上的设置图标,选择“从文件中安装附加组件”,选择selenium-ide-2.6.0.xpi文件,点击安装。重启浏览器即可。
图2 选择从文件中安装附加组件
图3 seleniumIDE插件安装成
2.selenium2 环境配置
在selenium-server-standalone-2.53.0.jar文件所在的文件夹中,按住Shift,鼠标右击选择“在命令窗口中打开”,调出cmd窗口,并输入java -jar selenium-server-standalone-2.53.0.jar;enter执行。
图4 配置seleniumIDE环境
3. 录制脚本
1)首先在浏览器中输入http://jwgl.cust.edu.cn/teachwebsl/login.aspx,进入到如图所示的界面,之后点击seleniumIDE图标,进行录制。
图5 seleniumIDE开始录制
2)在输入框中输入信息登录长春理工大学教务管理系统,点击登录。
图6 再输入框中输入信息登录
3) 登录进入系统之后,再点击退出,退出系统,返回到登录界面。
图7 点击退出
4)退出系统之后,停止录制。
图8 停止录制
5)录制完毕后,进行回放操作,以证明录制成功。
图9 回放脚本
6)回放脚本成功
图10 回放成功
这里需要注意的是:在运行脚本后,IDE表格的颜色发生了变化,运行前,脚本表格为白色,成功运行完毕后,表格为青色,其中还分为深青色和浅青色两种,
浅青色表示:动作成功,如:打开网页成功,点击按钮成功等等;
深青色表示:判断正确,如:“id=txtUserName”这段文字在页面中存在等等;
在运行时,firebox阻止弹出窗口,点击选项,选择允许弹出该窗口即可。
还有,出错时,表格可能会出现两种颜色,一种是浅粉红色,一种是深粉红色。浅粉红色表示判断,深粉表示出错。
7) 深粉错误演示,将表格中的id=Button1,改成id=Button11,如图所示。
图11 错误演示
8)再次回放时,报错。
图12 错误
结果为false,这种情况案例还是会继续执行下去,判断的失败不会影响案例的运行,深粉红色表示动作失败,如:没有找到按钮等(如上图),这种情况下案例会停止运行。
4. 转换成java代码
1)点击seleniumIDE的工具栏上的options,选择options
图12 选择options
2)在General选项卡中将Enable experimental tools打勾。
图13 勾选Enable experimental tools
3)再次回到options 选择format,转换成java/junit 4,如图所示。
图14 转换成java/junit 4
4)转换成功。
图15 转换成的java代码
5. 导入myeclipse中
在src下的test中建立测试类WebTest,并且将导出的测试脚本用记事本打开,粘贴到这个测试类中,并相应地修改包名和类名。
图16 导入myeclipse中
4、 结果分析与结论
通过本次试验,我学会了,seleniumIDE等插件在火狐浏览器的安装,更加了解该浏览器的强大功能。并利用seleniumIDE对网页操作进行脚本的录制生成脚本,和脚本的回放,脚本的java代码的转换。很有意思的一次实验过程。
第四次实验 版本控制
1、 实验目的
1. 了解版本控制
版本控制适用于团队合作,有效地防止每个成员各自为战,可以使成员之间更加默契,了解互相的模块进度;不仅如此,版本控制还可以使一个团队更容易地保持一致,例如代码风格上的一致,编写进度的一致,软件版本的一致。
2. 熟悉VSS2005,并使用VSS进行项目文件的管理
VSS 的全称为 Visual Source Safe 。作为 Microsoft Visual Studio 的一名成员,它主要任务就是负责项目文件的管理,几乎可以适用任何软件项目。管理软件开发中各个不同版本的源代码和文档,占用空间小并且方便各个版本代码和文档的获取,对开发小组中对源代码的访问进行有效的协调。
2、 实验内容
1. 安装VSS,配置VSS
2. 通过vss和VS进行项目管理
3、 实验结果
1. VSS的安装及配置
第一步:将Visual SourceSafe 2005 安装包解压缩开。
第二步:找到setup.exe 双击运行安装
图1 找到setup.exe
第三步:在弹出的界面中将复选框 I accept the terms of the License Agreement 选中,表示同意VSS的用户协议。
第四步:输入正确序列号,默认已经填写好了序列号,所以直接选择Next下一步。
第五步:这一步中需要选择安装特征,其中分为Default(默认)、Full(完整)和Custom(自定义)安装,一般我们选择Full默认安装就行了,在窗体右边选择安装路径,然后点Install(安装)。
图2 install
第六步:进入这一步只需要等待,它会自动运行安装,总共需要安装三部分,分别是:.NET Framework 2.0; Document Explorer 2005和 Visual SourceSafe 2005。
图3 正在安装
第七步:当看到下图,那么恭喜你,安装成功,选Finish,结束安装。
图4 正在安装
2. VSS2005的汉化
解压文件VSS.2005中文汉化补丁,双击安装,路径和VSS一致。
图5 找到VSS汉化包
图6 安装路径和VSS一致
3. 打开VSS2005服务器
在开始-》所有程序找到VSS安装路径-》Microsoft Visual SourceSafe Administration
图7 Microsoft Visual SourceSafe Administration
打开后如下图:
图8 安装路径和VSS一致
修改密码-》用户—》修改密码
图9 确认修改密码
4. 创建共享文件
在D盘中创建VSS-database文件,并设置为共享
图10 将文件夹设置成共享
图10 点击共享
确认文件夹是否共享成功:在网络中找到自己电脑(ZHUWEI-PC)点击进入存在刚刚新建的文件夹,即可说明共享成功。
图11 成功共享
5.更改服务器设置
图12 运行VSS服务器
用刚刚修改的密码进行登录
图13 登录
打开后选择服务器(s)->配置,勾上启用这台计算机的Visual SourceSafe Internet(E)
图14 勾选
关于开启IIS功能:控制面板-》程序-》程序和功能-》打开或关闭Windows功能-》Internet信息服务-》Web管理工具,关于IIS的选项全选上-》确定即可
此时VSS2005将自动在IIS中建立虚拟目录:SourceSafe。
下一步,完成后打开数据库(因为需要通过INTERNET远程访问VSS,所以打开数据库时不能使用类似于D:\VSS-database之类的目录名,而应是\\机器名(或IP)\VSS数据库所在的共享名,例如\\192.168.1.201\VSS-database)再进入选择菜单【服务】— 【设置】,再勾上“在当前数据库上启动SourceSafe Internet(D)”
图15-1 继续勾选
图15-2 继续勾选
6. VSS服务器端和VS2008的绑定
在打开的VS2008界面中进行操作,操作如下:
图16 绑定VSS服务器端
7. VSS客户端连接服务器端数据库
打开Visual SourceSafe-》文件,按照以下步骤完成:
图17 打开SourceSafe数据库
图18 点击添加
一直点击下一步,直到出现如图所示
图19 点击浏览
从“网上邻居”选中服务器上建立的数据库(VssDatabase)
图20 点击下一步
立即返回到客户端登录界面,进入客户端登录用户修改登录密码操作。这里省略修改密码操作。
VSS客户端设置工作目录,选择项目文件,在右键选择菜单【文件】下的【设置工作目录】,选择一个地方作为工作文件夹(这个文件夹的作用就是保存你从服务器PC获取的项目代码),我把把文件夹建在D:\VssWork 路径下:
8. 管理项目
本次实验对测试项目VSSTest进行项目管理。
VSSTest项目,用vs简单编写的一个登录窗口,和一些简单的登录判断语句。
用VS2008打开或创建你需要管理的项目,右键点击项目名称 –》 将源代码添加到源代码管理器
图21 选择解决方案添加到源代码管理
弹出VSS登录界面,输入您要登录的的账号密码。
图22 登录VSS
图22 直接点击确定
图23 点击‘是’
在VS输出窗口中输出一下语句,即完成配置。
图24 项目加入VSS中
VSS客户端下载文件 — 获取最新版本
图25-1 获取最新版本
选中上图【递归】复选框,然后再选中【生成树】复选框,点击确定。如下:
图25-2 获取最新版本
图25-3 获取最新版本
点击“全是(A)”即可,下载文件操作完毕。
至此VSS2005客户端设置操作已完毕。
用VS2008打开项目,选择您刚刚建立的工作目录(设置工作目录那部分创建的文件夹,D:\VssWork),并打开文件中的相应的程序。弹出VSS登录界面,再输入您要登录的的账号密码,即可打开项目,进行签入、签出操作。
注意:
1. 使用VS2008成功打开项目之后,先要对源代码进行签出操作,方可对项目进行编写、修改、新增等操作。
2. 对签出的项目进行了一些改动操作后一定要进行签入操作。
图26 在VssWork工作目录下打开VSSTest项目
对项目进行了修改,之后进行签入操作。
图27 签入操作
另外的合作成员,在自己项目名右击‘签出以进行编辑’。
图28 签出以进行编辑
通过以上的VSS安装配置以及各种操作,我们就可以团队合作,有效地防止每个成员各自为战,可以使成员之间更加默契,了解互相的模块进度。不仅如此,版本控制还可以使一个团队更容易地保持一致,例如代码风格上的一致,编写进度的一致,软件版本的一致。
4、 结果分析与结论
通过本次实验,我了解到团队合作所利用到的VSS项目管理软件,它是一种源代码控制系统,它提供了完善的版本和配置管理功能,以及安全保护和跟踪检查功能。VSS通过将有关项目文档(包括文本文件、图象文件、二进制文件、声音文件、视屏文件)存入数据库进行项目研发管理工作。用户可以根据需要随时快速有效地共享文件。文件一旦被添加进VSS,它的每次改动都会被记录下来,用户可以恢复文件的早期版本,项目组的其他成员也可以看到有关文档的最新版本,并对它们进行修改,VSS也同样会将新的改动记录下来。
团队协作,每个成员只能修改自己的模块,不能访问其他的模块,这有效地降低了误删文件,覆盖掉他人已经修改文件的出现频率。所以项目管理软件是非常必要的。
第五次试验 反编译
1、 实验目的
1. 了解反编译的概念以及原理
2. 了解防止反编译的方法
3. 熟悉反编译的操作
2、 实验内容
1.反编译
对某软件进行反编译(对象可以为第三方软件或自己编写的软件)。
2.防止反编译
编写代码并对代码施加保护措施,尽量增加反编译的难度。
3、 实验结果
1. 将要反编译的工程打成jar包
用myeclipse将bank(一个简单的银行管理系统)工程打成jar包,放在F:\开发库\decomplieTest.jar下。如下图所示
图1 打成jar包
2.利用JD-GUI进行java代码的反编译
运行JD-GUI,它是一款简单方便,非常适合开发者的Java反编译工具。
图2 运行JD-GUI
点击File打开刚刚所压缩的jar包。
图3 点击File,打开文件
图4 选择jar包
打开jar包后,在软件中显示如下图所示,从打开的界面中可以看到整个jar包中的.class文件的反编译结果。
图5 反编译结果
3. 利用Proguard工具进行上述java代码混淆
解压proguard,执行bin目录下的proguardgui.bat。
图6 双击proguardgui.bat
在弹出的界面中点击Input/Output按钮,之后点击AddInput选择要混淆的jar包,点击ok确定。
图7 选择jar包文件
之后点击AddOutput 选择输出路径。此次我选择跟jar包的同样的路径。
图8 选择输出路径
之后点击Add添加该工程中所有引用的jar包
图9-1 添加工程中所有引入jar包
图9-2 添加工程中所有引入jar包
点击“shrinking”,设置成如图所示。
图10 设置shrinking
点击“obfuscation”,设置如图所示
图11 设置obfuscation
点击“optimization”设置如图所示
图12 设置optimization
点击“information”,设置如图所示,注意选择jdk版本(Target)
图13 设置information
如果是大项目下一步需要手动修改配置文件,此处为简单项目,直接进入Process ,点击Process即可完成代码混淆。如图所示混淆成功,并在设置的输出路径中保存了混淆后的jar包。
图14-1 点击Process
图14-2 Proces成功s
再次打开JD-GUI,并打开混淆后的ProGuardTest.jar包,如图所示,反编译后的java代码,明显和未进行代码混淆的jar包所反编译的java代码有区别。
图15-1 用JD-GUI打开ProGuardTest.jar包
图15-2 用JD-GUI打开ProGuardTest.jar包
4、 结果分析与结论
通过此次实验,我了解了反编译的概念以及原理,更深层次的理解代码加密的重要性以及过程。
本次实验,我利用JD-GUI软件版,对Java代码进行反编译,并使用ProGuard程序对已经打包好的jar包,进行代码混淆。由此让我熟悉了反编译和代码混淆的方法及过程。
第六次试验 Bug管理
1、 实验目的
1. 能够利用xampp软件启动Apache与MySQL服务器。
2. 学会Bugfree的安装和环境配置
3. 能配置Bugfree的邮件发送功能。
4. 学会使用Bugfree
2、 实验内容
1.安装和配置好xampp软件,确保xampp软件的Apache和MySQL服务能正常运行,并且安装和配置好Bugfree环境和Bugfree的邮件发送功能
2.自己在Bugfree的后台管理功能处添加一个产品,并为产品添加用户组并做相应的设置,收集产品的Bug,并按照Bug的管理流程处理Bug
三、实验结果
1.XAMPP软件的安装。
图1-1 xampp的安装
图1-2 运行xampp
2.启动xampp
点击xampp的安装根目录找到xampp-control.exe 应用程序,双击打开该软件。如下图界面,并点击Apache的start按钮,发现不能启动,并报错。该错误的意思是,端口号80和443都被占用,无法启动Apache。
图2 启动Apache报错
端口号80的解决方法:在xampp的根目录下找到apache->conf中httpd.conf,打开。用写字板打开,按住Ctrl+F,点出查询工具,输入80。将找到的80都改成8088端口号。
图3 更改端口号80为8088
端口号80的解决方法:在xampp的根目录下找到apache->conf->extra中httpd-ssl.conf,打开。用写字板打开,按住Ctrl+F,点出查询工具,输入443。将找到的443都改成4431端口号。
图4 更改端口号443为4431
最后将xampp软件的config->Service and Port Setting Apache的参数设置更改成如下图所示的状态。
图5 更改xampp设置
点击Apache的start按钮,可以启动,紧接着再点击MySQL的start按钮,发现也不能启动。原因是3306端口号被我自己安装的mysql占用,所以可以更改端口号来启动mysql。
图5 启动MySQL报错
在如下图所示的路径中找到my.ini文件,双击打开。同样用写字板的查找功能,将所有的3306都改成3366.
图7 找到my.ini文件
同样更改Config的Service and Port Setting MySQL的Service Name 和 Main Port。
图8-1 更改MySQl的配置
图8-2 更改MySQl的配置
图8-3 更改MySQl的配置
之后,MySQl就可以正常启动了。
图9 启动mysql
3.修改密码
在浏览器中输入:http://localhost:8081/phpmyadmin/进入phpMyAdmin的主页面,注意地址中的8081是Apache的端口号,如果Apache端口号不是8081,则根据具体端口号来,点击的“用户账户”会进入如图2.2的界面,在用户为root、主机为localhost处点击修改权限进入编辑权限页面,如图所示
图10 访问phpmyadmin
发现不能访问,原因是,我们更改了mysql的端口号。
图11 访问phpmyadmin报错
在如下图所示的路径中,找到config.inc.php文件双击打开,更改$cfg[Servers][$i][host] = 127.0.0.1;更改成$cfg[Servers][$i][host] = 127.0.0.1:3366;
图12-1 找到config.ini.php文件
图12-2 更改config.ini.php文件
更改之后即可登录进如下图所示的界面。
图13 进入phpMyAdmin
之后点击用户帐户按钮,出现下图所示界面,在用户名是:root和Host name是:localhost的那行,点击修改权限。
图14-1 修改密码
输入要修改的新密码,切记不要点击‘密码加密’,直接点击执行按钮即可。
图14-2 修改密码
修改成功。
图14-3 修改密码
4. 安装BugFree
1.拷贝Bugfree3.0.4的安装包解压到D:\xampp\htdocs下,并修改文件夹名为bugfree,注意:此处D盘是xampp的安装目录。
2.在浏览器输入http://localhost:8081/bugfree/install打开bugfree的安装页面,如图所示。注意:此处的8088是Apache的端口号,如果Apache端口号不是8088,则需根据具体端口号来
图15-1 安装Bugfree
注意:如果D:\xampp\htdocs目录下不存在BugFile文件夹的话,则需要自己在该目录下创建该文件夹。点击继续。
图15-2 安装Bugfree
环境检查通过,点击继续即可进行数据库配置,用户名使用root账号,点击安装,直到建数据库表成功,后登陆bugfree即完成安装。
图15-3 安装Bugfree
图15-4 安装Bugfree成功
5. BugFree邮箱配置
在D:\xampp\htdocs\bugfree\protected\config\main.php,打开main.php文件。
图16-1 Bugfree邮箱配置
文件可以启用邮件通知功能,修改如下SMTP服务器信息。邮箱账号可以是QQ邮箱,新浪邮箱,163邮箱等,而且必须确保自己的邮箱账号开通了smtp或者pop3服务,关于怎么开通smtp或者pop3服务百度一下,否则是不能成功发送邮件的。建议最好不要用QQ邮箱试。
图16-2 Bugfree邮箱配置
6.Bugfree界面
回到图15-4中,点击进入Bugfree,出现一个登录界面,输入用户名admin,密码是修改后的123456。登录进入之后,点击导航栏->“编辑我的信息”进行密码更改。
图17 Bugfree密码修改
之后退出登录,用新改的密码再次登录。
图18 Bugfree再次登录
7.后台管理
添加用户,点击后台管理,在菜单栏中点击用户管理,再点击添加用户。出现下图界面。我添加了张三、李四、钱五3个用户。
图19 Bugfree后台管理-添加用户
再点击菜单栏的用户组管理,添加用户组。用户组名为:BugTestUsers;用户组用户是刚刚添加的3个用户,用户组管理员是张三。
图20 Bugfree后台管理-添加用户组
回到菜单栏,点击产品管理,添加产品,如下图。
图21-1 Bugfree后台管理-产品管理
图21-2 Bugfree后台管理-产品管理
产品名是:BugTest,产品管理员为张三,产品用户组为BugTestUsers。
图20-3 Bugfree后台管理-添加产品
8.BUG管理
之后,退出该用户,用张三的帐户登录该系统,出现如下界面,添加创建Bug。
图21-1 Bugfree-新建bug
我创建了2个bug,一个是数字编辑框可输入英文和中文,一个是登录界面的验证码不显示。
图21-2 Bugfree进行bug管理
编辑bug,点击编辑按钮,对已经有的bug进行编辑。下面我将数字编辑框可写英文中这个bug的优先级提升为2。
图21-2 Bugfree进行bug管理
图21-3 Bugfree进行bug管理
复制bug,点击复制按钮,对已经有的bug进行复制。下面我复制数字编辑框可写英文中这个bug,并添加复现步骤:在人员管理界面中出现了同样问题。
图21-4 Bugfree进行bug管理
4、 结果分析与结论
此次实验围绕Bug管理进行,首先安装了XAMPP软件,进行appche和mysql的服务器的启动,之后安装bugfree,bug进行管理。
在实验过程中,首先测试,要做的就是验证软件是工作的,就是在一般情况下能完成其基本功能,这个就要紧扣需求,试想,如果软件连最基本的需求都满足不了,那么界面再美观,也只是一个空壳。这部分内容的测试要求测试人员要研究软件的说明文档,了解了需求才有资格做测试,其实,如果你不知道什麽是正确的,那你提BUG的依据又在哪里?你提的BUG又怎么让开发人员心悦诚服地接受并修改呢。
“130521103”+软件测试文档编制标准软件缺陷报告
目录
目录 I
第一次试验 LoadRunner性能测试工具 1
一、实验目的 1
二、实验内容 1
三、实验步骤 1
1.录制脚本 1
2.结果分析 5
第二次试验 单元测试 7
一、实验目的 7
二、实验内容 7
1.函数测试 7
2.编程测试 7
三、实验结果 7
3.1函数测试 7
3.2编程测试 9
四、结果分析与结论 12
第三次实验 自动化测试 13
一、实验目的 13
二、实验内容 13
三、实验结果 13
1.安装seleniumIDE插件 13
2.selenium2 环境配置 14
3. 录制脚本 15
4. 转换成java代码 19
5. 导入myeclipse中 21
四、 结果分析与结论 22
第四次实验 版本控制 23
一、 实验目的 23
二、 实验内容 23
三、 实验结果 23
1. VSS的安装及配置 23
2. VSS2005的汉化 26
3. 打开VSS2005服务器 26
4. 创建共享文件 27
5.更改服务器设置 29
6. VSS服务器端和VS2008的绑定 31
7. VSS客户端连接服务器端数据库 32
8. 管理项目 34
四、 结果分析与结论 39
第五次试验 反编译 40
一、 实验目的 40
二、 实验内容 40
三、 实验结果 40
1. 将要反编译的工程打成jar包 40
2.利用JD-GUI进行java代码的反编译 41
3. 利用Proguard工具进行上述java代码混淆 43
四、 结果分析与结论 49
第六次试验 Bug管理 50
一、 实验目的 50
二、 实验内容 50
三、实验结果 50
1.XAMPP软件的安装。 50
2.启动xampp 51
3.修改密码 56
4. 安装BugFree 59
5. BugFree邮箱配置 61
6.Bugfree界面 62
7.后台管理 63
8.BUG管理 65
四、 结果分析与结论 67
67
“130521103”+软件测试文档编制标准软件缺陷报告 68
1.软件缺陷报告标识符 71
1. 软件缺陷总结 71
2. 软件缺陷描述 71
3.1输入 71
3.2期望得到的结果 72
3.3实际结果 73
3.4异常情况 73
3.5日期和时间 73
3.6软件缺陷发生步骤 74
3.7测试环境 74
3.8再现测试 74
3.9测试人员 75
3.10 见证人 75
4.影响 75
从自己角度理解软件质量与保证 76
一、 软件质量的内涵 76
二、 软件质量保证 76
如何编写高质量代码 78
一、打好基础 78
二、 代码标准 78
三、 三思而后行 78
四、代码重构 78
五、代码审查 78
六、单元测试 79
整理第十章知识 测试用例的设计 80
1.黑盒测试的基本概念 80
2. 等价类划分 80
3.边界值分析法 80
4.因果图法 81
5. 功能图法 81
6. 黑盒测试方法的比较与选择 81
7.设计因果图测试用例 82
附录 85
单元测试源代码: 85
计算器源代码: 86
1.软件缺陷报告标识符
表1 标识符
测试用例
标识符
一般三角形
不能构成三角形
等腰三角形
非等腰三角形
等边三角形
非等边三角形
YBTriangle
BNTriangle
DYTriangle
FDYTriangle
DBTriangle
FDBTriangle
1. 软件缺陷总结
测试的是一个求解三角形类型的软件,首先程序读入3个数分别是a、b、c,并把这3个数值看做成这个三角形的三条边,最总打印出三角形类型。
2. 软件缺陷描述
表2 缺陷描述
测试用例
描述
一般三角形(YBTriangle)
a、b、c 3边刚好构成三角形
不能构成三角形(BNTriangle)
a、b、c 3边不好构成三角形
等腰三角形(DYTriangle)
(a=b),(b=c),(a=b)
非等腰三角形(FDYTriangle)
(a!=b)and(b!=c)and(a!=c)
等边三角形(DBTriangle)
a=b=c
非等边三角形(FDBTriangle)
(a!=b),(b!=c),(a!=c)
3.1输入
表3 输入参数
用例编号
(a、 b、c)
1
3、4、5
2
0、1、2
3
1、0、2
4
1、2、0
5
1、2、3
6
1、3、2
7
3、1、2
8
3、3、4
9
3、4、4
10
3、4、3
11
3、4、5
12
3、3、3
13
3、4、4
14
3、4、3
15
3、3、4
3.2期望得到的结果
表4 期望结果
用例编号
(b、 b、c)
期望结果
1
3、4、5
YBTriangle
2
0、1、2
BNTriangle
3
1、0、2
4
1、2、0
5
1、2、3
6
1、3、2
7
3、1、2
8
3、3、4
DYTriangle
9
3、4、4
10
3、4、3
11
3、4、5
FDYTriangle
12
3、3、3
DBTriangle
13
3、4、4
FDBTriangle
14
3、4、3
15
3、3、4
3.3实际结果
表5 实际结果
用例编号
(c、 b、c)
实际结果
1
3、4、5
YBTriangle
2
0、1、2
BNTriangle
3
1、0、2
4
1、2、0
5
1、2、3
6
1、3、2
7
3、1、2
8
3、3、4
DYTriangle
9
3、4、4
10
3、4、3
11
3、4、5
YBTriangle
12
3、3、3
DBTriangle
13
3、4、4
DYTriangle
14
3、4、3
15
3、3、4
3.4异常情况
表6 异常情况
用例编号
(d、 b、c)
实际结果
期望结果
11
3、4、5
YBTriangle
FDYTriangle
13
3、4、4
DYTriangle
FDBTriangle
14
3、4、3
15
3、3、4
3.5日期和时间
日期:2016/4/29
时间:17:51:32
3.6软件缺陷发生步骤
1. 利用JUnit工具,编写该类的对象,调用相应的方法
2. 右击鼠标->Run As->JUnit Test
3. 在控制台中分别输入测试用例里的数值对。
3.7测试环境
电脑系统:Window 7 旗舰版
软件开发环境:MyEclipse 10 ,jdk 7
测试环境:JUnit 4
3.8再现测试
图1 JUnit创建对象
图2 JUnit运行
图3 控制台输入
图4 控制台输出
3.9测试人员
130521103 朱维
3.10 见证人
王鹏
4.影响
这个测试出来的缺陷,导致只要是3边能构成三角形并满足等腰三角形和等边三角形这个条件,就不会输出非等腰三角形或等边三角形。所以说影响是挺严重的。
从自己角度理解软件质量与保证
软件质量保证是建立一套有计划,有系统的方法,来向管理层保证拟定出的标准、步骤、实践和方法能够正确地被所有项目所采用。软件质量保证的目的是使软件过程对于管理人员来说是可见的。它通过对软件产品和活动进行评审和审计来验证软件是合乎标准的。软件质量保证组在项目开始时就一起参与建立计划、标准和过程。这些将使软件项目满足机构方针的要求。
但是什么是软件的质量呢?
1、 软件质量的内涵
事实上,软件质量与传统意义上的质量概念并无本质差别,只是针对软件的某些特性进行了调整。从最狭义上讲,质量可被定义为“无缺陷”。但是,绝大多数以顾客为中心的企业对质量的定义远不止这些,他们是根据顾客满意来定义质量的。例如,以高质量闻名于世的摩托罗拉公司对缺陷的定义是:“如果顾客不喜欢,那该产品就是有缺陷。”同样,美国质量管理协会把质量定义为与一种产品或服务满足顾客需要的能力有关的各种特色和特征的总和。这些以顾客为中心的定义说明质量以顾客的需要为开始,以顾客满意为结束。
软件质量天生符合上述含义,最初的定制式软件系统首先要求必须满足用户的需求。为满足软件的各项精确定义的功能、性能需求,符合文档化的开发标准,需要相应地给出或设计一些质量特性及其组合,作为在软件开发与维护中的主要考虑因素。如果这些质量特性及其组合都能在产品中得到满足,则这个软件产品质量就是高的。软件质量反映了以下三方面的问题:
1、 软件需求是度量软件质量的基础。
2、在各种标准中定义了一些开发准则,用来指导软件人员用工程化的方法来开发软件。如果不遵守这些开发准则,软件质量就得不到保证。
3、往往会有一些隐含的需求没有明确提出来。如果软件只满足那些精确定义了的需求而没有满足这些隐含的需求, 软件质量也得不到保证。
2、 软件质量保证
为了克服软件危机和提高软件质量,人们进行了大量的研究和实践。最初的重点是着眼于技术革新,从各种软件工具(如编辑、编译、调试工具等等)研制开始,发展成为对开发各阶段进行全面支持的计算机辅助软件工程(CASE)环境。同时,注重软件开发“模型”研究,也就是如何划分软件开发过程的不同阶段,并针对不同阶段开展了有关技术和方法的研究如需求工程、设计工程、程序设计方法学、软件测试等等。通过长期的实践发现,仅仅依靠这些工具环境、模型及方法学来提高效率和质量,并未达到预期的目标。但是,人们逐渐认识到,如果能够同时对软件开发过程的质量加以控制,则可以大幅度的提高软件质量。只有从一开始就在开发过程中严格贯彻质量管理,软件产品的质量才有保证。否则,开发工作一旦进行到后期,无论怎样通过测试和补漏洞,都会无济于事。这就是近年来国际上十分重视的“软件过程管理”思想。这种思想并非凭空想象,而是借鉴了在硬件领域成功实施全面质量管理的经验,对软件开发实行相应的质量保证工作,并已取得了成功的经验。
在实际工作中,可以从两个方面来理解软件质量保证工作。一方面,从顾客驱动观点看,注重于复审和校核方法并保证一致性,其关键是需要一种客观的标准来确定并报告软件开发过程及其工作成果的质量,一般由某个独立的小组(一般称为“软件质量保证小组”)完成,关键步骤包括:
选择项目应遵循的标准。制定项目开发计划,评价其完整性并选择项目将采用的标准。
对软件工程活动进行复审。根据事先制定的计划和选择的标准来复审软件工程活动。
校核工作成果。根据选择的标准来校核软件工作成果。
报告结果。将上述活动的结果(尤其是偏离)汇报给适当的管理层人员。
处理偏离。各种偏离将在适当的管理层次加以处理,若需要则交给上一级管理人员做进一步处理,直至得到解决。
另一方面,从管理者驱动观点看,注重于确定为了产品质量必须做些什么,并且建立管理和控制机制来确保这些活动能够得到执行。它包括确定项目产品必需的质量特性,努力工作以期达到质量要求,并显示已经达到质量要求。关键步骤如下:
建立质量目标 。以客户对于质量的需求为基础,对项目开发周期的各个检查点(如每个阶段结束时)建立质量目标。
定义质量度量(metrics)。定义各种质量度量来衡量项目活动的结果以协助评价有关的质量目标是否达到。
确定质量活动。对于每一个质量目标,确定那些能够帮助实现该质量目标的活动,并将这些活动集成到软件生命周期模型中去。
执行质量活动。执行已经确定的质量活动。
评价质量。在项目开发周期的确定检查点上,利用已经定义好的质量度量来评价有关的质量目标是否达到
如何编写高质量代码
编码质量体现在编程技术、代码风格、代码审查等方面,高质量的代码能够确保最大的客户满意度和最低的维护成本,对后期的扩展也有极大的帮助。
哪么编写高质量的需要注意些什么呢?
一、打好基础
1. 掌握好开发语言,
2. 熟悉开发平台
3. 基础的数据结构与算法
基础的设计原则
2、 代码标准
码标准在团队合作中尤为重要,谁也不希望一个项目中代码风格各异,看得让人糟心,即便是个人开发者,现在也需要跟各种开源项目打交道。
所以我们在编写代码时一定要严格遵守编码规范。
3、 三思而后行
在编写代码之前,我们一定要明确自己要做什么,目的清晰。这样可以避免走很多不必要的弯路,也可以头脑清晰的编写代码,从而保证代码的质量。
四、代码重构
我们在写完代码后,其实是很难保证自己的代码逻辑清楚,从而产生很多不需要的代码,我们完全可以从另一个更为简单的角度思考问题,从而减少代码量,达到最优代码。所以代码重构是提升代码质量的总要步骤。
五、代码审查
我们发现代码审查对于项目的各个阶段都会带来很多好处:
1.在项目起始阶段进行代码审查会帮助我们更好地使用已经建立起来的代码基,因为如果我们没有使用过某些现有代码,那么可以从当前的开发者中获得反馈信息。
2.在项目进行过程中,我们会时不时地向团队增加新的开发人员,代码审查可以极大地降低这些新加入人员的熟悉时间。特别地,我们可以让新加入的开发人员很有信心地开发新特性,因为我们可以在合并前审查代码并且对于他们所编写的任何代码提供有价值的反馈信息。
3.对于我们这个分布式团队来说,代码审查更加具有实际意义。团队协同在构建协作环境上会带来很大的帮助作用,我们可以即时提出想法,然后讨论,再进行开发。虽然由于不在同一地点我们会失去一些东西,不过我们却可以在代码审查过程中通过深入的讨论来获得好处。
六、单元测试
1.使代码可以放心修改和重构;
2.迫使程序员从调用者而不是实现者的角度设计软件模块;
3.迫使程序员将软件模块写得易于测试和调用,从而有利于解耦;
4.测试本身可作为被测代码的用法说明,从而替代了一部分文档功能。
整理第十章知识 测试用例的设计
1.黑盒测试的基本概念
对于软件测试而言,黑盒测试把程序看做成一个黑盒子,完全不考虑程序的内部结构和处理过程。黑盒测试是在程序接口进行的测试,它只检查程序功能是否能按照规格说明书的规定正常使用,程序是否能适当的接收输入数据并产生正确的输出信息,程序运行过程中能否保持外部信息的完整性。
黑盒测试注重于测试软件的功能性需求并不是,也即黑盒测试是软件工程师派生出执行程序所有功能需求的输入条件。
黑盒测试试图发现以下类型的错误:
功能错误或遗漏
界面错误
数据结构或外部数据库访问错误
性能错误
初始化或终止错误
2. 等价类划分
等价类划分是一种黑盒测试的技术,不考虑程序的内部结构,是把所有可能的输入数据,即程序的输入域划分成若干部分(子集),然后从每个子集中选取少量具有代表性的数据作为测试用例。
有效等价类
展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 人人文库网仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
相关搜索