3

我已经用 Firefox 上的 selenium IDE 插件编写了很多测试用例。

我现在想在其他浏览器上运行这些测试。据我所知,没有类似的插件,所以我可能不得不使用 selenium-driver。我现在的问题是:我应该如何导出和编写这些测试用例?我正在运行 Windows,否则我会导出到 ruby​​。

4

2 回答 2

4

最好的方法(据我所知,唯一的方法)是以您选择的编程语言导出 Selenium 测试用例。Selenium 支持 - Java、C#、Python、Ruby、PHP 和 Perl

导出测试用例后,您可以应用自己的逻辑(至少我们愿意相信这是一个无限的世界)并使用其他浏览器(如 IE、Chrome、Opera 甚至 Android 等)的驱动程序在您选择的任何浏览器中运行测试. 甚至还有一个驱动程序可以无头方式运行您的测试(HTMLUnit)。

您可以在这方面探索数以千计的教程,并且可以在几分钟内上手。

PS:人们可能想要编辑这个答案以获得更好的解释。

于 2012-08-13T12:36:19.910 回答
2

以下方法可用于让您的测试启动其他浏览器:

    public WebDriver getDriver(String driverName)
{

    WebDriver driver = null;  

    if( driverName == "firefox")
    {
       driver = new FirefoxDriver();
    }
    else if( driverName == "chrome")
    {
       File chromeFile = new File("C:/webdrivers/chromedriver.exe");
       System.setProperty("webdriver.chrome.driver", chromeFile.getAbsolutePath());
       driver = new ChromeDriver();
    }
    else if( driverName == "ie")
    {
       File ieFile = new File("C:/webdrivers/IEDriverServer.exe");
       System.setProperty("webdriver.ie.driver", ieFile.getAbsolutePath());
       driver = new InternetExplorerDriver();
    }

    return driver;
}

如果您使用的是 TestNG,您可以像这样定义您的测试方法:

@Test
public void verifyElements_FF()
{
    verifyElements("firefox");
}

要启动 Chrom 和 IE,您需要下载驱动程序,然后将它们放置在您的测试可以访问它们的地方,并在上述方法中更改这些驱动程序的路径。

于 2012-08-14T21:43:54.347 回答