
[英]What's difference between protractor (Selenium webdriver) VS ghostdriver (phantomjs webdriver)?
[英]What is the difference between Selenium's Remote Control vs WebDriver?
我不确定我是否完全明白其中的区别。 WebDriver API还可以直接控制所选的浏览器。 什么时候应该使用硒遥控器(selenium RC)?
现在,我目前的情况是我正在测试一个Web应用程序,通过编写一个带有Selenium WebDriver API的套件并让它在我的计算机上运行。 测试需要更长时间才能完成,所以我一直在寻找在Linux服务器上运行测试的方法。
如果我使用Selenium Remote Control,这是否意味着我必须重写我用WebDriver API编写的所有东西?
我对Selenium Grid,Hudson,Selenium RC感到困惑。 我为Hudson找到了一个Selenium Grid插件,但不确定这是否包含Selenium RC。
我采取正确的路线吗? 我设想了以下架构:
我认为这比使用WebDriver API在我当前工作的台式计算机上运行测试更有时间效率。
WebDriver现在是Selenium 2. Selenium和WebDriver代码库正在合并。 WebDriver解决了Selenium所遇到的一些问题,Selenium解决了Webdriver所遇到的许多问题。
如果您已经在Selenium编写了测试,则不必重写它们以使用Selenium 2.我们是核心开发人员编写的,以便您创建一个浏览器实例并将其注入Selenium并且您的Selenium 1测试将在Selenium 2工作。我在下面给你举个例子。
// You may use any WebDriver implementation. Firefox is used here as an example
WebDriver driver = new FirefoxDriver();
// A "base url", used by selenium to resolve relative URLs
String baseUrl = "http://www.google.com";
// Create the Selenium implementation
Selenium selenium = new WebDriverBackedSelenium(driver, baseUrl);
// Perform actions with selenium
selenium.open("http://www.google.com");
selenium.type("name=q", "cheese");
selenium.click("name=btnG");
不幸的是,Selenium 2还没有进入Selenium 2,但由于我们希望在未来几个月内达到测试版,所以它不应该太长。
据我所知,Webdriver实现的开始时间比Selenium RC晚。 从我的角度来看,WebDriver是更灵活的解决方案,它解决了SeleniumRC的一些烦人问题。
WebDriver提供用于测试Web GUI的标准界面。 此接口有多种实现(HTTP,特定于浏览器并基于Selenium)。 既然你已经有一些webdriver的测试,你必须熟悉基本一样的文档此
测试越来越长,所以我一直在寻找在linux服务器上运行测试的方法。
你是否试图找到实际的瓶颈? 我不确定,消除WebDriver层会有所帮助。 我认为,大部分时间花在Selenium命令发送和HTTP请求到被测系统上。
如果我使用sleneium遥控器,这是否意味着我必须重写我用WebDriver API编写的所有东西?
一般来说,是的。 如果您没有在测试代码和WebDriver之间实现一些额外的层。
至于Selenium Grid:你可以在几个不同的[虚拟]节点上启动几个Selenium RC实例,然后在Selenium Grid中注册它们。 您的测试连接到Selenium Grid,它将所有命令重定向到SeleniumRC实例,并根据所需的浏览器进行协调。
有关hudson插件的详细信息,您可以在此处找到更多信息
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.