これは、別のクラスから関数を呼び出す私のメソッドです Selenium Setup が定義されています。
public void Transfer() throws Exception {
System.out.println("\nTransfer\n");
selenium.open("/logon/user");
selenium.windowMaximize();
login obj1 = new login();
obj1.testlogin();
selenium.click("link=TRANSFERS");
selenium.waitForPageToLoad("80000");
これは、上記の呼び出し元に対して実行する関数を持つ別のクラスです。上記のセットアップ関数には、ライブラリで呼び出されるはずのセレンオブジェクトがあります。
public class login extends SeleneseTestCase{
public void testlogin(){
System.out.println("\nLogin\n");
selenium.type("companyID", "abcd");
selenium.type("j_username", "xyz");
selenium.type("j_password", "123456");
selenium.click("submit_logon");
selenium.waitForPageToLoad("80000");
}
}
次のエラーが表示されます
1) Transfer(test)java.lang.NullPointerException
at login.testlogin(login.java:12)
at test.Transfer(test.java:26)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at com.thoughtworks.selenium.SeleneseTestCase.runBare(SeleneseTestCase.j
ava:212) で SampleSuite.main(SampleSuite.java:25)
ログインのようなすべての関数をライブラリに保存しようとしていて、スイートで必要に応じてそれらを呼び出したいのですが、呼び出された関数にセレンブラウザのポインタを渡すことができません
誰でもエラーを解決するのを手伝ってもらえますか
次のようにコードを設定します。
public void setUp() throws Exception {
selenium = new DefaultSelenium("localhost", 4444, "*chrome", "https://abc.com/");
selenium.start();
}
すべてに前もって感謝します