2016-05-02 4 views
0

Windows用のphantomjs.exeは完璧に動作していますが、CentDのヘッドレステストにはWebDriverでphantomjsを使用しています。PhantomJS 2.1.1: "errorMessage": "要素が現在表示されておらず、操作されていない可能性があります。

@Before 
public void setUp() 
{    
    logger.info("Inside setup()."); 
    DesiredCapabilities caps = new DesiredCapabilities(); 
    caps.setJavascriptEnabled(true);     
    caps.setCapability(PhantomJSDriverService.PHANTOMJS_EXECUTABLE_PATH_PROPERTY, "phantomjs"); 
    driver = new PhantomJSDriver(caps); 
    driver.manage().window().maximize(); 
    logger.info("Exiting setUP()."); 
} 

"errorMessage":"Element is not currently visible and may not be manipulated 

または

Error communicating with the remote browser. It may have died. 

私はセントOSのための実行可能なjarファイルを作成するために以下のコードを持っている:セントOS用のjarファイルは、のようなエラーが発生しています

私はちょうどスローエラーを理解するためにtry-catchブロックを入れて、以下のコードは、エラーの原因であることが判明:

public void goToMyPageAfterLogin() 
{ 
    try 
    { 
     logger.info("Inside goToMyPageAfterLogin()."); 
     driver.manage().window().maximize(); 
     wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//li[@id='header-mypage-top']//a"))); 

     WebElement element = driver.findElement(By.xpath("//li[@id='header-mypage-top']//a")); 
     element.click(); 
     logger.info("Exiting goToMyPageAfterLogin()."); 
    }catch(Exception ex) 
    { 
     ex.printStackTrace(); 
    }  
} 

これli要素がとにかく発見されていません。しかし、この要素は、バージョン2.1.1のphantomjs.exeでWindows環境でコードを実行すると見つかります。

+0

したがって、別の方法でそのli要素を見つけることができます。 cssSelectorを使ってみてください –

答えて

関連する問題