3

これは私の Selenium ブラウザ テスト クラスです (派生クラスですが、何をしているのか理解するのは難しいことではありません)。テスト ケースを実行すると、すべての相互作用が期待どおりに発生します。しかし、最終的にテストケースの結果は失敗を示しています。

package dmswebui.CR;

import org.infineta.webui.selenium4j.MainTestCase;

public class TestLogin extends MainTestCase {

  @Override
  public void setUp() throws Exception {
    super.setUp();
    startSeleniumSession("ChromeDriver", "http://192.168.8.207/");
  }

  public void testMethod() throws Exception {

        session().open("/");
        session().type("name=user","admin");
        session().type("name=password","infineta123");
        session().click("id=btnLogin-button");      session().waitForPageToLoad("30000");
        session().click("id=btnUserLogout-button");
        session().click("id=yui-gen0-button");      session().waitForPageToLoad("30000");
  }
  public void tearDown() throws Exception {
        super.tearDown();
        closeSeleniumSession();
  }
}

私が得るエラーは次のとおりです。

Testcase: testMethod took 13.939 sec
Caused an ERROR
Error communicating with the remote browser. It may have died.
4

1 に答える 1

3

これは通常、同じWebドライバーインスタンスを複数回閉じようとしているときに発生します。で何が起こるか知っていますsuper.teardown()か?selenium4jソースを確認すると、junitテストケースが拡張されています。jUnitTeardownsuper.tearDownを呼び出し、が呼び出される前にブラウザインスタンスを強制終了しますcloseSeleniumSession()

closeSeleniumSession()あなたはそれを前に置くことができますsuper.tearDown()

于 2012-06-18T18:18:36.403 に答える