我正在尝试将标题添加到我的HTTP
请求特定的测试用例。这非常重要,因为我正在尝试测试要在手机中使用的应用程序。我设法找到了方法addCustomRequestHeader(String arg0, String arg1)
。不幸的是,我似乎不知道如何正确使用它。
这是我的测试套件:
package testscripts;
import com.thoughtworks.selenium.DefaultSelenium;
import com.thoughtworks.selenium.SeleneseTestCase;
import com.thoughtworks.selenium.Selenium;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
public class TCNewspapers extends SeleneseTestCase {
//Local parameters
private static final String SELENIUM_SERVER_HOST = "localhost";
private static final int SELENIUM_SERVER_PORT = 4444;
private static final String NAVIGATOR = "*firefox";
private String URL = "http://www.marca.com/";
Selenium selenium;
@Before
public void setUp() throws Exception {
super.setUp();
selenium = new DefaultSelenium(SELENIUM_SERVER_HOST,
SELENIUM_SERVER_PORT,
NAVIGATOR,
URL);
setUp(URL, NAVIGATOR);
//selenium.start();
selenium.start("addCustomRequestHeader=true");
//selenium.start("captureNetworkTraffic=true, addCustomRequestHeader=true");
Thread.sleep(5000);
selenium.windowMaximize();
}
@Test
public void testOpenMarcaMobilePage() {
selenium.addCustomRequestHeader("user-agent", "Mozilla/5.0 (iPhone;");
selenium.open(URL);
selenium.waitForPageToLoad("300000");
verifyTrue(selenium.isTextPresent("Golf"));
}
@After
public void stopClient () throws Exception {
selenium.stop();
}
}
测试用例正在通过,尽管“Golf”字符串不应出现在页面的移动版本中。检查导航器时,我发现我不在移动版本中。
另外,我收到此警告:
警告:getString(addCustomRequestHeader) 看到错误结果 OK
的文档addCustomRequestHeader
方法说:
仅当浏览器配置为使用内置 Selenium 代理时才有效
我想这就是问题所在。知道我该怎么做吗?
我的出发点和你不同,但最终却得到了和你一样的结果; “如何向 selenium 添加请求标头”。我知道自从您发布最初的问题以来已经有一段时间了,所以这适合任何正在 Java 中寻找答案的人。这是我想出的一些代码,用于将请求标头添加到您的硒请求中JAVA:
public class MyTestCase extends SeleneseTestCase {
@Before
public void setUp() throws Exception {
selenium = new DefaultSelenium("localhost", 4444, "*firefox", "http://localhost");
selenium.start("addCustomRequestHeaders=true");
selenium.open("/");
}
@Test
public void testMyTestCase() {
selenium.addCustomRequestHeader("HEADER_NAME", "HEADER_VALUE");
//header "HEADER_NAME", with "HEADER_VALUE" is now in your request
selenium.click("link=Hello World");
}
}
Update您还必须使用“-addCustomRequestHeader”输入变量启动 selenium 服务器。例如:
%java_home%\bin\java -jar selenium-server-standalone-2.25.0.jar -addCustomRequestHeader
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)