测试是否可以从intelliJ IDE正常运行,但不能从命令行TestNG运行时运行

时间:2020-06-29 14:41:38

标签: java maven testng

当我从intelliJ IDE中直接运行tetst时,我正在尝试使用Maven从命令行运行测试。按预期运行的IDE测试,当我尝试运行然后使用mvn test时,我收到以下消息: / p>

-------------------------------------------------------
 T E S T S
-------------------------------------------------------
Running TestSuite
Configuring TestNG with: org.apache.maven.surefire.testng.conf.TestNG652Configurator@34c4973
log4j:WARN No appenders could be found for logger (org.apache.commons.beanutils.converters.BooleanConverter).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
2020-06-29 17:32:49 [ERROR]failed to create 'BaseTest-531000' directory
Tests run: 0, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.99 sec

Results :

Tests run: 0, Failures: 0, Errors: 0, Skipped: 0

这是我的POM.xml:


    <modelVersion>4.0.0</modelVersion>
    <groupId>com.takeaway.automation</groupId>
    <artifactId>takeaway-project</artifactId>
    <version>1.0-SNAPSHOT</version>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <maven.compiler.source>1.8</maven.compiler.source>
        <maven.compiler.target>1.8</maven.compiler.target>
        <java.version>1.8</java.version>
        <testng.version>7.1.0</testng.version>
        <awaitility.version>3.0.0</awaitility.version>
    </properties>
    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <source>8</source>
                    <target>8</target>
                </configuration>
            </plugin>
        </plugins>
    </build>
    <dependencies>
        <!-- https://mvnrepository.com/artifact/log4j/log4j -->
        <dependency>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
            <version>1.2.17</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/org.testng/testng -->
        <dependency>
            <groupId>org.testng</groupId>
            <artifactId>testng</artifactId>
            <version>${testng.version}</version>
            <scope>test</scope>
        </dependency>

        <!-- https://mvnrepository.com/artifact/org.apache.httpcomponents/httpclient -->
        <dependency>
            <groupId>org.apache.httpcomponents</groupId>
            <artifactId>httpclient</artifactId>
            <version>4.5.12</version>
        </dependency>     
        <!-- https://mvnrepository.com/artifact/org.apache.commons/commons-configuration2 -->
        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-configuration2</artifactId>
            <version>2.0</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/commons-lang/commons-lang -->
        <dependency>
            <groupId>commons-lang</groupId>
            <artifactId>commons-lang</artifactId>
            <version>2.6</version>
        </dependency>

        <dependency>
            <groupId>commons-beanutils</groupId>
            <artifactId>commons-beanutils</artifactId>
            <version>1.9.3</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-core -->
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-core</artifactId>
            <version>2.9.8</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.dataformat/jackson-dataformat-yaml -->
        <dependency>
            <groupId>com.fasterxml.jackson.dataformat</groupId>
            <artifactId>jackson-dataformat-xml</artifactId>
            <version>2.10.3</version>
        </dependency>
    </dependencies>

</project>

我的测试是在HTTPTester.java类名下的,在那里我得到了所有的testng测试用例:

 src/testjava/com/takeaway/automation/tests/api/HTTPTester.java

2 个答案:

答案 0 :(得分:2)

除非另行配置,否则surefire maven插件希望您的测试在以下位置进行:

src/test/java/com/takeaway/automation/tests/api/HTTPTest.java

({src/test/java,不是src/testjava,而*Test.java不是*Tester.java

在此处查看更多详细信息:https://maven.apache.org/surefire/maven-surefire-plugin/examples/inclusion-exclusion.html

答案 1 :(得分:1)

好的,我发现了缺少的东西,添加了“ maven-surefire-plugin”插件:

 <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <version>3.0.0-M5</version>
                <configuration>
                    <includes>
                        <include>HTTPTester.java</include>
                    </includes>
                </configuration>
            </plugin>