版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
实验报告(2015/2016学年第一学期)课程名称软件工程(双语)实验名称SoftwareUnitTest实验时间2015年12月10日指导单位计算机学院软件工程系指导教师陈云芳学生姓名钱颖班级学号B13040906学院(系)计算机学院专业软件工程PAGE1实验报告实验名称SoftwareUnitTest指导教师陈云芳实验类型验证实验学时2实验时间2015.12.10实验目的和要求实验目的:对JAVA单元测试有初步了解,学会使用Junit编写自己的测试用例,并对被测试类进行测试。二、实验环境(实验设备)Eclipse三、实验原理及内容实验内容:1.阅读理解Junit的工作机制。2.eclipse环境下的单元测试。3.利用Junit编写测试用例,并对被测试类进行相关功能测试。A)验证Book类的equals方法。B)设计Triangle类的测试用例,并进行测试。实验截图:实验报告实验代码:package.njupt;importjunit.framework.TestCase;publicclassBookTestextendsTestCase{ privateBookbook1; privateBookbook2; publicBookTest(Stringname){ super(name); }protectedvoidsetUp()throwsException{ super.setUp(); book1=newBook("ES",12.99); book2=newBook("TheGate",11.99); }protectedvoidtearDown()throwsException{ super.tearDown(); book1=null; book2=null; }publicvoidtestEqualsObject(){ assertFalse(book2.equals(book1)); assertTrue(book1.equals(book1)); }}package.njupt;publicclassBook{ privateStringtitle; privatedoubleprice; public Book(Stringtitle,doubleprice){ this.title=title; this.price=price; }publicbooleanequals(Objectobject){ if(objectinstanceofBook){ Bookbook=(Book)object; returngetTitle().equals(book.getTitle())&&getPrice()==book.getPrice(); } returnfalse; }publicdoublegetPrice(){ returnprice; }publicvoidsetPrice(doubleprice){ this.price=price; }publicStringgetTitle(){ returntitle; }publicvoidsetTitle(Stringtitle){ this.title=title; }}补充任务:为Triangle类编写测试用例。实验代码:package.njupt;/***ThisisTriangleclass**/publicclasstttt{ //定义三角形的三边 protectedlonglborderA=0; protectedlonglborderB=0; protectedlonglborderC=0; //构造函数 publictttt(longlborderA,longlborderB,longlborderC){ this.lborderA=lborderA; this.lborderB=lborderB; this.lborderC=lborderC; } /** *判断是否是三角形 *是返回true,不是返回false */ publicstaticbooleanisTriangle(tttttriangle){ booleanisTriangle=false; //判断边界,大于0小于0或等于Long.MAX_VALUE,出界返回false if((triangle.lborderA>0&&triangle.lborderA<=Long.MAX_VALUE/2) &&(triangle.lborderB>0&&triangle.lborderB<=Long.MAX_VALUE/2) &&(triangle.lborderC>0&&triangle.lborderC<=Long.MAX_VALUE/2) ){ //判断两边之和大于第三边 if((triangle.lborderA<(triangle.lborderB+triangle.lborderC)) &&(triangle.lborderB<(triangle.lborderA+triangle.lborderC)) &&(triangle.lborderC<(triangle.lborderA+triangle.lborderB))){ isTriangle=true; } } returnisTriangle; } /** *判断三角形类型 *只有两条边相等的三角形返回字符串“等腰三角形”; *三边均相等的三角形返回字符串“等边三角形” *三边均不等的三角形返回字符串“不等边三角形” * */ publicstaticStringgetType(tttttriangle){ StringstrType="不是三角形"; //判断是否是三角形 if(isTriangle(triangle)){ //判断是否是等边三角形 if(triangle.lborderA==triangle.lborderB &&triangle.lborderA==triangle.lborderC &&triangle.lborderB==triangle.lborderC ){ strType="等边三角形"; } //判断是否是不等边三角形 elseif(triangle.lborderA!=triangle.lborderB &&triangle.lborderA!=triangle.lborderC &&triangle.lborderB!=triangle.lborderC ){ strType="不等边三角形"; } //三角形既非三边全部相等,又非全部不等,只能是部分相等即等腰三角形 else{ strType="等腰三角形"; } } returnstrType; }}package.njupt;importjunit.framework.TestCase;publicclassaaaaextendsTestCase{ privatettttt1,t2; publicaaaa(Stringname){ super(name); } protectedvoidsetUp()throwsException{ super.setUp(); t1=newtttt(1,2,4); t2=newtttt(3,4,5); } protectedvoidtearDown()throwsException{ super.tearDown(); t1=null; t2=null; } publicvoidtestGetType(){ assertFalse(t1.isTriangle(t1)); assertTrue(t2.isTriangle(t2)); }}实验截图:实验报告四、实验小结(包括问题和解决方法、心得体会、意见与建议等)通过这次实验,我对JUnit有了更深的了解。它是一种测试代码的框架,测试的目的是:保证代码没错,而不是保证代码正确。Junit测试类一般不要和目标类放在一起,但编译成的class文件是放在一起的。Junit单元测试主要是来测试程序的结果和自己期望的值是否相等,测试类要继承TestCast类,而TestCast类又继承于Assert类。这次实验让我对代码的又有了更深的理解,收益匪浅。
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 房屋买卖手续简便合同合同二篇
- 建筑垃圾再生资源利用合同协议
- 租房合同中房屋租赁合同签订时间
- 医疗设备采购置申请制度
- 工程采购报账制度
- 农产品采购销售制度
- 医院保障部采购制度
- 幼儿食物采购制度范本大全
- 农民合作社管理采购制度
- 初中物资设备采购制度
- 2026四川泸州产城招引商业管理有限公司人员招聘4人笔试参考题库及答案解析
- 背负式风力灭火机的操作与使用
- 市政道路及管网工程监理计划
- 高电压技术电气设备绝缘试验
- 江苏省建筑工程造价估算指标
- 中国高考评价体系解读新
- GB/T 16622-2022压配式实心轮胎规格、尺寸与负荷
- GB/T 2878.2-2011液压传动连接带米制螺纹和O形圈密封的油口和螺柱端第2部分:重型螺柱端(S系列)
- GB/T 13173-2021表面活性剂洗涤剂试验方法
- 近三年投标没有发生过重大质量安全事故的书面声明范文
- PPT模板:节约用电从我做起节约用电节能环保主题班会课件(20页PPT)
评论
0/150
提交评论