public class LaunchTests {
public static void main(String[] args) {
TestListenerAdapter tla = new TestListenerAdapter();
TestNG testng = new TestNG();
List<String> suites = new ArrayList();
suites.add("testng.xml");//path to xml..
testng.setTestSuites(suites);
testng.run();
}
Exception in thread "main" org.testng.TestNGException:
Cannot find class in classpath: package.TestOne
at org.testng.xml.XmlClass.loadClass(XmlClass.java:81)
at org.testng.xml.XmlClass.init(XmlClass.java:73)
at org.testng.xml.XmlClass.<init>(XmlClass.java:59)
at org.testng.xml.TestNGContentHandler.startElement(TestNGContentHandler.java:548)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.AbstractXMLDocumentParser.emptyElement(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.emptyElement(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanStartElement(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl.parse(Unknown Source)
at javax.xml.parsers.SAXParser.parse(Unknown Source)
at org.testng.xml.XMLParser.parse(XMLParser.java:38)
at org.testng.xml.SuiteXmlParser.parse(SuiteXmlParser.java:16)
at org.testng.xml.SuiteXmlParser.parse(SuiteXmlParser.java:9)
at org.testng.xml.Parser.parse(Parser.java:172)
at org.testng.TestNG.initializeSuitesAndJarFile(TestNG.java:302)
at org.testng.TestNG.run(TestNG.java:991)
at util.LaunchTests.main(LaunchTests.java:17)
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Suite1" parallel="methods" thread-count="1">
<test name="Chrome Adviser Portal" allow-return-values="true"
thread-count="1">
<parameters>
<parameter name="browser" value="chrome" />
<parameter name="loginType" value="adviser" />
</parameters>
<classes>
<class name="adviserPortal.AdviserLogin" />
</classes>
</test>
</suite>
您提到可以通过maven surefire插件从eclipse内部运行测试,但不能仅在执行main方法时运行它。
只有当类launchtests
位于src/main/java
中,并且套件xml文件testng.xml
引用src/test/java
中的类时,才能发生这种情况。src/main/Java
中的Java类不可见于src/test/Java
中的Java类。这解释了为什么TestNG抛出异常无法在类路径中找到类
如果您的launchtests
移动到src/test/java
,那么默认情况下它不会包含在您正在构建的uber jar(可执行jar)中,因为测试类被省略了。
我试图通过命令行运行testng,在类路径中有以下内容: testngjar,编译的测试用例文件的jar。testng。xml指向层次结构中的适当类。 在maven中,所有这些都可以正常工作,但在尝试从命令行运行时: 我得到以下错误: [TestNG][Error]在类路径:com中找不到类。公司Rest农场管理员测试 我做错了什么?
我正在执行Java-Eclipse-TestNG,但在使用testng命令行运行测试时遇到了困难。我有多个源文件夹,当创建。class文件时,它们将转到/bin目录,文件夹结构与/src相同,如下所示。我已经设置了类路径(使用导出classpath=...)并尝试运行“java org.testng.testng testng.xml”,但它给我的结果是“不能在类路径中找到类:testcases.
我一直在为我在IntelliJ的工作编写一个小系统,在编写过程中使用依赖项构建JAR,以检查我是否可以以一种可以让它在IntelliJ之外运行的方式构建它。有一天,当我试图打开罐子时,它开始给我JNI错误。我花了好长时间试图修复它,最后(在某种程度上)通过编辑我的清单来修复它。构建jar之前的mf文件。我的清单文件现在如下所示: 系统使用sqljdbc连接到azure数据库。它在intelliJ中
我有一个使用testng API动态创建testng.xml文件的项目,因此使用java的main函数,我的项目按预期工作,但是如果我使用'run as->maven build'通过maven运行我的项目,看起来只有BeforeSuite和BeforeTest类在运行,而实际的测试并没有运行。以下是我的pom.xml文件: 最后,这是StackTrace: 我想知道我错过了什么。
为什么我的代码(编译很好)给我以下错误? 在ImageTool类中找不到Main方法,请将Main方法定义为:public static void Main(String[]args)
我有以下项目结构 我的文件夹在Intellij中标记为。