java - 使用自定义逻辑声明公共(public)静态变量

标签 java android selenium-webdriver static

我有以下类(class):

public class Actionkeywords{

    public static WebDriver driver;

    public static void openBrowser(String object, String data) {
                FirefoxProfile profile = new FirefoxProfile();
                driver = new FirefoxDriver(profile);
                driver.manage().timeouts().implicitlyWait(15, TimeUnit.SECONDS);
    }

    public static void mobilesetup{
        driver=new AndroidDriver();
    }
}

在这里,我需要有一个自定义逻辑来为两个变量使用相同名称的驱动程序。 像这样:

if(automationtype.equalignorecase("Mobile"))
    Android driver=new AndroidDriver();
else
    Webdriver driver=new WebDriver();

自动化类型是一个字符串变量,它将携带自动化类型。即 Web 自动化或移动自动化。

最佳答案

只需省略行首的类型。否则:

  1. 你正在声明一个局部变量;
  2. 您在条件分支的范围内声明它,因此之后不能使用它。

所以它看起来像:

if(automationtype.equalIgnoreCase("Mobile"))
  driver=new AndroidDriver();
else
  driver=new WebDriver();

关于java - 使用自定义逻辑声明公共(public)静态变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37724158/

相关文章:

Java将负数转为0

android - webview 不适用于所有域

java - 将变量从一个类传递到另一类的 sendkeys 函数

java - isSelected() 方法在 selenium 代码中返回 false

java - 如何编程远程 JVM 以在不支持 X11 的情况下显示在本地桌面上?

java - 从发布版本的 android 项目中删除代码行

java - 对话框未打开

java - 为什么将设备语言更改为 RTL 语言时 fragment/Activity 布局看起来很糟糕?

python - 为什么使用 find_element(By...) 而不是 find_element_by_

java - 无法从 TemporalAccessor 获取 ZonedDateTime :