在Selenium RC中设置用户代理
在Selenium RC中使用自定义头的主要思想是将用户代理和电话号码添加到我的HTTP请求中。为此,我在Firefox中使用Selenium服务器作为代理(请参阅) 这或多或少就是我正在使用的代码:在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)
@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。