如何开始/设置Selenium进行录制以及在不同的浏览器和平台上运行?

Tom*_*Tom 17 testing ubuntu selenium-ide recording selenium-rc

我想设置一个Selenium服务器,以便客户端可以在本地记录测试,记录的测试可以在使用Firefox + Chrome的Ubuntu服务器上重播和测试.

不幸的是,Selenium网站太混乱了,提到了很多不同的项目(Selenium 1,Selenium 2,Selenium RC,Selenium Grid),我不知道从哪里开始.

如何在Ubuntu盒子上设置Selenium Server?

A.J*_*A.J 22

不幸的是,Selenium网站太混乱了,提到了很多不同的项目(Selenium 1,Selenium 2,Selenium RC,Selenium Grid),我不知道从哪里开始.

Selenium有多个版本

  1. IDE - 主要用于记录测试并播放.它主要是一个Firefox Addon.这可以用于非常基本的测试.您还可以将记录的测试导出到selenium RC.所有这些都在seleniumhq.org-> documentation部分提到:http://docs.seleniumhq.org/docs/

  2. RC - 与任何其他自动化工具一样,您可以编写自己的代码来运行测试,而不仅仅是录制和播放.这比IDE具有更好的功能,包括支持多种语言(Java,Javascript,Ruby,PHP,Python,Perl和C#),并支持几乎所有平台上的每个浏览器.

  3. 网格 - 这有助于并行运行多个测试.

要在Firefox(非CHROME)中记录和运行测试,这非常简单.这不需要运行selenium服务器.

  1. 记录整个测试

  2. 将其保存在文件中

  3. 将文件复制到Ubuntu机器

  4. 在Ubuntu机器上使用IDE打开相同的测试,然后在firefox中再次运行它

如果你想在chrome上运行,那么你需要使用selenium RC进入下一级别.这需要运行selenium服务器.

如何在Ubuntu框上设置Selenium Server

这里下载selenium-server jar .将其复制到ubuntu服务器中的任何目录

打开终端并导航到具有selenium服务器jar的文件夹.

输入 java -jar selenium-server-jarfilename.jar

默认情况下,Selenium服务器将在端口4444上启动并继续监听测试.


Mik*_*wan 8

该网站在版本控制和名称方面令人困惑.Selenium是整个项目的名称,起初是Selenium RC(遥控器).Selenium RC是API的旧版本,有时也称为Selenium 1. Selenium 2是最新版本,最新版本是上周发布的Selenium RC2(候选版本).这使用了与Selenium RC不同的API.新API称为WebDriver.新的API仍然允许您访问旧的Selenium RC,但仅用于向后兼容.

从您现在开始,您没有理由使用Selenium RC API.您应该使用属于WebDriver 的高级用户交互.设置的webdriver是很容易的,并有上有一个不错的指南在这里.您应该注意,那里使用的API是使用WebElements的旧标准(2.0 beta).新API(高级用户交互)将操作与它们执行的元素分离开来.我建议您使用最新版本的API,而不是旧的已弃用版本.

既然你想在本地完成所有这些,那么我给你的第二个链接应该足以让你运行起来.假设您将要使用Java绑定,它就像下面这样简单:

public class Selenium2Example  {
    public static void main(String[] args) {
        // Create a new instance of the Firefox driver
        // Notice that the remainder of the code relies on the interface, 
        // not the implementation.
        WebDriver driver = new FirefoxDriver();

        // And now use this to visit Google
        driver.get("http://www.google.com");
        Actions builder = new Actions( driver );
        builder.sendKeys( driver.findElement( By.name("q") ), "Cheese!" );

        Action action = builder.build();
        action.perform();

        //Close the browser
        driver.quit();
    }
}
Run Code Online (Sandbox Code Playgroud)

这是编辑为使用高级用户交互的示例代码.