我有2个Class文件。 Class_login.java和Class_Company.java。 我将xpath存储在属性文件中的其他位置。 在Class_login.java中编写了一种方法来加载此属性文件。
static Properties objprop1 = new Properties();
public static FileInputStream fileInputS = null;
static void propManager() throws IOException {
fileInputS = new FileInputStream("C:\\Test-Automation\\FinanceSys\\myproj\\src\\test\\resources\\xpath.properties");
objprop1.load(fileInputS);
}
objprop1
在Class_login.java
中的方法外部声明。
我需要在Class_Company.java
中再次加载此文件。如果我像Class_login.PropertyManager();
一样使用它并使用相同的objprop1,则文件不会加载,并且找不到xpath。
因此,我用不同的名称(static void PropertyManager() {
)和
public static Properties objprop = new Properties();
创建了相同的方法,我知道这不是正确的方法。但是如何才能做到这一点呢?
在Class_Company.java
的主要方法中,我分别调用了这些方法,以便不会像以前那样出现null xpath错误。
public static void main(String[] args) throws Exception {
// TODO Auto-generated method stub
Class_login LogFeature = new Login();
Class_Company CC = new CCompany();
**Class_Company.PropertyManager();**
LogFeature.OpenBrowser("CH32");
LogFeature.EnterURL("http://localhost:90/AppFin");
LogFeature.PageMaximise();
LogFeature.EnterUserName("uname");
LogFeature.EnterPassword("abcd!@");
LogFeature.ClickLoginButton();
Thread.sleep(2000);
**Class_Company.propManager();**
CC.clickNewCompany("Manage");
请告诉我正确的做法。我想在两个类文件中都使用objprop,并且在Class_Company.java中只使用一次。而不是上面突出显示的两倍。
答案 0 :(得分:1)
这是基本示例,您需要:
全局变量声明:
Class variableCollection {
public static string data;
}
您可以通过扩展类或对象引用来使用此变量。
class login extends variableCollection{
}
OR
class login{
variableCollection objvar = new variableCollection();
objvar.data = "";
}
您可以以相同的方式在多个类中使用相同的变量。