软件测试 2.docx
《软件测试 2.docx》由会员分享,可在线阅读,更多相关《软件测试 2.docx(11页珍藏版)》请在冰豆网上搜索。
![软件测试 2.docx](https://file1.bdocx.com/fileroot1/2023-1/6/acebbb73-da56-4a81-8774-f2aa6935cb55/acebbb73-da56-4a81-8774-f2aa6935cb551.gif)
软件测试2
目录
第一章目的和意义4
第二章单元测试4
2.1测试用例4
2.2编写测试脚本5
2.3运行测试5
2.4分析测试结果6
第三章性能测试6
3.1设计测试用例6
3.2运行测试8
3.3分析测试结果11
第四章功能测试12
4.1设计测试用例12
4.2编写测试脚本12
4.3运行测试13
4.4分析测试结果14
第五章课设小结及心得体会14
第六章参考文献14
第一章目的和意义
软件测试是软件工程中非常重要的环节,是软件质量的保证。
该课程是培养训练学生软件质量保证能力的重要实践性教学环节,与软件测试技术课程的教学内容紧密配合,同步进行。
通过软件测试的实践训练,深刻理解和掌握软件测试和软件测试过程的基本方法和基本技术,熟练掌握黑盒测试、白盒测试的测试用例的设计,同时进一步提高学生对于复杂程序的编写能力,为学生将来从事实际软件测试工作和进一步深入研究打下坚实的理论基础和实践基础。
第二章单元测试
2.1测试用例
对图书管理系统的部分功能代码进行单元测试。
在编写完成的系统程序里导入JUnit包来完成单元测试。
具体步骤如下:
首先,工程名右键,BuildPath,然后选择ConfigureBuildPath,AddLibrary里选择JUnit,下一步,最后点击完成。
在工程里,新建一个SourceFolder,再新建一个测试包com.library.junit,然后新建一个测试类DaoTest.java。
在类里编写测试代码。
2.2编写测试脚本
packagecom.library.junit;
publicclassDaoTest{
@Test//查询图书相关信息
publicvoidselectBookInfoTest(){
Listlist=Dao.selectBookInfo();
Assert.assertEquals("1234567891234",((BookInfo)list.get(0)).getISBN());
Assert.assertEquals("1",((BookInfo)list.get(0)).getTypeid());
Assert.assertEquals("Java",((BookInfo)list.get(0)).getBookname());
Assert.assertEquals("测试",((BookInfo)list.get(0)).getWriter());
Assert.assertEquals("测试",((BookInfo)list.get(0)).getTranslator());
Assert.assertEquals("***出版社",((BookInfo)list.get(0)).getPublisher());
Assert.assertEquals(30.0,((BookInfo)list.get(0)).getPrice());}
@Test//查询借阅表信息
publicvoidselectBorrow(){
Listlist=Dao.selectBorrow("1111111111113");
Assert.assertEquals(31,((Borrow)list.get(0)).getId());
Assert.assertEquals("1111111111113",((Borrow)list.get(0)).getReaderISBN());}
2.3运行测试
点击右键,选择RunAs->JUnitTest,出现结果如图:
2.4分析测试结果
此测试代码共实现了两个查询功能的测试,图书信息的查询和借阅表信息的查询。
测试的结果与预期的值相同,数据库中存在ISBN为"1234567891234"的图书,所以结果显示为绿色,在FailureTrace栏中不显示任何错误信息。
第三章性能测试
在JavaEE项目测试中,服务器的性能是测试的一个重点,而且服务器的缺陷也是多发区。
常见的现象如CPU的负荷在不断的增长,Memory常常溢出,系统性能逐渐下降甚至死机等。
这些问题在实际的产品线更容易暴露出来。
在这方面的测试,JProfiler是一个很好的测试工具,它通过实时的监控系统CPU、Memory和Thread来很好的监控JVM的运行和性能状况。
3.1设计测试用例
a、监控端的配置
打开JProfiler,然后单击StartCenter,弹出对话框。
选择NewSession选项,单击NewRemoteIntergration,单击Start。
选择Onaremotecomputer按钮,在Platformoftheremotecomputer:
选择WindowsX86。
输入配置远程机器IP地址。
b、被监控端的配置
修改服务器启动文件后,在Tomcat的Bin文件夹下的startup.bat文件里设置JAVA_OPTS,内容如下:
setJAVA_OPTS=%JAVA_OPST%-agentpath:
F:
\jprofiler_windows_7_0\jprofiler7\bin\windows\jprofilerti.dll=port=8849添加PATH环境变量,在PATH中添加之前复制的环境变量。
3.2运行测试
启动Startup.bat。
Tomcat窗口出现提示等待连接的状态;
监控端在StartCenter选择配置好的Session,单击开始按扭;
访问远程服务;
观察JProfiler提供的5个视图。
(1)内存剖析
(2)堆遍历
(3)cpu剖析
(4)对线程剖析
(5)VM遥感勘测技术
3.3分析测试结果
内存剖析:
JProfiler的内存视图部分可以提供动态的内存使用状况视图和显示关于内存分配状况信息的视图。
所有视图都有几个聚集层,并且能够显示现有存在的对象和作为垃圾回收的对象。
堆遍历:
在JProfiler的堆遍历器中可以对堆的状况进行快照,并且可以通过选择寻找感兴趣的对象。
CPU剖析:
JProfiler提供不同的方法来记录访问数以优化性能和细节。
线程以及线程组可以被所有视图选择,所有的视图都可以聚集到方法、类、包等不同层上。
VM遥感勘测技术:
观察JVM的内部状态,JProfiler提供了如下不同的遥感勘测视图。
第四章功能测试
4.1设计测试用例
Selenium录制功能是由SeleniumIDE实现的。
启动Firefox浏览器,在菜单栏中单击工具菜单,可以看到SeleniumIDE子菜单。
选择SeleniumIDE命令,弹出窗口。
这时开始录制脚本,右上角有个红色圆点,按下时表示正在进行录制脚本,录制时直接操作浏览器就可以了,IDE自动记录操作。
4.2编写测试脚本
录制脚本。
将SeleniumIDE“录制”按钮按下,使其变成录制状态,这时可以再页面上进行相应操作,如登录“图书管理系统”,依次做这些动作:
鼠标单击用户名输入框并输入用户,移到密码输入框,输入密码,单击“登录”。
这时查看SeleniumIDE窗口,在table选项卡中有以下几条记录:
NewTest
open | /StrutsLibrarySystem/ | |
type | id=name | admin | clickAndWait | name=Submit | |
4.3运行测试
添加验证点。
当一个脚本录制完成以后,实际上这个脚本还没有达到测试的目的,还需要为其添加验证点。
在刚才的脚本后面加上下面的语句即可。
verifyTextPresent | 退出系统 |
回放脚本。
录制好脚本以后,单击SeleniumIDE窗口中的Playentiretestsuite按钮来回放脚本。
4.4分析测试结果
正常情况下,录制的脚本是可以在回放时顺利通过的,但是为了脚本的稳定,一般在一些有页面重载的地方加一些延时,如延时3S或者增加一个等待命令。
第五章课设小结及心得体会
本次测试中的压力测试是指模拟实际应用的软硬件环境的系统负荷,运行测试软件来测试被测系统的可靠性,同时还要测试被测系统的响应时间。
根据课题的要求,进行上机实验调试,掌握软件测试的基本步骤和方法,掌握实际软件工程中与软件测试有关的相关文档的编制。
通过此次软件测试的课程设计,深刻学习掌握了软件测试和软件测试过程的基本方法和基本技术,关于黑盒、白盒的测试用例的设计,也进行了认真学习研究,从而进一步提高了自己在程序上的编写能力,以及一些之前未触及的问题,为即将踏上社会的自己又做了一份理论和实践的准备。
第六章参考文献
[1]谢希仁.计算机网络(第五版)[M].北京:
电子工业出版社,2008年2月
[2]胡小强计算机网络[M]北京:
北京邮电大学出版社2005年1月
[3]刘群策 《LoadRunner和软件项目性能测试》,机械工业出版社,2008年
[4]朱少民《软件测试方法和技术》,清华大学出版社,2005年
[5]段念《软件性能测试过程详解与案例剖析》,清华大学出版社,2006年
致谢