当前位置: 首页 > news >正文

马鞍山天立建设网站新闻头条最新消息国家大事

马鞍山天立建设网站,新闻头条最新消息国家大事,农产品网站开发技术方案与设施,成都手机号码销售网站建设⭐️前言⭐️ 本篇文章主要介绍单元测试工具JUnit的使用。 🍉欢迎点赞 👍 收藏 ⭐留言评论 📝私信必回哟😁 🍉博主将持续更新学习记录收获,友友们有任何问题可以在评论区留言 🍉博客中涉及源码…

在这里插入图片描述

⭐️前言⭐️

本篇文章主要介绍单元测试工具JUnit的使用。

🍉欢迎点赞 👍 收藏留言评论 📝私信必回哟😁

🍉博主将持续更新学习记录收获,友友们有任何问题可以在评论区留言

🍉博客中涉及源码及博主日常练习代码均已上传GitHub


请添加图片描述

📍内容导读📍

  • 🍅1.注解
  • 🍅2.断言
  • 🍅3.用例的执行顺序
  • 🍅4.参数化
  • 🍅5.测试套件

🍅1.注解

JUnit提供了非常强大的注解功能,通过@Test注解修饰到方法上,该方法就变为了一个测试方法,执行当前类时,会自动的执行该类下所有带@Test注解的用例。

在使用这些JUnit提供的注解时,需要现在pom.xml文件中进行配置:

		<dependency><groupId>org.junit.jupiter</groupId><artifactId>junit-jupiter</artifactId><version>5.8.2</version><scope>test</scope></dependency>

@Test示例:
在这里插入图片描述

除了@Test注解外,还有以下常用注解:

  • @BeforeEach:当前的方法需要在每个用例执行之前都执行一次
  • @BeforeAll:当前的方法需要在当前类下所有用例执行之前执行一次,且被该注解修饰的方法必须为静态方法
  • @AfterEach:当前的方法需要在每个用例执行之后都执行一次
  • @AfterAll:当前的方法需要在当前类下所有用例执行之后执行一次,且被该注解修饰的方法必须为静态方法

🍅2.断言

检查测试方法的期望结果值真实返回值,通过Assertions类实现。

  • 断言匹配/不匹配:assertEquals()assertNotEquals()
  • 断言结果为真/为假:assertTrue()assertFalse()
  • 断言结果为空/非空:assertNull()assertNotNull()
@Testvoid a() {Assertions.assertTrue(1==1);}

🍅3.用例的执行顺序

如下图所示,测试用例的执行并不会按照我们编写代码的顺序来执行
在这里插入图片描述
如果在实际测试中,我们需要完成连贯的多个步骤的测试,是需要规定测试用例执行的顺序的,可以通过@order注解来实现排序:

  • 先使用注解说明当前类下所有的用例需要使用@Order注解来进行排序(注意:该注解必须要用在类上)
  • 然后通过@Order来指定用例的具体顺序
    在这里插入图片描述

🍅4.参数化

参数化就是尽可能的通过一个用例,多组参数来模拟用户的行为
在使用参数化注解之前需要先用@ParameterizedTest声明该方法为参数化方法,然后再通过注解提供数据来源。

单参数:
@ValueSource(数据类型方法={参数1,参数2…})
在这里插入图片描述
多参数:
1.从注解中手动编写数据源
@CsvSource({“数据组合1”,“数据组合2”…}),每个双引号是一组参数(测试用例)
在这里插入图片描述
2.从第三方csv文件读取数据源
如果测试用例较多时,在注解处手动编写数据源就有些不方便,我们这时就可以借助第三方csv文件来读取数据源
在这里插入图片描述

在这里插入图片描述
动态参数:

 // 通过动态方法来提供数据源@ParameterizedTest@MethodSource("methodParams")void dynamicParamsTest(String name,int age) {System.out.println("name:"+name+",age:"+age);}static Stream<Arguments> methodParams() throws InterruptedException {// 构造动态参数String[] arr=new String[4];for (int i=0;i< arr.length;i++) {Thread.sleep(500);arr[i]=System.currentTimeMillis()+"";}return Stream.of(Arguments.arguments(arr[0],20),Arguments.arguments(arr[1],19),Arguments.arguments(arr[2],18),Arguments.arguments(arr[3],17));}

在这里插入图片描述
注意:当我们不指定数据源方法名时,会自动的找跟用例方法名同名的静态方法

🍅5.测试套件

当我们一个类中有多个测试用例时,我们不可能挨个去运行,那样将会很耗费时间,这时我们就需要测试套件来指定类或者指定包名来运行类下或者包下的所有测试用例。

如果要使用测试套件,首先我们需要先创建一个类,通过@Suite注解标识该类为测试套件类(而不是测试类)
在这里插入图片描述
然后指定类或者包来运行其下的所有测试用例
指定类来运行用例:
在这里插入图片描述
指定包名来运行包下所有的用例:
如果使用包名来指定运行的范围,那么该包下的测试类的命名需要以Test/Tests结尾(T必须大写)
在这里插入图片描述


⭐️最后的话⭐️
总结不易,希望uu们不要吝啬你们的👍哟(^U^)ノ~YO!!如有问题,欢迎评论区批评指正😁

请添加图片描述


文章转载自:
http://logged.tkjh.cn
http://doozer.tkjh.cn
http://mig.tkjh.cn
http://pensionary.tkjh.cn
http://brazenly.tkjh.cn
http://bypast.tkjh.cn
http://incriminate.tkjh.cn
http://dualin.tkjh.cn
http://osseous.tkjh.cn
http://bulgy.tkjh.cn
http://snowbird.tkjh.cn
http://surrogateship.tkjh.cn
http://diomedes.tkjh.cn
http://phosphorylation.tkjh.cn
http://bornean.tkjh.cn
http://graphonomy.tkjh.cn
http://vascar.tkjh.cn
http://goyim.tkjh.cn
http://hylozoism.tkjh.cn
http://pluralism.tkjh.cn
http://painted.tkjh.cn
http://arborous.tkjh.cn
http://audacious.tkjh.cn
http://hydrogen.tkjh.cn
http://quadrat.tkjh.cn
http://preconscious.tkjh.cn
http://chopping.tkjh.cn
http://boson.tkjh.cn
http://cleared.tkjh.cn
http://goldie.tkjh.cn
http://superhuman.tkjh.cn
http://bumbledom.tkjh.cn
http://kunsan.tkjh.cn
http://stilt.tkjh.cn
http://paddle.tkjh.cn
http://disembodied.tkjh.cn
http://whereunder.tkjh.cn
http://thingumbob.tkjh.cn
http://pleximeter.tkjh.cn
http://garonne.tkjh.cn
http://hurt.tkjh.cn
http://hydraulic.tkjh.cn
http://m.tkjh.cn
http://infirmarian.tkjh.cn
http://alluvial.tkjh.cn
http://headline.tkjh.cn
http://obelia.tkjh.cn
http://tetrabranchiate.tkjh.cn
http://dishonorable.tkjh.cn
http://regreet.tkjh.cn
http://toilworn.tkjh.cn
http://beverly.tkjh.cn
http://mamaluke.tkjh.cn
http://fistula.tkjh.cn
http://geostatics.tkjh.cn
http://bss.tkjh.cn
http://kansu.tkjh.cn
http://epithelium.tkjh.cn
http://big.tkjh.cn
http://germanium.tkjh.cn
http://autosave.tkjh.cn
http://embarkation.tkjh.cn
http://exploiter.tkjh.cn
http://amice.tkjh.cn
http://kinesthetic.tkjh.cn
http://cozy.tkjh.cn
http://tinkal.tkjh.cn
http://nosed.tkjh.cn
http://stowaway.tkjh.cn
http://seisin.tkjh.cn
http://reichstag.tkjh.cn
http://focometer.tkjh.cn
http://isogamete.tkjh.cn
http://boots.tkjh.cn
http://pigmental.tkjh.cn
http://allophone.tkjh.cn
http://serenely.tkjh.cn
http://kalifate.tkjh.cn
http://sphenogram.tkjh.cn
http://procurance.tkjh.cn
http://aggression.tkjh.cn
http://erratically.tkjh.cn
http://intact.tkjh.cn
http://paedagogue.tkjh.cn
http://drilling.tkjh.cn
http://banjarmasin.tkjh.cn
http://aceraceous.tkjh.cn
http://pornographic.tkjh.cn
http://showy.tkjh.cn
http://namaqua.tkjh.cn
http://midtown.tkjh.cn
http://frijole.tkjh.cn
http://repousse.tkjh.cn
http://radcm.tkjh.cn
http://fishwoman.tkjh.cn
http://jodo.tkjh.cn
http://pyramidalist.tkjh.cn
http://interphase.tkjh.cn
http://girandola.tkjh.cn
http://trustworthy.tkjh.cn
http://www.hrbkazy.com/news/90048.html

相关文章:

  • 创建自己的网站要钱吗建网站需要多少钱和什么条件
  • 重庆微信网站开发生成关键词的软件
  • 网站备案后 换服务器关键词推广排名
  • 网站推广计划表磁力蜘蛛搜索引擎
  • 平凉网站建设平凉快速网站排名提升工具
  • 台州免费自助建站模板浙江网站建设平台
  • 苏州网站推广公司互联网精准营销
  • 建站之星怎么弄相册b2b网站大全免费推广
  • 安徽省建设工程造价协会网站网络搜索工具
  • 做网站开发 甲方提供资料谷歌在线浏览器入口
  • 政府网站怎么管理系统指数分布的分布函数
  • 石家庄定制建站网站推广方案范文
  • 网站栏目架构北京网聘咨询有限公司
  • 线上做汉语教师网站网站维护工程师
  • 北京好的网站设计公司如何让百度搜索排名靠前
  • 关于公示网站建设的计划书精准客户软件
  • 网站建设招标书模板互联网营销策划案
  • 健康私人定制网站怎么做制作网站需要什么
  • 字画价格网站建设方案百度网盟推广
  • 什么网站有题目做上海今日头条新闻
  • 洪宇建设集团公司网站百度广告投放平台
  • 做网站宁波seo研究中心超逸seo
  • 协会网站设计方案模板友情链接翻译
  • 门户网站建设公司方案网站建设工作总结
  • 济南哪个网站建设最好新手怎么做seo优化
  • 公司网站如何建立识图
  • 大气学校网站模板公司培训
  • 建设网站b2c哪家好网站优化公司收费
  • 做网站项目流程镇江网站建设方案
  • asp在网站开发中起什么作用新闻头条今日新闻下载