如何启动Java的单元测试

上一篇讲了选择testng作为我们的单元测试基础框架,那么testng在项目中是怎么启动的呢,这里分为ide工具(idea)怎么启动和自动化运行怎么启动。

在讲清楚如何启动时,我们先写两个单元测试,新建一个maven工程的java项目,方式很简单,这里就不演示了,可以看下这个示例

引入testng

在maven的pom.xml中引入testng的包,一般情况下我们会选择使用量最多的包。

<!-- https://mvnrepository.com/artifact/org.testng/testng -->
<dependency>
    <groupId>org.testng</groupId>
    <artifactId>testng</artifactId>
    <version>6.14.3</version>
    <scope>test</scope>
</dependency>

新建两个test类。

public class DemoTest {
    @Test
    public void testFail(){
        Assert.assertFalse(true);
    }

    @Test
    public void testSuccess(){
        Assert.assertTrue(true);
    }
}

public class DemoV1Test {
    @Test
    public void testFail(){
        Assert.assertFalse(true);
    }

    @Test
    public void testSuccess(){
        Assert.assertTrue(true);
    }
}

idea 如何启动testng的单元测试

打开一个test文件,鼠标放在test类上,可以看到运行按钮。
在这里插入图片描述
启动执行即可。

我一般喜欢看到端到端的东西,到这里这里有两个疑问。

  1. idea是如何识别这个类或者这个方法是单元测试方法的呢?
  2. 我们的这个test类并没有main方法,点击运行的时候,idea是如何启动这个类的?

idea是如何识别单元测试

针对这个问题,没有找出官方答案,但是肯定是和idea识别main方法一样,idea看到一个类是public声明的,并且有@Test注解声明的方法,就会把这个类作为Test可以执行类,所以按照约定,一个方法可以通过Test执行的条件要满足如下:

  1. class是public声明。
  2. method也必须是public声明,可以带static, final等关键字,也可以不带。

idea是如何启动单元测试

既然@Test的类没有main方法,idea 肯定是通过插件的形式执行,我们到idea的插件库里搜索一下,果真能搜索到。
在这里插入图片描述
那么是不是我们diable这个插件之后,testng就不能运行了呢,我们试一下之后发现确实Test类上已经没有运行按钮了。

在这里插入图片描述
enable这个插件之后,就恢复正常了。

所以我们的结论是testng在idea上运行是通过插件来启动执行的。

maven是如何执行单元测试的

我们到项目目录下执行:

mvn install

控制台就输出以下结论。

在这里插入图片描述

和我们写的代码是一致的。

那我们执行mvn命令时不想执行单元测试怎么办呢,可以加上参数-DskipTests。

mvn install -DskipTests

执行结果就不再执行单元测试。
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值