0

test というメソッドがあり、次のように Webdriver オブジェクトを定義しています。

FirefoxProfile firefoxprofile = new FirefoxProfile();
firefoxprofile.setAssumeUntrustedCertificateIssuer(false);
WebDriver driver = new FirefoxDriver(firefoxprofile);
Selenium selenium = new WebDriverBackedSelenium(driver, "https://10.17.17.212:4343");

この関数では、selenium.click() などの Selenium コマンドを使用できます。

しかし、この関数から呼び出す関数では使用できません。たとえば、set() (private int set) という関数を set 内で呼び出します。

4

2 に答える 2

0

WebDriver変数を静的として宣言することで解決しました。私のコードでは次のようになります。

public class BaseSeleniumTest extends SeleneseTestBase {
    static WebDriver driver;

    @BeforeClass
    public static void firefoxSetUp() throws MalformedURLException {

        driver = new FirefoxDriver();  
    }
    @Before
    public void homePageRefresh() throws IOException {
        driver.get(propertyKeysLoader("login.base.url"));
    }


    @AfterClass
    public static void closeFirefox(){
        driver.quit();
    }
....
//blablabla}
于 2012-10-17T10:12:54.377 に答える
0

メソッドの外でセレンオブジェクトを作成し、それを静的として宣言して、グローバルに使用できるようにします。

于 2012-10-17T10:51:30.053 に答える