问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

java 怎么写junit测试用例

发布网友 发布时间:2022-04-29 17:01

我来回答

2个回答

热心网友 时间:2022-07-11 11:11

java中Junit应用介绍:assertexp1;//exp1为boolean类型的值assertexp1:message;//message为如果exp1不是true的时候,要提示的错误消息断言一般作用:代码运行前写断言判断必须满足的条件;代码运行后判断必须符合的标准;确定代码运行过程中有无改变某些不应该变的东西2.junit中的Assert类提供了很多方法,替代断言,参照api:assertEquals、assertFalse、assertTrue、assertNotNull、assertNull、assertSame、fail3.注解@interface用来定义注解@Retention用来声明注解的保留策略,有CLASS(注解保存在class文件中)、RUNTIME(运行时可用)和SOURCE(仅在源代码中)这三种@Target用来声明注解可以被添加在哪些类型的元素上:注解、类、方法、方法参数、构造、字段、方法中的普通变量定义一个能在方法上使用的注解:@Retention(RetentionPolicy.RUNTIME)@Target({ElementType.METHOD})public@interfaceKennethTest{}写一个测试类publicclassTest{@KennethTestpublicvoidtest1(){System.out.println("test1");}publicvoidtest2(){System.out.println("test2");}@KennethTestpublicvoidtest3(){System.out.println("test3");}}执行一个类中所有标记KennethTest的方法publicclassMain{publicstaticvoidmain(String[]args)throwsException{//反射ClassclassObj=Test.class;//获取Test的类对象Objectobj=classObj.newInstance();//调用无参数构造,新建一个Test的对象Method[]methods=classObj.getMethods();//获取Test类中所有public方法for(Methodmethod:methods){if(method.getAnnotation(KennethTest.class)!=null){//看这个方法是否有KennethTest注解method.invoke(obj);//如果这个方法有KennethTest注解,那么这个方法被调用执行}}}}4.junit中的注解@Test@Test(expected=IndexOutOfBoundsException.class)测试方法抛出这个异常就能通过测试@Test(timeout=10)测试方法不能超过10毫秒@Ignore忽略测试@Before每个测试方法之前执行@After每个测试方法之后执行@BeforeClass在加载类时执行@AfterClass在所有测试方法执行结束,如果有after的话,所有after也执行结束后执行5.通常写测试代码的规则:1)产品源代码和测试源代码要分开,包名类名一致例如org.ken.PersonDao对应测试代码可以为test.org.ken.PersonDaoTest2)一个有功能类要写至少一个测试类3)一个方法代表一个用例用例之间要保持独立(最好不要互相调用)

热心网友 时间:2022-07-11 11:12

文件名:Calutor.java
package com.sc.zy;

public class Calutor {

public int add(int num1,int num2){
return num1+num2;
}

public int sub(int num1,int num2){
return num1-num2;
}

public int mul(int num1,int num2){
return num1*num2;
}

public int div(int num1,int num2){
if(num2==0){
throw new MyException();
}

return num1/num2;
}
}

文件名:MyException.Java

package com.sc.zy;

public class MyException extends RuntimeException {

}

文件名:CalutorTest.java

package com.sc.zy;

import junit.framework.Assert;

import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Ignore;
import org.junit.Test;

public class CalutorTest {

private Calutor c;

@BeforeClass
public static void setUpBeforeClass(){
System.out.println("=====static init=======");
}

@AfterClass
public static void tearDownAfterClass(){
System.out.println("=====static destory=======");
}

@Before
public void setUp(){
System.out.println("=======@before=======");
c=new Calutor();
}

@After
public void tearDown(){
System.out.println("=======@after=======");
}

@Test
public void testAdd(){
int sum=c.add(1, 2);
Assert.assertEquals(3, sum);
}
@Test(expected=com.sc.zy.MyException.class)
public void testDiv(){
c.div(1, 0);
}

@Ignore
public void testDiv1(){
int d=c.div(1, 5);
Assert.assertEquals(0, d);
}
}
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
苹果电脑电池充不进电苹果电脑充不进去电是怎么回事 苹果电脑不充电没反应苹果电脑充电指示灯不亮充不了电怎么办 狗狗更加忠诚护家、善解人意,养一只宠物陪伴自己,泰迪能长多大... 描写泰迪狗的外形和特点的句子 国外留学有用吗 花钱出国留学有用吗 !这叫什么号 百万医疗赔付后是否可以续保 前一年理赔过医疗险还能续保吗? 医疗住院险理赔后还能购买吗? 意大利留学丨时尚管理专业到底是一个怎样的 中建安装工程有限公司怎么样?谁能给解答一下,小弟不胜感激 中国人为什么说美国是米国 java junit单元测试怎么写 东风本田CRV思域后装车载多媒体导航系统的时间如何调? 为什么说美国是个没有历史的国家 时尚管理毕业后做什么 为什么说美国甩锅,而不说美国推卸责任? Java 测试用例怎么写 我准确想知道时尚管理跟奢侈品管理,这两个专业的区别, 冬季为什么经常出现雾? 为什么说美国变成流氓国家呢? Java的TestCase 怎么写的 不知道什么样子 比如程序是问你名字 输入姓名。那TestCa 为什么说美国是被上帝眷顾的国家,美国都有哪些优势? fit和帕森斯在时尚管理专业上哪个更好 美国hudsonville 是哪个城市 艺术生出国留学去哪些国家好 为什么选择时尚管理这个专业 为什么说美国是Melting Pot (请详解) 中国建筑安装工程有限公司隶属什么部门 为什么国人说美国是米国? 中国建筑装饰工程有限公司下属有哪些单位 中国建筑装饰工程有限公司 求几张动漫超神学院天使彦的超清手机图片,百度搜来的模糊图就不要发了,谢谢! oppoR9充电线上的字母是E还是? 中国建筑工程集团有限公司隶属住建部吗? 谁有超神学院凉冰或者蔷薇的高清壁纸,我要用来当壁纸,, 我的机OPPOr9Pluse已经把键盘音强度设置到最弱,可是他还是有声音,怎么把音量完全关闭 经常戴琉璃对人体有益还是有害? oppor9plse锁屏键失灵,充电器拔了还是显示在充电是怎么回事? 平心而论,oppor9和魅蓝e哪个更值得买?? oppor9spluse手电筒灯亮度不够怎回事? 在古代什么样的人物才能佩戴琉璃朝珠 吃橘子弄到衣服上怎么办! oppor9和魅族e的屏幕谁大? 琉璃与水晶分别有什么寓意? oppor9pluse 屏幕摔碎了,修需要多少钱 橘子水弄到衣服上怎么才能洗干净? 琉璃象征着怎样的人 OPPOr9plse手机未知来源在哪里?安全与隐私里面没找到。设备管理里面也没有??