请允许任何人帮助解决以下异常的根本原因。
java.lang.NullPointerException at Test_Automation.TC_Invoice_Printing.TC_input_fields_validation(TC_Invoice_Printing.java:37) 在 java.base / jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(母语 方法)at java.base / jdk.internal.reflect.NativeMethodAccessorImpl.invoke(未知 来源)at java.base / jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(未知 来自java.base / java.lang.reflect.Method.invoke(未知来源) 在 org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:124) 在org.testng.internal.Invoker.invokeMethod(Invoker.java:580)at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:716)at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:988)at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:125) 在 org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:109) 在org.testng.TestRunner.privateRun(TestRunner.java:648)at org.testng.TestRunner.run(TestRunner.java:505)at org.testng.SuiteRunner.runTest(SuiteRunner.java:455)at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:450)at at org.testng.SuiteRunner.privateRun(SuiteRunner.java:415)at at org.testng.SuiteRunner.run(SuiteRunner.java:364)at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:84)at org.testng.TestNG.runSuitesSequentially(TestNG.java:1208)at at org.testng.TestNG.runSuitesLocally(TestNG.java:1137)at at org.testng.TestNG.runSuites(TestNG.java:1049)at org.testng.TestNG.run(TestNG.java:1017)at org.testng.remote.AbstractRemoteTestNG.run(AbstractRemoteTestNG.java:114) 在org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:251) 在org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:77)
脚本:
@Test
public void TC_input_fields_validation() {
int default_input_fields_count = Invoke_Test_Instance.driver.findElements(By.xpath("//input[contains(@class,'input-lg form-control')]")).size();
System.out.println("default field count" + default_input_fields_count);
System.out.println(Invoke_Test_Instance.driver.findElement(By.xpath("/html/body/div[1]/div/div[2]/div[2]/div/div[2]/div/form/div/div/div[2]/div/div/a")).isDisplayed());
Invoke_Test_Instance.driver.findElement(By.xpath("/html/body/div[1]/div/div[2]/div[2]/div/div[2]/div/form/div/div/div[2]/div/div/a")).click();
Invoke_Test_Instance.driver.findElement(By.xpath("/html/body/div[1]/div/div[2]/div[2]/div/div[2]/div/form/div/div/div[2]/div/div/a")).click();
Invoke_Test_Instance.driver.findElement(By.xpath("/html/body/div[1]/div/div[2]/div[2]/div/div[2]/div/form/div/div/div[2]/div/div/a")).click();
}
答案 0 :(得分:0)
通过在@BeforeClass
中定义的方法中插入与Web驱动程序初始化相关的方法解决了我的问题