我知道有很多关于这个的问题和答案,但我已经尝试了我读过的所有内容,你可以肯定它已经很多了。我正在使用 Spring Tool Suite 3.1.0(但还没有 Spring)、嵌入式 Maven 3.0.4 和 JUnit 4。Ubuntu 12.04。我有这个 JUnit 4 测试:
@Test
public final void testCheckAudio() {
final InputStream stream = AudioServiceImplTest.class.getResourceAsStream("/test.wav");
assertNotNull(stream);
}
test.wav 在 src/test/resources 中,我检查过它是否已复制到目标/测试类。当我运行为 ... Maven 测试时,我得到: ... 失败的测试:testCheckAudio(edu.gerher.askitcollector.test.services.AudioServiceImplTest) ... 无法执行目标 org.apache.maven.plugins:maven- surefire-plugin:2.10:test (default-test) on project ...
测试集:MyPackage.AudioServiceImplTest
测试运行:16,失败:1,错误:0,跳过:0,经过的时间:0.039 秒 <<< 失败!testCheckAudio(MyPackage.AudioServiceImplTest) 已用时间:0.005 秒 <<< 失败!java.lang.AssertionError at edu.gerher.askitcollector.test.services.AudioServiceImplTest.testCheckAudio(AudioServiceImplTest.java:238) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.lang.reflect.Method.invoke(Method .java:597) 在 org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:123) 在 org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.java:53) 在 org. apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:104) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.lang.reflect.Method.invoke(Method.java:597) at org。
我已经尝试使用“test.wav”、“/test.wav”,在 src/test/resources 中创建测试包并在那里复制文件并尝试“/MyPackage/test.wav”、“MyPackage/test.哇”。总是一样的答案。它找不到文件。
我试过 Run as... JUnit Test 和相同的 asnwers。En el pom.xml 我有
<build>
...
<resources>
<resource>
<directory>.../src/main/resources</directory>
</resource>
</resources>
<testResources>
<testResource>
<directory>.../src/test/resources</directory>
</testResource>
</testResources>
<directory>.../target</directory>
真的,谢谢你能给我的任何帮助。