在Selenium RC中使用自定义标头的主要思想是将User-agent和phone nomber添加到我的HTTP请求中。为此,我在Firefox中使用Selenium Server作为代理(参见how-to use addCustomRequestHeader properly)
这或多或少是我正在使用的代码:
@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 +修改标题中使用特定的配置文件,但我不认为这是可能的,因为每次Selenium启动Firefox实例时它会创建一个没有插件的普通版本。
有什么建议吗?
答案 0 :(得分:1)
Selenium RC : Setting up a Firefox proxy
这是为了记录在Firefox中使用Selenium RC设置代理参数,但它描述了如何使用Firefox Profile Manager。
使用此功能,您可以使用您想要的任何设置和加载项来调用Firefox