1

私はセレンが初めてで、まだ調査中です。サイトで ajax 要素をテストしようとしています。要素をクリックすると、ページの一部の領域にテキストが表示されます。このテストは、RC と WebDriver で実行しました。それはうまくいっています。今、私は(好奇心から)WebDriverBackedSeleniumを介してテストしたいと考えています。しかし、それはエラーをスローしています。コードは次のとおりです。

    import com.thoughtworks.selenium.SeleneseTestBase;
    import org.openqa.selenium.WebDriver;
    import org.openqa.selenium.WebDriverBackedSelenium;
    import org.openqa.selenium.internal.WrapsDriver;
    import org.junit.After;
    import org.junit.Before;
    import org.junit.Test;


    public class CheckElements extends SeleneseTestBase {
    @Before
    public void setUp() throws Exception {
        String baseUrl = "path/to/the/site";
        WebDriver driver = ((WrapsDriver) selenium).getWrappedDriver();
        selenium = new WebDriverBackedSelenium(driver, baseUrl);
    }

エラーは次のとおりです。

    java.lang.NullPointerException
             at com.CheckElements.setUp(CheckElements.java:17)

主な問題はセットアップ方法にあると思います。私はセレン スタンドアロン サーバー 2.0 と junit 4.7 を使用しています。どこが間違っているのか教えてください。

別の質問??

以下のように同じテストを書くと、テストは正常に実行されますが、テキストが必要なものと一致しなくてもエラーは発生しません。

    import com.thoughtworks.selenium.SeleneseTestBase;
    import org.openqa.selenium.firefox.FirefoxDriver;
    import org.openqa.selenium.WebDriver;
    import org.openqa.selenium.WebDriverBackedSelenium;
    import org.junit.After;
    import org.junit.Before;
    import org.junit.Test;


     public class New extends SeleneseTestBase {

      WebDriver driver;
      @Before
      public void setUp() throws Exception {
      driver = new FirefoxDriver();
      String baseUrl = "path/to/the/link";
      selenium = new WebDriverBackedSelenium(driver, baseUrl);
  }

私の質問が明確であることを願っています。ありがとう。

4

1 に答える 1

2

これが問題になることを強く期待しています:

WebDriver driver = ((WrapsDriver) selenium).getWrappedDriver();

ドライバー インスタンスが null である可能性があります。

他のテストとの違いは、FirefoxDriver に明示的に作成することです。

driver = new FirefoxDriver();
于 2012-05-10T16:35:12.717 に答える