当前位置:   article > 正文

java 单元测试创建到测试(直接连接数据库方法)_java写一个测试类查询数据库

java写一个测试类查询数据库

一.JUnit5常用注解

@Before注解用于在测试方法执行之前执行一次,可以用来设置测试环境、准备数据等。

@After注解用于在测试方法执行之后执行一次,可以用来清理测试环境、处理异常等。

@Test 表示方法是测试方法。他的职责非常单一不能生命任何属性,拓展的测试将会有Jupiter提供额外测试

@ParameterizedTest 表示方法是参数化测试。

@RepeatedTest 表示方法课重复执行。

@DisPlayName 为测试类或者测试方法设置展示名称

@BeforEach 表示在每个单元测试之前执行

@AfterEach 表示在每个单元测试之后执行

@BeforeAll 表示在所有单元测试之前执行

@AfterAll 表示在所有单元测试之后执行

@Tag 表示单元测试类别,类似于JUnit4中的@Catgories

@Disabled 表示测试类或测试方法不执行,类似于JUnit4中的@Ignore

@Timout 表示测试方法运行如果超过了指定时间将会返回错误

@ExtendWith 为测试类或测试方法提供扩展类引用


下面举例说一个例子:

整体思路:测试的时候我们一般不会在原数据库进行测试,一般会建立一个同结构同表名的测试数据库进行测试。

1.首先我们需要建立测试类:

通常在admin包下找到src下面的main包 创建与main包的同级测试包test作为测试包。

规则:测试包下面建立与main报下面相同名的包级(规则习惯);现在比如我们需要测试的是service层的代码,我们会在test下面的创建的java包里创建一个包名为service接口层的路径。并在包下创建测试类

2.一般情况@Before @After @Test 来进行单元测试

如果用的是JUnit5的情况下在测试类上不需要家@RunWith注解只需要加@SpringBootTest注解.

@SpringBootTest是JUnit5中用于测试Spring Boot应用程序的注解。它可以自动配置Spring上下文并启动嵌入式Web服务器,以便在测试期间可以轻松地访问应用程序。

3.重点:

在@Before中的数据初始化的时候我们应该怎么连接数据库:(举例)打

  1. @Before
  2. public void setUp() throws SQLException, SQLException {
  3. String url ="jdbc:mysql://localhost:3306/ruoyi_test";
  4. String user="root";
  5. String password="password";
  6. Connection conn= DriverManager.getConnection(url,user,password);
  7. Statement stmt=conn.createStatement();
  8. ResultSet rs=stmt.executeQuery("select count(*) from w_category");
  9. rs.next();
  10. int count = rs.getInt(1);
  11. System.err.println("Table count is: " + count);
  12. rs.close();
  13. stmt.close();
  14. conn.close();
  15. }

二.@Test测试(常用断言)

Assertions.assertThrows() 测试异常情况时的断言

Assertions.assertTimeout()为测试方法设置了超时时间

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/383421
推荐阅读
相关标签
  

闽ICP备14008679号