我应该将Junit @Category的接口类放在哪里?

阿萨夫

我想定义项目范围的接口,以在@Category批注中使用,并配置Maven以在构建整个项目时排除其批注的测试。

应用程序项目中,有一个我要分类的测试:

@Category(Integration.class)
@Test
public void testExternalResource() { ... }

那个设定:

我已经建立了一个多模块的Maven项目:

/container (has a pom with <modules> element)
    /parent (all other modules inherit from its pom. has no source, only pom)
    /util (other modules are depending on it)
    /infra
    /application (depending on infra and util, inherits from parent)

作为基础设施上的怪胎:),我想将我的整个项目配置为排除任何模块中的组。因此,在模块中,我定义了:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-surefire-plugin</artifactId>
    <version>2.16</version>
    <configuration>
         <excludedGroups>com.mycompany.test.Integration</excludedGroups>
    </configuration>
</plugin>

我已将Integration接口放入util模块(在中util/src/test/java),所有模块都可以看到:

package com.mycompany.test;
public interface Integration {}

而且因为它是a test-jar所以我已经utilapplication进行了正确的配置

错误:

跑步时mvn clean install,我正在

[ERROR] Failed to execute goal org.apache.maven.plugins:
    maven-surefire-plugin:2.16:test
    (default-test) on project util: Execution default-test of goal
    org.apache.maven.plugins:maven-surefire-plugin:2.16:test
    failed: There was an error in the forked process
[ERROR] java.lang.RuntimeException:
    Unable to load category: com.mycompany.test.Integration

好吧,当然该课程不可用-我在项目第一个模块的测试罐中塞满了它。:(

我应该在哪里放置我的Integration界面,以便它对我的mvn配置和我的源代码可用?

亚伦·迪古拉(Aaron Digulla)

创建一个新的Maven模块,并将接口放在下src/main/java/确保junit可用作编译时依赖项(<scope>compile</scope>)-基本上是在构建其他测试可以使用的依赖项。因此src/test/java,像往常一样,将有助于其他测试的代码放到main中,而将其用于的测试则放在

这一步感觉有点奇怪,但是请考虑如何打包junit自身。从的角度来看junit,它只是一个普通的Java库,因此所有代码都放入了main

当您需要此模块时,可将其用作测试依赖项 <scope>test</scope>

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

我应该把我自己写的Python包放在哪里?

来自分类Dev

我将存根放在哪里?

来自分类Dev

我应该将Junit @Category的接口类放在哪里?

来自分类Dev

在C ++中将接口类放在哪里

来自分类Dev

我应该将非模型课程放在哪里?

来自分类Dev

我将PDO放在哪里?

来自分类Dev

我应该将Ember-I18n的翻译放在哪里?

来自分类Dev

我将自动生成的类放在哪里?

来自分类Dev

我应该将全局宏放在哪里?

来自分类Dev

我应该在哪里将META-INF放在Gradle中?

来自分类Dev

将支持功能放在类中的最佳位置在哪里?

来自分类Dev

闭环-我应该放在哪里?

来自分类Dev

我应该把NSNotification的removeObserver放在哪里

来自分类Dev

我应该将Ensembles uniqueIdentifier放在哪里?

来自分类Dev

将容器放在哪里?

来自分类Dev

我应该把我自己编译的软件放在哪里?

来自分类Dev

我应该将游戏循环放在哪里?

来自分类Dev

.tolowerCase()我应该放在哪里?

来自分类Dev

接口在C#分层应用中应该放在哪里

来自分类Dev

我应该把我自己编译的软件放在哪里?

来自分类Dev

我应该将默认值放在哪里?

来自分类Dev

我应该将ssh私钥放在哪里?

来自分类Dev

我将图像资源放在哪里?

来自分类Dev

重击/ Awk。我应该将IF声明放在哪里?

来自分类Dev

依赖倒置原则-接口应该放在哪里?

来自分类Dev

Laravel5:我应该将仅包含后端设计类的css文件放在哪里?

来自分类Dev

我应该在哪里将build.groovy文件放在我的grails项目中?

来自分类Dev

我应该把 .Appimages 文件放在哪里?

来自分类Dev

我应该把我的 lang 属性放在哪里?