6

当我尝试运行测试套件时,在 Mac 上遇到此异常,我们在这里使用 maven 项目,今天早上 eclipse 被挂起,我强制退出,然后重新启动,后来无法运行测试。我完成了刷新、清理、重新安装 testNG,使用新的 eclipse 实例重新配置了 eclipse 并导入了 maven 项目,但随后也遇到了同样的异常。相同的 maven 项目将在另一台 Mac 上运行,请建议这里缺少的任何方法.

还提到了以下链接中的解决方案: SO链接1 SO链接2

错误控制台:

org.testng.TestNGException: 
Cannot find class in classpath: com.adobe.store.polarBear.polarBearSuite.tests.ReaderAIHTest
    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:539)
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:501)
    at com.sun.org.apache.xerces.internal.parsers.AbstractXMLDocumentParser.emptyElement(AbstractXMLDocumentParser.java:179)
    at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.emptyElement(XMLDTDValidator.java:788)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanStartElement(XMLDocumentFragmentScannerImpl.java:1343)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2756)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:647)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:511)
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:808)
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
    at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:119)
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205)
    at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522)
    at javax.xml.parsers.SAXParser.parse(SAXParser.java:395)
    at javax.xml.parsers.SAXParser.parse(SAXParser.java:198)
    at org.testng.xml.SuiteXmlParser.parse(SuiteXmlParser.java:17)
    at org.testng.xml.SuiteXmlParser.parse(SuiteXmlParser.java:1)
    at org.testng.xml.Parser.parse(Parser.java:172)
    at org.testng.TestNG.initializeSuitesAndJarFile(TestNG.java:311)
    at org.testng.remote.RemoteTestNG.run(RemoteTestNG.java:88)
    at org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:204)
    at org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:175)
4

7 回答 7

7

转到项目 --> 清理

这个对我有用

于 2013-07-27T08:38:24.147 回答
2

几个建议: 1. 转到您的目标文件夹并检查 ReaderAIHTest 的 .class 是否可用?2. 转到 Run As -> Maven Build -> Enter goal as clean test-compile(我假设您的案例位于 src/test/java 中。)

于 2012-11-29T06:09:32.353 回答
1

我遇到了同样的问题。当我在 Eclipse 中刷新我的项目时,从 repo 同步代码后。包名从 src.test.java.com 开始显示......

所以整个问题是模块目录中的 .classpath 文件 执行 'mvn eclipse:eclipse' 它将重新生成模块的 '.classpath' 文件。然后在eclipse中刷新你的项目。

于 2015-01-07T09:48:12.560 回答
1

对于 IntelliJ Idea,在重新构建项目后使用命令:mvn idea:idea

Build 成功后,“Cannot find class in classpath”异常得到解决。

于 2019-04-03T14:11:03.087 回答
0

您是否在 eclipse 中使用“运行配置”功能?如果是这样,请确保您为尝试运行的测试使用了正确的 testng.xml。有时您使用了错误的一个或一个在 Eclipse 的“运行配置”菜单中自动创建的。

于 2012-11-28T18:17:27.040 回答
0

如果你的包名是TEST_Package并且类名是DEMO_TEST那么xml中的代码应该是

classes
class name="TEST_Package.DEMO_TEST"
classes

你会试试这个......它会工作

于 2014-03-07T21:20:05.183 回答
0

对我来说,它配置了错误的“项目编译器输出”。转到文件>项目结构>项目编译输出>单击“...”>选择一个文件夹

于 2018-04-18T21:29:10.070 回答