2013-07-03 3 views
1
package com.memoir.client.widgets.memogen; 

import com.thoughtworks.selenium.*; 
import org.junit.After; 
import org.junit.Before; 
import org.junit.Test; 
import com.thoughtworks.selenium.DefaultSelenium; 

@SuppressWarnings("deprecation") 
public class TestHomepage extends SeleneseTestCase { 
    @Override 
    @Before 
    public void setUp() throws Exception { 
     //selenium = new DefaultSelenium("localhost", 4444, "*firefox", "https://64.79.128.233/staging/"); 
     selenium = new DefaultSelenium("localhost", 4444, "*firefox /usr/bin/firefox", "https://64.79.128.233/staging/"); 
     selenium.start(); 
    } 

    @Test 
    public void testTesting4() throws Exception { 
     selenium.setSpeed("2000"); 
     selenium.windowMaximize(); 
     //selenium.open("/memosyn/"); 
     selenium.open("/staging/"); 
     selenium.waitForPageToLoad("60000"); 
     //Checking for page layout in the beginning of the web page 
     assertEquals("1", selenium.getElementIndex("//*[@id='isc_G']")); 
     assertEquals("Please contact [email protected] for questions or comments.", selenium.getText("id=contactText")); 
     //assertEquals("MemoWeb V3.3.5963M", selenium.getText("//*[@id='isc_WidgetCanvas_1_widget']/div/table/tbody/tr/td[2]")); 
     assertEquals("14", selenium.getElementHeight("scLocator=//VLayout[ID=\"loginBox\"]/")); 
     assertEquals("447", selenium.getElementWidth("scLocator=//VLayout[ID=\"loginBox\"]/")); 
     assertEquals("35", selenium.getElementHeight("scLocator=//DynamicForm[ID=\"loginItems\"]/item[name=email]/title")); 
     assertEquals("207", selenium.getElementWidth("scLocator=//DynamicForm[ID=\"loginItems\"]/item[name=email]/title")); 
     assertEquals("35", selenium.getElementHeight("scLocator=//DynamicForm[ID=\"loginItems\"]/item[name=password]/title")); 
     assertEquals("207", selenium.getElementWidth("scLocator=//DynamicForm[ID=\"loginItems\"]/item[name=password]/title")); 
     assertEquals("35", selenium.getElementHeight("scLocator=//DynamicForm[ID=\"loginItems\"]/item[name=rememberMe]/textbox")); 
     assertEquals("203", selenium.getElementWidth("scLocator=//DynamicForm[ID=\"loginItems\"]/item[name=rememberMe]/textbox")); 
     assertEquals("22", selenium.getElementHeight("scLocator=//Button[ID=\"submitButton\"]/")); 
     assertEquals("100", selenium.getElementWidth("scLocator=//Button[ID=\"submitButton\"]/")); 
     assertEquals("MemoWeb", selenium.getTitle()); 
     assertEquals("Email :", selenium.getText("scLocator=//DynamicForm[ID=\"loginItems\"]/item[name=email||title=Email]/title")); 
     assertEquals("Password :", selenium.getText("scLocator=//DynamicForm[ID=\"loginItems\"]/item[name=password||title=Password]/title")); 
     assertEquals("Remember me on this computer", selenium.getText("scLocator=//DynamicForm[ID=\"loginItems\"]/item[name=rememberMe||title=Remember%20me%20on%20this%20computer]/textbox")); 
    } 

    @Override 
    @After 
    public void tearDown() throws Exception { 
     selenium.stop(); 
    } 
} 

이것은 코드이며 셀렌 서버를 시작하여 실행하면이 오류가 발생합니다. 오류의 원인은 무엇입니까? 내 파이어 폭스 프로파일이 제대로 설정되지 않았나요?Selenium Server가 시작되지 않음

java.lang.RuntimeException: Could not start Selenium session: Failed to start new browser session: org.openqa.selenium.server.browserlaunchers.InvalidBrowserExecutableException: The specified path to the browser executable is invalid. 
    at com.thoughtworks.selenium.DefaultSelenium.start(DefaultSelenium.java:109) 
    at com.memoir.client.widgets.memogen.TestHomepage.setUp(TestHomepage.java:16) 
    at junit.framework.TestCase.runBare(TestCase.java:132) 
    at com.thoughtworks.selenium.SeleneseTestCase.runBare(SeleneseTestCase.java:230) 
    at junit.framework.TestResult$1.protect(TestResult.java:110) 
    at junit.framework.TestResult.runProtected(TestResult.java:128) 
    at junit.framework.TestResult.run(TestResult.java:113) 
    at junit.framework.TestCase.run(TestCase.java:124) 
    at junit.framework.TestSuite.runTest(TestSuite.java:232) 
    at junit.framework.TestSuite.run(TestSuite.java:227) 
    at org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:83) 
    at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:49) 
    at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38) 
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467) 
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683) 
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390) 
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197) 
Caused by: com.thoughtworks.selenium.SeleniumException: Failed to start new browser session: org.openqa.selenium.server.browserlaunchers.InvalidBrowserExecutableException: The specified path to the browser executable is invalid. 
    at com.thoughtworks.selenium.HttpCommandProcessor.throwAssertionFailureExceptionOrError(HttpCommandProcessor.java:112) 
    at com.thoughtworks.selenium.HttpCommandProcessor.doCommand(HttpCommandProcessor.java:106) 
    at com.thoughtworks.selenium.HttpCommandProcessor.getString(HttpCommandProcessor.java:275) 
    at com.thoughtworks.selenium.HttpCommandProcessor.start(HttpCommandProcessor.java:237) 
    at com.thoughtworks.selenium.DefaultSelenium.start(DefaultSelenium.java:100) 
    ... 16 more 

누구든지 해결할 수 있습니까? 그 오류가 발생하고 도와 주실 단서가 없습니다.

+0

Firefox가'/ usr/bin/firefox'에서 사용 가능한지 확인 했습니까? – LaurentG

+0

고맙습니다. 제 파이어 폭스 문제. 그것은 버전 12에서 실행되는 최신 버전으로 업그레이드되었습니다. –

답변

0

Selenium RC는 12보다 적은 버전의 Eclipse에서 작동합니다. 어떤 버전을 사용하고 있는지 확인할 수 있습니까

+0

그래, 내가 오래 전에 고쳐 준 덕분에. –

관련 문제