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

画册设计公司排行榜/流程优化

画册设计公司排行榜,流程优化,用表格做网站教程,龙华网络推广公司博客地址:http://www.moonxy.com 一、前言 JUnit 是一个由 Java 语言编写的开源的回归测试(回归测试是指重复以前全部或部分的相同测试)框架,由Erich Gamma 和 Kent Beck 创建,用于编写和运行可重复的测试,…

博客地址:http://www.moonxy.com

一、前言

JUnit 是一个由 Java 语言编写的开源的回归测试(回归测试是指重复以前全部或部分的相同测试)框架,由Erich Gamma 和 Kent Beck 创建,用于编写和运行可重复的测试,它是用于单元测试框架体系 xUnit 的一个实例。所谓单元测试也就是白盒测试。JUnit 是 Java 开发使用最为广泛的框架。Spring Boot 在 JUnit 基础上提供了一些实用程序和注解,用来帮助我们测试应用程序。

二、JUnit 测试

2.1 基本功能

JUnit 3.x 版本通过对测试方法的命名(test+方法名)来确定是否是一个测试,且所有的测试类必须继承 TestCase。

JUnit 4.x 版本全面引入了注解来执行我们编写的测试,JUnit 中有两个重要的类(Assume 和 Asset),以及其他一些重要的注解(BeforeClass、AfterClass、After、Before、Test 和 Ignore 等)。其中,BeforeClass 和 AfterClass 在每个类加载的开始和结束时运行,需要设置 static 方法;而 Before 和 After 则在每个测试方法开始之前和结束之后运行;Test 为一个测试用例;Ignore 表示跳过某个测试用例,可以对测试用例选择执行。

package lucene.file.search.tester;import static org.junit.Assert.assertEquals;import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;public class JunitTest {@BeforeClasspublic static void beforeClassTest(){System.out.println("beforeClassTest start......");}@Beforepublic void beforeTest(){System.out.println("beforeTest start......");}@Testpublic void test1(){int num1 = 5;int num2 = 6;System.out.println("test1");assertEquals("equals or not :",1,num2-num1);}@Testpublic void test2(){int num1 = 5;int num2 = 8;System.out.println("test2");assertEquals("equals or not :",2,num2-num1);}@Afterpublic void afterTest(){System.out.println("afterTest start......");}@AfterClasspublic static void afterClassTest(){System.out.println("afterClassTest start......");}
}

运行结果如下:

控制台 Console 输出为:

beforeClassTest start......
beforeTest start......
test1
afterTest start......
beforeTest start......
test2
afterTest start......
afterClassTest start......

JUnit 测试结果展示为:

2.2 Assert

上面代码中,我们使用了JUnit 的 Assert 类提供的 assert 方法,我们可以在测试类中静态地导入这些方法,主要包括:

assertEquals("message",A,B),判断 A 对象和 B 对象是否相等,这个判断在比较两个对象时调用了 equals() 方法;

assertSame("message",A,B),判断 A 对象与 B 对象是否相同,之前的 assert 方法是检查 A 与 B 是否有相同的值(使用了 equals 方法),而 assertSame 方法则是检查 A 与 B 是否为同一个对象(使用的是 == 操作符);

assertTrue("message",A),判断 A 条件是否为真;

assertFalse("message",A),判断 A 条件是否为假;

assertNotNull("message",A),判断 A 条件是否不为 Null;

assertArrayEquals("message",A),判断 A 数组与 B 数组是否相等。

2.3 Suite

JUnit 设计 Suite 的目的是一次性运行一个或多个测试用例,Suite 是一个容器,用来把几个测试类归在一起,并把它们作为一个集合来运行,测试运行器会启动 Suite,而运行哪个测试类由 Suite 决定。如下:

package lucene.file.search.tester;import org.junit.runner.RunWith;
import org.junit.runners.Suite;@RunWith(Suite.class)
@SuiteClasses({TestSuite1.class, TestSuite2.class})
public class JunitTest {// 此类为空,但依然可以运行JUnit测试,运行时,它会将TestSuite1.class和TestSuite2.class中的所有测试用例都执行一遍
}

三、Spring Boot 单元测试

Spring Boot 使用一系列注解来增强单元测试以支持 Spring Boot 测试。通常 Spring Boot 单元测试结构如下:

@RunWith(SpringRunner.class)
@SpringBootTest(classes=SpringbootApplication.class)
public class UserRepositoryTest {@Autowiredprivate UserService userService;@Testpublic void testService() {// 测试内容
    }}

其中,@RunWith 是 JUnit 标准的一个注解,用来告诉 JUnit 单元测试框架不要使用内置的方式进行单元测试,而应使用 RunWith 指明的类来提供单元测试,所有的 Spring 单元测试总是使用 SpringRunner.class。

@SpringBootTest 用于 Spring Boot 应用测试,它默认会根据包名逐级网上找,当测试类和主程序在同一个包下时,可以不用配置 classes,Spring 会一直找到 Spring Boot 主程序,也就是通过类注解是否包含@SpringBootApplication 来判断是否是主程序,并在单元测试的时候启动该类来创建 Spring 上下文环境。但当测试类和主程序不在同一个包下时,需要添加 classes,指定主程序启动类,如 classes=SpringbootApplication.class。

具体测试用例可以参考本博客的文章:Spring Boot 入门之持久层篇(三)

注意:Spring 单元测试并不会在每个单元测试方法前都启动一个全新的 Spring 上下文,因为这样太耗时。Spring 单元测试会缓存上下文环境,以提供给每个单元测试方法。如果某个单元测试方法改变了上下文,比如更改了 Bean 定义,你需要在此单元测试方法上加上 @DirtiesContext 以提示 Spring 重新加载 Spring 上下文。

转载于:https://www.cnblogs.com/cnjavahome/p/8417198.html

http://www.jmfq.cn/news/5103919.html

相关文章:

  • 做的网站很卡/系统清理优化工具
  • 网址大全100个/站优云seo优化
  • 百度一下做网站/公司网站免费自建
  • 网站开发合同技术目标/今天刚刚发生的重大新闻
  • 江苏屹峰建设网站/郑州seo关键词排名优化
  • 微信网站建设报价单/站长统计app下载免费
  • 济南网站建设公司电子商务网站/在线seo
  • 12306网站是阿里做的/排名优化怎么做
  • 贵阳网站设计阳光创信好吗/找培训机构的平台
  • 如何在大网站做外链/八百客crm系统登录入口
  • 查互做蛋白的网站/1688黄页大全进口
  • 同性性做视频网站/广州网站优化排名
  • 建设银行官方网站个人/公司的网站
  • 做一个推广网站多少钱/武汉网优化seo公司
  • 智慧团建登录入口官网电脑版/西安百度网站快速优化
  • 网站优化排名优化/网络营销推广活动
  • 360提交网站备案/什么平台引流最快
  • 百度的广告怎么免费发布/上海seo外包公司
  • 设计logo网站免/线下营销推广方式都有哪些
  • 全能网站建设/ip软件点击百度竞价推广
  • 政府网站字体/优化大师客服电话
  • 织梦下载网站模板/nba最新交易消息
  • 创网站需要什么/企业网站推广方案设计
  • 做网站需要服务器和什么软件/百度推广搜索排名
  • 怎样制作网站二维码/今日新闻国内大事件
  • 网站建设工资待遇/网上教育培训机构排名
  • 做视频的软件模板下载网站/seo搜索引擎优化步骤
  • 高价词网站源码/二级域名免费分发
  • 可以做puzzle的网站/网站seo招聘
  • 做电影种子下载网站违法吗/最新热搜榜