我有一个使用 TestNG 运行的简单代码,但我无法使用 Gradle 运行相同的代码,因为它说找不到 main 方法,这并不奇怪,因为我使用的是注释。
但在这样的场景下,如果我必须使用Gradle,如何运行代码。
请注意,我对 Gradle 还很陌生,对此并没有太多了解。
Code:
import org.testng.annotations.AfterClass;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;
public class tryTestNG
{
@BeforeClass
public void setup()
{
System.out.println("I am in Setup");
}
@Test
public void test()
{
System.out.println("I am in Test");
}
@AfterClass
public void tearDown()
{
System.out.println("I am in tearDown");
}
}
上面的代码与 TestNG 库完美运行。但 Gradle 则不然。
这是我的 Gradle 构建设置:
apply plugin: 'java'
apply plugin: 'application'
mainClassName = 'tryTestNG'
sourceCompatibility = 1.7
targetCompatibility = 1.7
version = '1.0'
repositories {
mavenCentral()
}
test {
useTestNG()
}
dependencies {
compile group: 'org.testng', name: 'testng', version: '6.9.10'
}
Gradle 返回没有 Main 方法。
Working Directory: /home/avirup/MyWorkspace/JavaWorkspace/TestNGGradle
Gradle User Home: /home/avirup/.gradle
Gradle Distribution: Gradle wrapper from target build
Gradle Version: 2.9
Java Home: /usr/lib/jvm/java-8-oracle
JVM Arguments: None
Program Arguments: None
Gradle Tasks: run
:compileJava UP-TO-DATE
:processResources UP-TO-DATE
:classes UP-TO-DATE
:runError: Main method not found in class tryTestNG, please define the main method as:
public static void main(String[] args)
or a JavaFX application class must extend javafx.application.Application
FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':run'.
> Process 'command '/usr/lib/jvm/java-8-oracle/bin/java'' finished with non-zero exit value 1
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
BUILD FAILED
Total time: 0.514 secs
感谢您的帮助。
没有必要使用application
运行测试的插件。
The build.gradle
应该:
apply plugin: 'java'
sourceCompatibility = 1.7
targetCompatibility = 1.7
version = '1.0'
repositories {
mavenCentral()
}
test {
useTestNG()
}
dependencies {
compile group: 'org.testng', name: 'testng', version: '6.9.10'
}
和命令:gradle test
。另外,放tryTestNG
under src/test/java
并用大写字母命名。
这里有一个demo https://github.com/Opalo/stackoverflow/tree/master/39305052.
还介意的是println
测试语句在控制台中不可见。要查看它们,请导航至测试报告。它位于:<project_dir>/build/reports/tests/index.html
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)