1

以下のコードを実行しようとしていますが、無駄です。

コードがコンパイルされず、「セレンを解決できない」というエラーが発生します。誰でも以下のコードを調べることができますか -

package com.example.tests;

import com.thoughtworks.selenium.*;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import java.util.regex.Pattern;

public class prashantk {
    @Before
    public void setUp() throws Exception {
        selenium = new DefaultSelenium("localhost", 4444, "*chrome", "http://book.theautomatedtester.co.uk/");
        selenium.start();
    }

    @Test
    public void testAuto_1() throws Exception {
        selenium.open("/chapter2");
        verifyEquals("Button with name", selenium.getValue("name=but2"));
        verifyEquals("chocolate", selenium.getValue("xpath=(//input[@name='verifybutton'])[2]"));
        selenium.click("link=Index");
        selenium.waitForPageToLoad("60000");
        verifyTrue(selenium.isTextPresent("Chapter4"));
    }

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

3 に答える 3

4

という名前のフィールドへの参照seleniumがありますが、そのようなフィールドは定義されていません。

クラスのどこかに、おそらく の直前の行に、次の@Beforeフィールドを追加します。

Selenium selenium;

どうやらコメントから、メソッドもコード内verifyEqualsで参照されていません。verifyTrueこれらのメソッドはSeleneseTestCase、テストが拡張する基本クラスで定義されます。

public class prashantk extends SeleneseTestCase {
于 2012-12-15T19:52:51.083 に答える
0

コードを見ると、最初に Selenium IDE で実行され、Eclipse などのツールにエクスポートされたという印象を受けます。JUnitアサーションまたはHamcrestアサーションを使用する代わりに、WebDriverに「verifyEquals」が存在するとは本当に思いません。Java でコードをゼロから作成してみると、手間が大幅に軽減されます。

于 2015-06-09T11:12:58.413 に答える
0

以下に示すように、コード内の以下の行を置き換えます

selenium = new DefaultSelenium("localhost", 4444, "*chrome", "http://book.theautomatedtester.co.uk/");

             to

DefaultSelenium selenium = new DefaultSelenium("localhost", 4444, "*chrome", "http://book.theautomatedtester.co.uk/");

于 2012-12-16T05:27:01.113 に答える