想象一下,我有两个配置文件,一个用于生产,另一个用于测试环境。问题是,我只想为开发环境而不是生产执行一些测试。
我试图把@ignore,但我不能说只是在prod构建期间忽略它。我尝试使用maven的sure-fire插件,但我再次无法使用每个配置文件的不同行为。
(PS:这是一个spring-hibernate项目,有如此不同的技术,如hazelcast,jms(activeMq),scheduler(quartz),否则......)
任何帮助都将不胜感激。
答案 0 :(得分:2)
我们有一个系统,我们有三种测试尺寸(小型,中型和大型)。我们创建了一个注释,允许我们用这些尺寸标记测试。我们还创建了一个规则来检查特定的env变量,并将跳过基于大小的测试。对不起,但我没有能力发布代码,但我们就是这样做的。
以下是关于Google如何做到这一点的帖子(我们根据Google提供的内容)
http://blog.utest.com/how-google-tests-software-small-medium-and-large/2011/04/
答案 1 :(得分:2)
您可以使用maven.test.skip
中的<profile>
<id>noTest</id>
...
<properties>
<maven.test.skip>true</maven.test.skip>
...
</properties>
...
</profile>
参数忽略junit测试。您还可以将参数设置为配置文件的一部分。
{{1}}
答案 2 :(得分:0)
Maven的Surefire插件:测试的包含和排除