Appium 2.0移动端自动化脚本报错:InvalidServerInstanceException及空指针问题
测试执行错误日志
初始检测信息
[RemoteTestNG] 检测到TestNG版本6.14.3 [TestNGContentHandler] [警告] 强烈建议在文件顶部添加<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">,否则TestNG可能执行失败或无法正常工作。 null
配置失败:@BeforeClass ConfigureAppium
io.appium.java_client.service.local.InvalidServerInstanceException: 主Appium脚本不存在于路径'\usr\local\lib\node_modules\appium\build\lib\main.js' 位于 io.appium.java_client.service.local.AppiumServiceBuilder.validatePath(AppiumServiceBuilder.java:131) 位于 io.appium.java_client.service.local.AppiumServiceBuilder.loadPathToMainScript(AppiumServiceBuilder.java:294) 位于 io.appium.java_client.service.local.AppiumServiceBuilder.createArgs(AppiumServiceBuilder.java:361) 位于 io.appium.java_client.service.local.AppiumServiceBuilder.createArgs(AppiumServiceBuilder.java:60) 位于 org.openqa.selenium.remote.service.DriverService$Builder.build(DriverService.java:444) 位于 org.rahulshettyacademy.utils.AppiumUtils.startAppiumServer(AppiumUtils.java:55) 位于 org.rahulshettyacademy.TestUtils.AndroidBaseTest.ConfigureAppium(AndroidBaseTest.java:34) 位于 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 位于 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 位于 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 位于 java.lang.reflect.Method.invoke(Method.java:498) 位于 org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:124) 位于 org.testng.internal.MethodInvocationHelper.invokeMethodConsideringTimeout(MethodInvocationHelper.java:59) 位于 org.testng.internal.Invoker.invokeConfigurationMethod(Invoker.java:458) 位于 org.testng.internal.Invoker.invokeConfigurations(Invoker.java:222) 位于 org.testng.internal.Invoker.invokeConfigurations(Invoker.java:142) 位于 org.testng.internal.TestMethodWorker.invokeBeforeClassMethods(TestMethodWorker.java:168) 位于 org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:105) 位于 org.testng.TestRunner.privateRun(TestRunner.java:648) 位于 org.testng.TestRunner.run(TestRunner.java:505) 位于 org.testng.SuiteRunner.runTest(SuiteRunner.java:455) 位于 org.testng.SuiteRunner.runSequentially(SuiteRunner.java:450) 位于 org.testng.SuiteRunner.privateRun(SuiteRunner.java:415) 位于 org.testng.SuiteRunner.run(SuiteRunner.java:364) 位于 org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52) 位于 org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:84) 位于 org.testng.TestNG.runSuitesSequentially(TestNG.java:1208) 位于 org.testng.TestNG.runSuitesLocally(TestNG.java:1137) 位于 org.testng.TestNG.runSuites(TestNG.java:1049) 位于 org.testng.TestNG.run(TestNG.java:1017) 位于 org.testng.remote.AbstractRemoteTestNG.run(AbstractRemoteTestNG.java:115) 位于 org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:251) 位于 org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:77)
配置失败:@AfterClass tearDown
java.lang.NullPointerException 位于 org.rahulshettyacademy.TestUtils.AndroidBaseTest.tearDown(AndroidBaseTest.java:50) 位于 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 位于 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 位于 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 位于 java.lang.reflect.Method.invoke(Method.java:498) 位于 org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:124) 位于 org.testng.internal.MethodInvocationHelper.invokeMethodConsideringTimeout(MethodInvocationHelper.java:59) 位于 org.testng.internal.Invoker.invokeConfigurationMethod(Invoker.java:458) 位于 org.testng.internal.Invoker.invokeConfigurations(Invoker.java:222) 位于 org.testng.internal.Invoker.invokeConfigurations(Invoker.java:142) 位于 org.testng.internal.TestMethodWorker.invokeAfterClassMethods(TestMethodWorker.java:214) 位于 org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:111) 位于 org.testng.TestRunner.privateRun(TestRunner.java:648) 位于 org.testng.TestRunner.run(TestRunner.java:505) 位于 org.testng.SuiteRunner.runTest(SuiteRunner.java:455) 位于 org.testng.SuiteRunner.runSequentially(SuiteRunner.java:450) 位于 org.testng.SuiteRunner.privateRun(SuiteRunner.java:415) 位于 org.testng.SuiteRunner.run(SuiteRunner.java:364) 位于 org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52) 位于 org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:84) 位于 org.testng.TestNG.runSuitesSequentially(TestNG.java:1208) 位于 org.testng.TestNG.runSuitesLocally(TestNG.java:1137) 位于 org.testng.TestNG.runSuites(TestNG.java:1049) 位于 org.testng.TestNG.run(TestNG.java:1017) 位于 org.testng.remote.AbstractRemoteTestNG.run(AbstractRemoteTestNG.java:115) 位于 org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:251) 位于 org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:77)
配置与测试跳过信息
配置已跳过:@BeforeMethod preSetup 已跳过:FillForm_ErrorValidation io.appium.java_client.service.local.InvalidServerInstanceException: 主Appium脚本不存在于路径'\usr\local\lib\node_modules\appium\build\lib\main.js' 位于 io.appium.java_client.service.local.AppiumServiceBuilder.validatePath(AppiumServiceBuilder.java:131) 位于 io.appium.java_client.service.local.AppiumServiceBuilder.loadPathToMainScript(AppiumServiceBuilder.java:294) 位于 io.appium.java_client.service.local.AppiumServiceBuilder.createArgs(AppiumServiceBuilder.java:361) 位于 io.appium.java_client.service.local.AppiumServiceBuilder.createArgs(AppiumServiceBuilder.java:60) 位于 org.openqa.selenium.remote.service.DriverService$Builder.build(DriverService.java:444) 位于 org.rahulshettyacademy.utils.AppiumUtils.startAppiumServer(AppiumUtils.java:55) 位于 org.rahulshettyacademy.TestUtils.AndroidBaseTest.ConfigureAppium(AndroidBaseTest.java:34) 位于 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 位于 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 位于 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 位于 java.lang.reflect.Method.invoke(Method.java:498) 位于 org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:124) 位于 org.testng.internal.MethodInvocationHelper.invokeMethodConsideringTimeout(MethodInvocationHelper.java:59) 位于 org.testng.internal.Invoker.invokeConfigurationMethod(Invoker.java:458) 位于 org.testng.internal.Invoker.invokeConfigurations(Invoker.java:222) 位于 org.testng.internal.Invoker.invokeConfigurations(Invoker.java:142) 位于 org.testng.internal.TestMethodWorker.invokeBeforeClassMethods(TestMethodWorker.java:168) 位于 org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:105) 位于 org.testng.TestRunner.privateRun(TestRunner.java:648) 位于 org.testng.TestRunner.run(TestRunner.java:505) 位于 org.testng.SuiteRunner.runTest(SuiteRunner.java:455) 位于 org.testng.SuiteRunner.runSequentially(SuiteRunner.java:450) 位于 org.testng.SuiteRunner.privateRun(SuiteRunner.java:415) 位于 org.testng.SuiteRunner.run(SuiteRunner.java:364) 位于 org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52) 位于 org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:84) 位于 org.testng.TestNG.runSuitesSequentially(TestNG.java:1208) 位于 org.testng.TestNG.runSuitesLocally(TestNG.java:1137) 位于 org.testng.TestNG.runSuites(TestNG.java:1049) 位于 org.testng.TestNG.run(TestNG.java:1017) 位于 org.testng.remote.AbstractRemoteTestNG.run(AbstractRemoteTestNG.java:115) 位于 org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:251) 位于 org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:77)
测试执行统计
=============================================== 默认测试 执行测试数:1,失败数:0,跳过数:1 配置失败数:2,跳过数:1 =============================================== 默认测试套件 总执行测试数:1,失败数:0,跳过数:1 配置失败数:2,跳过数:1 ===============================================
内容的提问来源于stack exchange,提问作者Daxesh
相关产品推荐
相关产品推荐

