繁体   English   中英

在类路径中找不到类:(类名)

[英]Cannot find class in classpath: (ClassName)

我已经启动了 TestNG 并在其中编写了第一个程序,但由于错误“无法在类路径中找到类:FirstTestNGFile” (这里的 FirstTestNGFile 是类名),我无法运行。 这是我的代码。

 package firsttestngpackage; import org.openqa.selenium.*; import org.testng.annotations.*; import org.testng.Assert; import org.openqa.selenium.chrome.ChromeDriver; public class FirstTestNGFile { public String baseURL = "https://www.google.com/"; String driverpath = "D:\\\\Ashish\\\\Setup\\\\chrome\\\\chromedriver.exe"; public WebDriver driver; @Test public void verifyHomepageTitle() { System.setProperty("webdriver.chrome.driver", driverPath); driver = new ChromeDriver(); driver.get(baseURL); String expectedtitle = "Google"; String Actualtitle = driver.getTitle(); Assert.assertEquals(expectedtitle, Actualtitle); driver.close(); } }

这是例外:

Cannot find class in classpath: FirstTestNGFile
    at org.testng.xml.XmlClass.loadClass(XmlClass.java:77)
    at org.testng.xml.XmlClass.init(XmlClass.java:69)
    at org.testng.xml.XmlClass.<init>(XmlClass.java:55)
    at org.testng.xml.TestNGContentHandler.startElement(TestNGContentHandler.java:575)
    at java.xml/com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(Unknown Source)
    at java.xml/com.sun.org.apache.xerces.internal.parsers.AbstractXMLDocumentParser.emptyElement(Unknown Source)

注意:我已经清理了我的项目,但这并没有解决我的问题。

如果您正在使用 Maven 并从 pom.xml 执行 testng.xml 那么下面的语句将帮助您解决您的问题

“默认情况下,Surefire-plugin 运行所有与文件名模式匹配的测试,例如测试源目录src/test/java 中的*Test.java。要使用不同的命名方案,我们可以配置包含参数的 Surefire 插件并指定测试我们想要包括的。”

错误说明了一切:

Cannot find class in classpath: FirstTestNGFile
    at org.testng.xml.XmlClass.loadClass(XmlClass.java:77)
    at org.testng.xml.XmlClass.init(XmlClass.java:69)
    at org.testng.xml.XmlClass.<init>(XmlClass.java:55)

错误堆栈跟踪清楚地表明TestNG无法正确初始化。

您的代码对我来说看起来不错,但您必须注意以下几点:

  • 您需要具体说明您正在使用的imports集:

     import org.openqa.selenium.WebDriver; import org.testng.annotations.Test; import org.testng.Assert; import org.openqa.selenium.chrome.ChromeDriver;
  • 结束你的脚本调用driver.quit(); 杀死WebDriverWeb Browser实例。

  • IDE清理Project Workspace以重新构建它。

  • 您可以考虑关闭IDE并进行System Reboot

  • 执行您的Test

  • 如果问题仍然存在,您可以考虑使用您正在使用的testng.xml更新问题。

只需从 PROJECT ---> CLEAR 中清除您的项目空间,然后再次运行。

我已经重新安装了 TestNG,它现在对我有用。

所以这对我有用:

即使在重新安装 TestNg、更新 Maven、清理项目、多次更改 JRE 之后,仍然出现“找不到类路径”。

但这有效:

  1. 转到您的 .m2 存储库。 (我的 c:/users/.m2/repository)
  2. 删除整个存储库文件夹。

重建您的项目,它将再次重新安装依赖项。 现在运行您的文件。

这件事对我有用,希望它也对你们有用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM