【问题标题】:How to run selenium webdriver test cases from command line without testng/maven如何在没有 testng/maven 的情况下从命令行运行 selenium webdriver 测试用例
【发布时间】:2016-09-10 14:08:33
【问题描述】:

我正在使用 selenium webdriver 编写测试用例。

WebDriver driver = new FirefoxDriver();
driver.get("http://www.google.com");// Open the URL.
driver.manage().window().maximize(); // Maximize the window
driver.quit();

现在我想从命令行运行这个测试并创建一个批处理文件。我没有使用任何 testng 或 maven。如何从 cmd 运行?

【问题讨论】:

    标签: java selenium-webdriver cmd


    【解决方案1】:

    在您最喜欢的 IDE 平台(Eclipse、Netbeans、Intellij ...)中创建一个新的 Java 项目。
    从这里下载并解压 Selenium Java 语言绑定:http://www.seleniumhq.org/download/

    它包含所有必需的库(jar 文件)以及 Firefox 驱动程序。
    将项目中的所有库(jar 文件)添加到类路径中。不要忘记添加 lib 子目录中的所有 jar 文件。
    请参阅 IDE 的文档以了解如何操作。
    您也可以将您的项目配置为 maven 项目并让 Maven 为您下载所有依赖项,这是 Selenium 项目页面的依赖项定义:http://www.seleniumhq.org/download/maven.jsp

    <dependency>
        <groupId>org.seleniumhq.selenium</groupId>
        <artifactId>selenium-java</artifactId>
        <version>2.53.0</version>
    </dependency> 
    

    接下来用main函数创建java类:

    package mypackage;
    
    import org.openqa.selenium.WebDriver;
    import org.openqa.selenium.firefox.FirefoxDriver;
    
    public class MySeleniumTest {
    
        public static void main(String[] args) {
            WebDriver driver = new FirefoxDriver();
            driver.get("http://www.google.com");// Maximize the window.
            driver.manage().window().maximize();
            try {
            // wait 4 seconds before closing the browser
                Thread.sleep(4000);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
            driver.quit();
        }
    }
    

    然后,您可以在 IDE 中运行此类以测试它是否可以正常工作 - 然后将其保存到可运行的 jar 文件中。


    接下来构建项目,然后将其导出到可运行的 jar 文件 - 请参阅您的 IDE 文档以了解如何执行此操作(在 Eclipse 中单击选项:文件/导出/Java/可运行 JAR 文件,选择选项“包所需的库到生成的 JAR")。


    最后打开命令提示符,将当前目录更改为生成的 jar 保存后的目录,然后使用:

    java -jar name_of_jar_file.jar
    

    【讨论】:

    • 但是如何在不使用任何 IDE 的情况下使用 cmd 创建 jar 文件?
    • 跟随 Oracle 的教程:docs.oracle.com/javase/tutorial/deployment/jar/build.html Just jar cf jar-file-name input-file-list (or *)
    • 感谢您的链接。但是在编译到如下类时出现错误:错误:包 org.openqa.selenium 不存在。我正在使用命令 javac -cp .;*.jar Demo.java 。其中 *.jar 包含 selenium webdriver 的所有 jar 文件
    • 类路径中缺少库。快速修复:将所有 Selenium 库复制到子目录,并在类路径中指定此目录的名称:java -jar -cp name_of_lib_subdirectory myJar.jar。不幸的是,我不知道如何使用 jar 手动将库正确打包到 jar 中,我没有做了很多年了,我更喜欢工具(Maven、IDE 等),可能你需要创建一个清单文件并将其包含在 jar 文件中。
    猜你喜欢
    • 2014-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-30
    • 1970-01-01
    • 2014-04-23
    • 1970-01-01
    • 1970-01-01
    • 2018-12-31
    相关资源
    最近更新 更多