不同风格的JUnit?

Svi*_*ish 0 java junit maven

我正在尝试重新编写Java,并学习如何使用Maven和JUnit.在Maven 快速启动后,我在控制台中运行了以下命令:

mvn archetype:generate \
 -DgroupId=com.mycompany.app \
 -DartifactId=my-app \
 -DarchetypeArtifactId=maven-archetype-quickstart \
 -DinteractiveMode=false
Run Code Online (Sandbox Code Playgroud)

然后,我在其正确的文件夹中获得了一个简单的App.java和AppTest.java.我现在正在查看AppTest.java并试图找出如何使用这个JUnit的东西.问题是我不理解它,而且我看起来与我在JUnit Cookbook中看到的完全不同.例如,我从Maven获得的版本具有不同的包名称,并且没有测试方法的注释.

这里发生了什么?Maven是否使用了除常规JUnit之外的其他东西?或者只是做一些奇特的事情?


更多信息

Apache Maven 3.0.2(r1056850; 2011-01-09 01:58:10 + 0100)
Java版本:1.6.0_23,供应商:Sun Microsystems Inc.

AppTest.java

package com.mycompany.app;

import junit.framework.Test;
import junit.framework.TestCase;
import junit.framework.TestSuite;

/**
 * Unit test for simple App.
 */
public class AppTest extends TestCase {
    /**
     * Create the test case
     * 
     * @param testName
     *            name of the test case
     */
    public AppTest(String testName) {
        super(testName);
    }

    /**
     * @return the suite of tests being tested
     */
    public static Test suite() {
        return new TestSuite(AppTest.class);
    }

    /**
     * Rigorous Test :-)
     */
    public void testApp() {
        assertTrue(true);
    }
}
Run Code Online (Sandbox Code Playgroud)

的pom.xml

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.mycompany.app</groupId>
  <artifactId>my-app</artifactId>
  <packaging>jar</packaging>
  <version>1.0-SNAPSHOT</version>
  <name>my-app</name>
  <url>http://maven.apache.org</url>
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
  </dependencies>
</project>
Run Code Online (Sandbox Code Playgroud)

lwe*_*ler 5

没有maven使用常规Junit.

但是这里使用的是旧版本3.8.1(没有注释,因此不需要java 5或更高版本).

只需将junit依赖关系更新到最新的junit版本(4.8.2),然后就可以编写测试,因为您习惯于使用注释.