TestNG-ERROR-Java-MAC

TestNG-ERROR-Java-MAC,java,eclipse,macos,command,testng,Java,Eclipse,Macos,Command,Testng,无法找到解决此问题的有效方法,我知道以前有人问过 在Mac上使用Eclipse,在Java上使用TestNG。 Eclipse在IDE中完美地运行测试套件。 尝试通过命令行运行时,我遇到以下错误: [TestNG] [ERROR] Cannot find class in classpath: firefoxScripts.SmallRwyLengthChange 以下是IDE环境的屏幕截图: 以下是finder中的文件夹结构: 从terminal,这里是我一直在编辑的“L

无法找到解决此问题的有效方法,我知道以前有人问过

在Mac上使用Eclipse,在Java上使用TestNG。 Eclipse在IDE中完美地运行测试套件。 尝试通过命令行运行时,我遇到以下错误:

    [TestNG] [ERROR] 
    Cannot find class in classpath: firefoxScripts.SmallRwyLengthChange
以下是IDE环境的屏幕截图: 以下是finder中的文件夹结构:

从terminal,这里是我一直在编辑的“Learn Automation/.classpath”文件:

    <?xml version="1.0" encoding="UTF-8"?>
    <classpath>
    <classpathentry kind="src" path="src"/>
    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
    <classpathentry kind="lib" path="/Users/bryan.lee/Documents/selenium-server-standalone-3.0.1.jar"/>
    <classpathentry kind="con" path="org.testng.TESTNG_CONTAINER"/>
    <classpathentry kind="bin" path="/Users/bryan.lee/Documents/workspace/Learn-Automation/bin/firefoxScripts/SmallRwyLengthChange.class"/>
    <classpathentry kind="lib" path="/Users/bryan.lee/Documents/workspace/Learn-Automation/lib/jcommander-1.7.jar"/>
    <classpathentry kind="lib" path="/Users/bryan.lee/Documents/workspace/Learn-Automation/lib/selenium-html-runner-3.0.1.jar"/>
    <classpathentry kind="lib" path="/Users/bryan.lee/Documents/workspace/Learn-Automation/lib/testng-6.9.9.jar"/>
    <classpathentry kind="lib" path="/Users/bryan.lee/Documents/workspace/Learn-Automation/lib/selenium-server-standalone-3.0.1.jar"/>
    <classpathentry kind="output" path="bin"/>
    </classpath>

对我来说,类路径是正确设置的,所以我不确定为什么它不会检测到类“smallrWilengChange”。正如我所说的,它在EclipseIDE中运行得非常好。所以简单地转换到命令行会让我觉得我遗漏了一些小东西,比如文件位置?非常感谢您的帮助。

您的命令行包含TestNG依赖项,但您的类在哪里

尝试:

java-cp/Users/bryan.lee/Documents/workspace/Learn Automation/bin/:/Users/bryan.lee/Documents/workspace/Learn Automation/lib/testng-6.9.9.jar:/Users/bryan.lee/Documents/workspace/Learn-Automation/lib/jcommander-1.7.jar org.testng.testng.xml


所以我找到了一个解决方案,我想我的.classpath文件是错的

执行了以下步骤:

  • 将cd放入包含“testng.xml”的文件夹中

  • 使用Selenium-server.jar和testng-6.9.9.jar以及类文件“/bin”的位置导出classpath命令。以前,我一直在包括整个文件,但没有工作,只是类的文件夹,它似乎工作。以下代码以“:”分隔,以便于阅读

    export CLASSPATH=/Users/bryan.lee/Documents/workspace/Learn-Automation/lib/testng-6.9.9.jar
    :/Users/bryan.lee/Documents/workspace/Learn-Automation/lib/selenium-server-standalone-3.0.1.jar
    :/Users/bryan.lee/Documents/workspace/Learn-Automation/bin
    

  • 你能说出你的Eclipse IDE执行哪个命令吗?我对Eclipse不太熟悉,控制台在运行TestNG:/private/var/folders/wj/hf7_2fk163l006nxqnm30s05k61rx8/T/TestNG Eclipse--1232541245/TestNG-customsuite.xml日志之前就有这个命令了。很好,我在中复制了错误的命令。但是,我以前的命令将类文件包含到.Class扩展名中。我认为这是错误的,并且已经意识到了这个问题+我赞成这项建议
    export CLASSPATH=/Users/bryan.lee/Documents/workspace/Learn-Automation/lib/testng-6.9.9.jar
    :/Users/bryan.lee/Documents/workspace/Learn-Automation/lib/selenium-server-standalone-3.0.1.jar
    :/Users/bryan.lee/Documents/workspace/Learn-Automation/bin