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環境でコードを実行すると見つかります。
したがって、別の方法でそのli要素を見つけることができます。 cssSelectorを使ってみてください –