TestNG - 错误 - Java - MAC

TestNG - ERROR - Java - MAC

找不到此问题的有效解决方案,我知道之前有人问过。

在 Mac 上使用 Eclipse,在 Java 上使用 TestNG。 Eclipse 运行 的测试套件完全在 IDE 之内。 尝试通过命令行 运行 时,我 运行 出现以下错误:

    [TestNG] [ERROR] 
    Cannot find class in classpath: firefoxScripts.SmallRwyLengthChange

这是 IDE 环境的屏幕截图: 这是来自 finder 的文件夹结构:

Screen shot of Finder's folder structure, and eclipse view

从终端,这是我一直在编辑的 "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>

最后,命令 I 运行 尝试初始化测试用例

    java -cp /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 testng.xml

对我来说,class 路径设置正确,所以我不确定为什么它检测不到 class "smallrwylengthchange"。正如我所说,它 运行 在 Eclipse IDE 中非常好。所以简单地转换为命令行让我觉得我遗漏了一些小东西,比如文件位置?感谢任何帮助。

您的命令行包含 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 testng.xml

所以我找到了解决办法,我猜我的.class路径文件是错误的。

做了以下步骤:

  1. cd 进入包含 "testng.xml"

  2. 的文件夹
  3. export class带有Selenium-server.jar 和testng-6.9.9.jar 的path 命令,以及[=28 的LOCATION =] 文件“/bin”。以前我一直在包含整个文件,但没有用,只是 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