I'm trying to run Selenium RC 1.0.3 using Java 6, JUnit 4, and Eclipse on Snow Leopard.
Here is my test class, from the Selenium docs:
public class TestCase extends SeleneseTestCase {
@Before
public void before() throws Exception {
setUp("http://www.google.com/", "*firefox");
}
@Test
public void test() {
selenium.open("/");
selenium.type("q", "selenium rc");
selenium.click("btnG");
selenium.waitForPageToLoad("30000");
assertTrue(selenium.isTextPresent("Advanced search"));
}
}
I receive the following error, which occurs at the time that selenium.open()
is called:
11:16:59.916 INFO - Got result:
XHR ERROR: URL = http://localhost:4444/ Response_Code = 403
Error_Message = Forbidden+for+Proxy on session a8cf1e0bd5ed42c5a4df0c25ec5f5286
开发者_开发百科
I've tried (finding various suggestions on the web) replacing *firefox
with *chrome
or *firefox
, replacing http
with https
and adding selenium.start()
, but none have helped, or even changed the behavior.
Any ideas?
EDIT: The selenium-server is running, and the local firewall is disabled.
OK, here's a solution, without any understanding: If the @Before
method is removed, and the call to setUp()
is moved into the @Test
method, then it works:
@Test
public void test() throws Exception {
setUp("http://www.google.com/", "*chrome");
selenium.open("/");
selenium.type("q", "selenium rc");
selenium.click("btnG");
selenium.waitForPageToLoad("30000");
assertTrue(selenium.isTextPresent("Advanced search"));
}
But here is a better solution, based on understanding:
import com.thoughtworks.selenium.SeleneseTestCase;
public class TestCase extends SeleneseTestCase {
public void setUp() throws Exception {
setUp("http://www.google.com/", "*firefox");
}
public void testAuto() throws Exception {
selenium.open("/");
selenium.type("q", "selenium rc");
selenium.click("btnG");
selenium.waitForPageToLoad("30000");
assertTrue(selenium.isTextPresent("Advanced search"));
}
}
It turns out that SeleneseTestCase
extends TestCase
from JUnit 3. I had upgraded the documentation example to JUnit 4 without thinking about what problems may be caused.
精彩评论