范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

这么好用的java单元测试工具,你还在犹豫什么

  junit  是一  个 优秀的开源的java单元测试框架,也是目前比较流行且使用频率比较高的一款,今天我们就来讲讲junit怎么用。  junit主要用于白盒测试、回归测试、单元测试。
  首先我们来新建工程,还是跟原来一样建立。建立之后看看pom.xml 文件,已经默认的加入了junit的依赖     org.springframework.boot     spring-boot-starter-test     test 
  看看我们建立的工程,idea都给我们生成了什么样的目录结构
  我们的junit单元测试文件就放在test/java 下面,我们先看一个基础用法,在Lesson9ApplicationTest 里面增加一个方法:@SpringBootTest @RunWith(SpringRunner.class)//使用SpringRunner加载上下文 public class Lesson9ApplicationTests {     @Test//这个是一个test单元测试文件     public void test1() {         int num = new Integer(1);         Assert.assertEquals(num,1);     } }
  在这个方法的左边会有响应的图标,第一个叶子样的图标标注这个是一个springboot 的测试文件,在启动的时候能看到我们正常启动Application 的banner图标,说明加载了springboot 的上下文。
  我们直接在第二个圆形√加三角形的图标点击,就能运行了。
  junit连常用的注解@RunWith:标识为JUnit的运行环境; @SpringBootTest:获取启动类、加载配置,确定装载Spring Boot; @Test:声明需要测试的方法; @BeforeClass:针对所有测试,只执行一次,且必须为static void; @AfterClass:针对所有测试,只执行一次,且必须为static void; @Before:每个测试方法前都会执行的方法; @After:每个测试方法前都会执行的方法; @Ignore:忽略方法;
  我们一般使用@Test 的注解基本就差不多了,一般@BeforeClass 会用于加载配置,而@AfterClass 一般会用于释放资源。
  上面的代码有一个陌生的Assert 断言,这个东西是干嘛的呢,简单的可以理解为if 条件。断言里面的值应该返回什么样的值。Assert.assertEquals(num,1) 。
  这个你可以理解为if(num==1)System.out.println("ok") ;但是这个方法有很多种重载的类assertTrue/False 判定第一个条件是true还是false assertEquals 接收两个参数,第一个是参数值,第二个是希望返回的值 assertNotEquals 这个跟上一个方法恰好相反,相当于if(param!=param2) assertSame/NotSame 判定两个变量是否指向同一个内存地址 @Test public void test2() {     List list1 = Arrays.asList("a", "b");     List list2 = Arrays.asList("a", "b");     List list3 = list2;      Assert.assertEquals(list1,list2);//通过     Assert.assertEquals(list3,list2);//通过     Assert.assertSame(list3,list2);//通过     Assert.assertSame(list1,list2);//不通过,因为list1和list2分别指向不同的内存地址 } web模拟
  我们在@SpringBootTest 注解上面加上使用随机端口启动@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) @Autowired private TestRestTemplate testRestTemplate;  @Test public void test3() throws URISyntaxException {     String result = testRestTemplate.getForObject("/demo/test1", String.class);     Assert.assertEquals(result,"hello junit test"); }
  TestRestTemplate  是不是很熟悉,是的Springboot 还为RestTemplate 建立了专门的测试类。
  注意:一定要使用随机端口启动,否则执行失败。但是笔者感觉这个专门写个测试类很麻烦,还不如直接使用postman测试,你们觉得呢?  数据库测试@Test @Transactional public void test4() {     User user = new User();     user.setName("abc");     user.setAge(19);     user.setBirthday(new Date());     userJpa.save(user);     Assert.assertTrue(user.getId()!=null);     Assert.assertNotNull(user.getId()); }
  注意:如果不想污染数据库,可以加上  @Transactional  ,执行成功之后数据库事务会回滚,不会将数据真正插入到数据库中。
  idea为我们快速的创建test单元测试文件提供了快捷方式
  选中需要进行单元测试的方法,右键-->go to-->Test就会为我们创建单元测试文件。

夫妻同心黄土变金结没结婚都必须看怎样相处才能让夫妻成就一辈子?一男人的五大需求1被理解2被信任3被支持4被认同5被尊重。二女人的三大要求1安全感2浪漫3被疼和被哄。三夫妻之间离不开的三大问题1经济问题2性的问题3男人再难,都必须有男人的样子一个男人一个男人一定要有一个男人的样子,利利索索痛痛快快,千万不要扭扭捏捏婆婆妈妈。一个男人要懂得保护女人和尊重女人,尤其是后者,千万不要强迫她做她不愿意的事情,不要打女人,无论她伤过你还细心观察,有教养的人都有这10大特征!1守时无论是开会赴约,有教养的人从不迟到。他们懂得,即使是无意迟到,对其他准时到场的人来说,也是不尊重的表现。2谈吐有节注意从不随便打断别人的谈话,总是先听完对方的发言,然后再去反古诗词句摘选,有没有你喜欢的句子呢?1我自横刀向天笑,去留肝胆两昆仑。2力拔山兮气盖世!3天生万物以养人,人无一德以报天。4黄金若粪土,肝胆硬如铁。5策马渡悬崖,弯弓射胡月。6人头做酒杯,饮尽仇雠血。7扬鞭慷慨莅中原神一样的KPL四大错觉eStar最强,Hero平庸,AG能夺冠,QG最菜每次KPL比赛进行到小组赛都会给观战玩家一个非常奇妙的错觉,eStar最强,Hero最平庸,AG是冠军,QG最菜。今年的感觉是这样吗?貌似今年小组赛带来的同样是这个魔咒。eStar世冠小组赛第二周A组出线名额已经确定B组QG最先拿到出线名额世界冠军杯第二周第一天比赛已经结束,MTG31战胜RW侠收获2积分确定自己的小组赛名额。武汉eStar30东莞Wz零封东莞Wz的eStar积两个胜场积分。重庆QG31战胜佛山GK积高速读写,优盘里的颜值担当,台电锋芒Pro128G优盘评测优盘作为大家身边常见的数码产品,平常装个系统存储数据或者配合投影电视打印机当做车载播放源都是实用的选择,尤其是没有网络的情况下,优盘的重要性也就体现出来了。随着科技的发展,优盘的容省钱就上京喜同款护发素比拼多多还便宜浓浓夏日,饮料是必不可少的,在众多饮料中,我最喜欢的就是康师傅冰红茶了。把买来的冰红茶先放到冰箱中冷藏起来,待到下班回到家中,从冰箱中取出一瓶喝上一口,那种冰爽的感觉从喉咙直灌胃中乌龙球成本届欧洲杯最佳射手,网友建议蚂蚁链收录乌龙球时刻赛场上会出现哪些离谱画面?对于这届乌龙球多到创造历史的欧洲杯,各种由乌龙球创造的离谱瞬间数不胜数。你见过哪届欧洲杯光小组赛就出现了8粒乌龙球?直接超过了过去5届欧洲杯的总和,网友戏家居清洁神器世净变频杀菌超声波清洗机为你解决清洗烦恼家里的眼镜珠宝手表牙套等东西脏了会怎么清洗呢?对不少朋友来说,眼镜自己清洗一下就算了,可珠宝手表等比较贵重且精密的产品,出去清洗收费不菲,如果自己清洗,处理操作不慎容易造成损伤损坏600W功率626Wh超大容量!便携户外电源卡旺达电600评测对喜欢自驾玩户外的朋友来说,一款大容量的户外电源必不可少,毕竟闲暇时间和亲朋好友一起外出自驾游玩,大家带的数码产品也比较多,仅靠车载电源无法满足用电的需求。如果所处的地方没有宾馆,
女仆咖啡樱桃雪顶GIF展示四款新星元曝光,水果不够用了妲己女仆咖啡的新星元樱桃雪顶的特效目前已经曝光,同时女仆咖啡的另外几款星元也给出了概念图,姐夫在第一时间为大家做了GIF动态对比图,来看看这款星元值不值得入手吧!首先,樱桃雪顶的海最终幻想像素重制系列FF6将于明年2月发售史克威尔艾尼克斯(SquareEnix)宣布,最终幻想像素重制系列的最终幻想6将于2022年2月在iOS安卓以及PCSteam商店推出。SE在一份声明中表示为了给玩家带来尽可能最好CSGO为啥茄子冬瓜都在喷老六?自由人和老六是两个概念在游戏中,我们经常看到茄子和冬瓜喷馒头是毒瘤。我忍不住想。为什么玩老六的时候会喷?第六位法老怎么了?茄子wdnmd包子,你真的是终极老六,真的,你被炸死了,真的是老六!真是个小伙子原神迪奥娜角色设定分析猫儿娘傲娇属性加上米味设计简直是让我原地升天!!是抽到的第一时间我就对着她的建模沉默良久最后得出好特么可爱,躺在床上流着口水吸溜吸溜地笑半天的程度,像我这种完完全全的xp党,能在宵铁粉管泽元罕见发飙GEN,LCK首发挑战赛,银河战舰Gen铁粉遭声讨最近转会期结束,LCK也是早早的进入到了休赛期,由于疫情原因,LCK停止了所有活动包括线上活动,而此时的LPL德杯赛事正在激情上演,鏖战正酣,惹得LCK网友羡慕嫉妒恨,咬牙切齿甚至高风险高收益,此番道理亘古不变,亦正亦邪才是最真实的江湖武侠主角一般来说都是正面人物,但并非每一个所谓的大侠都是正气凛然的,江湖中也不会缺道貌岸然的伪君子,也有落井下石的小人更有刀口舔血的亡命之徒,而正因为如此,个性不同的人格组成的江湖TESvsRNG德杯8强首战外媒对LPL新赛季队伍排名预测外媒对LPL新赛季队伍排名预测外媒LeagueonLock对LPL新赛季第617名队伍进行了排名预测(前六暂未做排名),其中FPX仅排第13名,iG排第15名,具体排名如下6。WB王者荣耀创意结合传统文化,个性英雄获赞无数在三国演义中的孙策,字伯符,汉末群雄之一,孙吴政权的奠基者之一。三国演义称其武勇犹如霸王项羽,绰号小霸王。夺取豫章郡后统一江东,同年4月,正当孙策准备发兵北上之时,在狩猎时为许贡三姬魔恋战纪圣诞节的真相各位城主,马上就是一年一度的圣诞狂欢节了,姬魔恋战纪也特地准备了圣诞节版本呢,这次更新之后会上架圣诞新时装哦,快来跟我一起看看吧!2021圣诞节福利礼包发放登陆游戏可领取节日福利礼游戏将成新风口游戏大厂如何防沉迷近日,在广州举行的2021中国游戏产业年会上,中国音像与数字出版协会游戏工委与中国游戏产业研究院发布2021年中国游戏产业报告(以下简称报告)。报告中的数字背后勾勒出游戏产业一年的传奇3手游怀旧版复古三职业该怎么去选择?哈喽呀大家好啊,今天给大家讲讲传奇3,现在有一款传奇3怀旧款的手游版已经上线了,有好多老玩家都知道传奇3真的是青春回忆了,承载了很多的回忆啊。(文末有喜)传奇3手游版每隔两天10点