我有一个名为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) 内集
答案 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对象并将其声明为静态,以便您可以全局使用它。