我们如何将对象 selenium 调用到另一个具有一半 selenium 代码的文件。
在 PHP 中我可以通过以下代码。
login($this);
---->login($sel){ ..... }
我可以在 Java 中执行相同的操作,因为我的 selenium 设置位于一个文件中,而使用它的函数位于另一个文件中,我们可以在收到 NullPointerException 时将 selenium 传递给其他文件吗?
如果您想了解与此相关的更多详细信息,请告诉我。
Update
库.java
public class Library extends SeleneseTestCase {
public int Login() throws Exception {
if (selenium.isElementPresent("companyID")) {
selenium.type("companyID", "COMP");
selenium.click("submit_logon");
selenium.waitForPageToLoad("80000");
}
}
}
登录.java
public class Login extends Library {
@Before
public void setUp() throws Exception {
selenium = new DefaultSelenium("localhost", 4444, "*chrome", "https://businessbanking.com/");
selenium.start();
}
public void testAllTests() throws Exception {
Library obj1 = new Library();
obj1.Login();
}
}
根据我的观察,在登录文件上启动的硒实例并未发送到库。我尝试传递“selenium”作为参数但失败了,在库中我尝试了“super.setUp()”它也失败了。
Thanks.
Replace:
public void testAllTests() throws Exception {
Library obj1 = new Library();
obj1.Login();
}
With:
public void testAllTests() throws Exception {
super.Login();
}
由于您的 Login 类已经扩展了 Library,因此它已经具有 Login() 方法。您当前正在做的是创建一个新的 Library 对象,该对象不运行@Before
因此 Selenium 字段未初始化(在新对象中)。
当子类扩展基类时,它将继承其方法。这是一个基本的 Java 和 OOP 概念。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)