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

这么好用的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就会为我们创建单元测试文件。

体验服28日更新4英雄调整芈月减速移除,达摩必出专精在王者荣耀体验服12月28日中午进行了一波停机更新,对达摩芈月橘右京暃四名英雄做出了调整,同时还对新版暴君buff又进行了改动。达摩专精装加强专精装阈值被动大招眩晕时间追加0。5s任天堂社长表示Switch明年年初可能依旧缺货昨日(12月27日),任天堂社长古川俊太郎在社交平台上发布消息称,Switch掌机的供应可能在2022年初停滞,造成这一现象的主要原因为全球半导体短缺和物流业的混乱。据悉,早在今年暗黑破坏神不朽暴雪的设计功力发挥的淋漓尽致自从2018年公布不朽的消息至今,经历了或者正在经历着的测试一共有三次。就目前游戏的本体来讲,可以说是几近完备。后续剩下的工作,可能除了针对于一些话题性比较强的关键点进行优化外,再以铁索为引,雷公助我!黑科技天雷弓参上前言本文首发于微信公众号三国志战略版大百科,非法搬运必追究注本文的观点和评价仅限于当前内容,请勿以偏概全。特此鸣谢用户triplility,提供的实战素材。由阿夜提供阵容思路。从张暮影战神冰雪合击刘亦菲同款热血合击手游大家好,今天小编来给大家说一下这款冰雪合击,刘亦菲同款热血合击手游!暮影战神冰雪合击是一款极为好玩的冰雪合击传奇手游各种野怪全靠玩家们打出来的游戏拥有极为丰富的玩法模式,融入了大量Steam特惠!2D恐怖佳作潜渊症史低仅售22。25元作为一名资深游戏宅,随时掌握SteamEpicGOG等平台的夏季特卖冬季特卖以及每周特惠等优惠资讯应是基本技能,今天小编为大家带来新一轮特价促销游戏资讯。目前2D恐怖游戏潜渊症(B原神2。3活动开启,入坑组阵容要注意,刻晴卢姥爷就别再养了今天我们也是迎来了2。3版本的活动开启,同时在直播活动中都通过兑换码换到了奖励,虽然还是一如既往地抠。不过好消息是,每次伴随着新版本活动开启,都有很多入坑或者回坑的玩家们加入。对于童年回忆杀!乐高刺猬索尼克绿色山丘套装为纪念刺猬索尼克系列30周年,乐高中国官博公布21331乐高刺猬索尼克绿色山丘套装,该款将于2022年1月1日起正式开售。套装信息套装编号21331套装名称刺猬索尼克绿色山丘发售时原神0命神甘的四星武器选择天目神罗与西风神甘的优劣对比作者NGA夜月一帘幽梦醒先上结论天目神里并不适合3拐1,最佳选择是带西风剑打神甘双核,之前计算神罗比神甘更优秀的帖子几乎都是按雾切算的,而雾切神里实际持有率可能10都不到。以下为具传世手游那些被商人炒起来的装备你还记得吗?热血传奇之中最受欢迎的是1。76版本,这个版本有很多非常经典的装备。有很多贵重的物品。现在这些装备还和以前一样吗?在1。76版本之中,六大重装最吸引人。全新衣服非常美丽。40级衣服GenshinImpact在1月5日获得新区域角色等GenshinImpact的2。4更新,飞行中的流逝色彩,将于1月5日抵达那是下周!此补丁包含大量内容,包括新区域圆宫和两个新角色,神和和云锦。玩家可以通过扭蛋来抽取角色和物品,发
骑马与砍杀2出来了,改变以往根深蒂固的缺陷,评分高达8分今天为大家推荐一款评分还比较高的游戏,它就是骑马与砍杀2霸主,目前抢先体验版已经上线了,不少大神们和新手们都开始纷纷尝试。尝试完了之后,很多人还给出了评分,综合整理一下就是八分,可绝地求生是怎么一步一步走向衰败?纯粹就是蓝洞自己作的!说起现在最流行的游戏模式,可能就是大逃杀模式了,大逃杀模式游戏从很久以前就已经存在了,比如说那个时候非常流行的H1Z1,但是后来绝地求生的出现,一下子让玩家们喜欢上了这个游戏,最初时值中秋佳节来欣赏英雄联盟角色设计里的中国风英雄联盟(LeagueofLegends,简称LOL)发行至今已经超过十年,依然是全球最炙手可热的多人在线MOBA游戏。游戏里有数百个风格和技能各异的英雄,可以说千人千面,每个玩家古中国文明强度太高帝国时代4完整多人对战实况公开帝国时代4(AgeofEmpires4)的技术压力测试已在周末举行,更多细节终于跟玩家们见面了。据部分玩家透露,测试版的游戏中,微软把中国文明的强度调的非常高,在建筑兵种民族属性各顽皮狗真的在做了最后的生还者2多人模式游戏有新的进展顽皮狗在确认最后的生还者2(TheLastofUs2)的多人游戏模式不再是主游戏的一部分后,已经对其即将进行的多人游戏项目进行了简短的更新,距今已有两年。而近日,顽皮狗再次回应粉丝移动端体验真实战场战地Mobile曝光实机演示游戏画面在Alpha测试的新片段中玩家首次看到了战地移动版(BattlefieldMobile),意味着以后玩家们可以在手机上体验端游战地那样的真实战场了。EA首次将战地系列带入移动领域,有了这些征兆,王者就要开始连跪了,小心点王者荣耀对于很多朋友来说都是一款非常好玩的游戏,这款游戏由于操作简单而且随时随地都可以拿出手机玩一把,所以受到了很多玩家朋友们的喜爱,而且在这款游戏之中,每一个玩家都想要上到更高的LOL手游真的来了,官方已发邀请函,你收到了吗?英雄联盟作为第一网友很多朋友们都特别喜欢玩,不过现在朋友们都长大了,也没有什么时间去玩英雄联盟了,很多朋友们都开始玩王者荣耀,不过王者荣耀相对于英雄联盟来说还是有很大差距的,所以有测试服遇到神仙使命召唤先锋玩家已经在举报开挂者使命召唤先锋(CallofDutyVanguard)测试版可能还有最后几个小时,但玩家已经抓到了游戏中的参与者作弊。玩家使用穿墙射击和自动瞄准的视频证据已经在网上出现,主要是在社交新MMORPG超火爆新世界亚马逊将为玩家免费转移服务器减少排队亚马逊将在未来两周内为旗下爆火的MMO游戏新世界(NewWorld)玩家提供免费的服务器转移,这款MMO游戏刚一推出就火爆无比,随之而来的是冗长的服务器排队时间。新世界刚一推出,最暗黑破坏神2重制版记忆里的真实让经典毁誉参半通过暗黑破坏神2重制版(DiabloIIResurrected,),动视暴雪团队做了一件不可思议的事情,他们成功地以玩家脑海中记忆的方式重现了暗黑破坏神II。今天回过头来看原来的游