我有一些基于TestNG
的{{1}}测试用例,并尝试生成LeanFT
文件。我使用jar
在IntelliJ IDEA
下设置工件的详细信息。我选择了classname,但是得到了错误,这是不可接受的。
更新2018.05.03。 我在一个新类中创建了main方法,但是得到了相同的错误消息。
File -> Project Structure -> Project Settings -> Artifacts -> Jar -> From modules with dependencies
答案 0 :(得分:1)
看来你在测试项目(使用LeanFT TestNG模板),java app,who-know-what-else app之间有某种组合。
如果您使用main
方法但仍想触发TestNG测试,则需要使用TestNG类。例如
TestNG testNG = new TestNG();
testNG.setTestClasses(WebTestFactory.class);
testNG.run();
您可以在official docs或this SO thread
中详细了解此方法如果您没有main
课程,则应创建一个课程。 (.jar
文件怎么可能知道什么是入口点?)。
总而言之,此错误表明项目类型与项目结构(内容)之间存在冲突
根据您最近的评论:您能告诉我示例/模式,在哪里放置main()方法吗?
LeanFTest
创建main
方法。
无论你在main方法中做什么都会驱动你的整个应用程序。 在您的特定情况下(执行TestNG测试),您需要执行以下操作,主要方法中的 :
创建测试实例(TestNG testNG = new TestNG();
)
使用此实例准备测试套件
指向上面的SO线程(再次),它将意味着:
String xmlFileName = "testng.xml";
List<XmlSuite> suite = (List <XmlSuite>)(new Parser(xmlFileName).parse());
testNG.setXmlSuites(suite);
运行套件
testNG.run();
之后,当您创建工件时,指向具有main方法的类,并双击.jar
(或从命令行执行它)应该启动测试套件。