在Selenium RC中设置用户代理

在Selenium RC中设置用户代理,selenium,selenium-rc,Selenium,Selenium Rc,在Selenium RC中使用自定义头的主要思想是将用户代理和电话号码添加到我的HTTP请求中。为此,我在Firefox中使用Selenium服务器作为代理(请参阅) 这或多或少就是我正在使用的代码: @Before public void setUp() throws Exception { setUp(URL, NAVIGATOR); selenium.start("addCustomRequestHeader=true"); Thread.sleep(5000)

在Selenium RC中使用自定义头的主要思想是将用户代理和电话号码添加到我的HTTP请求中。为此,我在Firefox中使用Selenium服务器作为代理(请参阅)

这或多或少就是我正在使用的代码:

@Before
public void setUp() throws Exception {

    setUp(URL, NAVIGATOR);

    selenium.start("addCustomRequestHeader=true");
    Thread.sleep(5000);
    selenium.windowMaximize();
}

@Test
public void testVerifyHomePage() {

    System.out.println("**** testVerifyHomePage Executing");

    selenium.addCustomRequestHeader("x-Nokia-Msisdn", "525554003650");
    selenium.addCustomRequestHeader("User-Agent","Mozilla/5.0 (iPhone;");

    selenium.open(URL);
    selenium.waitForPageToLoad("30000");

    verifyTextPresentErrorMsg(selenium,"Home Page");

    System.out.println("---- testVerifyHomePage Finished");

}
x-Nokia-Msisdn发送正确,但用户代理错误(它始终认为我的用户代理是Moxilla Firefox,而不是手机)。我曾尝试访问YouTube等页面,但手机版本未显示,因此这意味着我发送的用户代理未被考虑在内

我在网上搜索过,发现有人有同样的问题,但没有可能的解决办法。有些人建议在Firefox+Modify标题中使用特定的配置文件,但我认为这是不可能的,因为每次Selenium启动Firefox实例时,它都会创建一个没有插件的普通版本

有什么建议吗?

这是为了记录使用Selenium RC在Firefox中设置代理参数的过程,但它描述了如何使用Firefox配置文件管理器


使用它,您可以使用任何您想要的设置和附加组件调用Firefox

我检查了一个名为Proxomitron()的工具,发现Selenium客户端发送了两个用户代理头:一个带有Firefox值,另一个带有我设置的用户代理。因此,Selenium 1.0.3中存在一个bug。我所做的是使用Proxomitron删除错误的Firefox头。我会写一篇文章详细解释这一切。现在,任何使用Selenium RC的人都应该知道这个bug。