Webdriverbackedselenium无法从函数访问selenium命令

时间:2012-10-17 08:39:40

标签: selenium automation webdriver selenium-rc selenium-webdriver

我有一个名为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命令,比如 selenium.click()等。

但是我不能在我从这个函数调用的函数中使用它们。 例如我调用一个名为set()的函数(private int set) 内集

2 个答案:

答案 0 :(得分: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}

答案 1 :(得分:0)

在方法之外创建selenium对象并将其声明为静态,以便您可以全局使用它。