安装nodejs起因,本地在运行appium自动化用例时,报如下错误:
Running com.vimalselvam.stf.AndroidTest
Configuring TestNG with: org.apache.maven.surefire.testng.conf.TestNG652Configurator@4361bd48
四月 26, 2021 2:30:07 下午 com.vimalselvam.DeviceApi connectDevice
严重: Device is in use
Tests run: 4, Failures: 1, Errors: 0, Skipped: 3, Time elapsed: 1.854 sec <<< FAILURE!
setup(com.vimalselvam.stf.AndroidTest) Time elapsed: 1.72 sec <<< FAILURE!
io.appium.java_client.service.local.InvalidNodeJSInstance: Node.js is not installed!
at io.appium.java_client.service.local.AppiumServiceBuilder.findDefaultExecutable(AppiumServiceBuilder.java:20
1)
at org.openqa.selenium.remote.service.DriverService$Builder.build(DriverService.java:296)
at io.appium.java_client.service.local.AppiumDriverLocalService.buildService(AppiumDriverLocalService.java:74)
at io.appium.java_client.service.local.AppiumDriverLocalService.buildDefaultService(AppiumDriverLocalService.j
ava:70)
at com.vimalselvam.stf.AndroidTest.createAppiumService(AndroidTest.java:35)
at com.vimalselvam.stf.AndroidTest.setup(AndroidTest.java:56)
Caused by: java.lang.NullPointerException: Unable to find executable for: node.exe
at com.google.common.base.Preconditions.checkNotNull(Preconditions.java:251)
at org.openqa.selenium.os.UnixProcess.(UnixProcess.java:62)
at org.openqa.selenium.os.CommandLine.(CommandLine.java:38)
at io.appium.java_client.service.local.AppiumServiceBuilder.findDefaultExecutable(AppiumServiceBuilder.java:19
5)
... 38 more
Results :
Failed tests: setup(com.vimalselvam.stf.AndroidTest): Node.js is not installed!
Tests run: 4, Failures: 1, Errors: 0, Skipped: 3
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 16.593 s
[INFO] Finished at: 2021-04-26T14:30:08+08:00
错误分析:
从部分关键错误,很容易看出nodejs没有安装,所以在启动appium server时报该错误。
官网下载对应系统版本即可:http://nodejs.org/download/
下载msi格式的安装包,直接下一步下一步安装即可,注意更改安装路径(默认C盘);
此种方式安装好以后,会默认把环境变量配好,可以在cmd命令窗口直接使用。
注意:此处你安装的版本应该是与后面要下载的appium的版本是有关联的,有些版本它不能相互兼容,导致下载不下来(本例中卸载重装了3次,从15.0.0->13.13.0->12.9.0)
所以,你可以大致看一下你要用的appium版本它的发布时间,然后根据这个时间去找对应的nodejs当时大致的版本,然后下载下来,这样成功率高一些。
C:\Users\Administrator>node -v
v12.9.0
C:\Users\Administrator>npm -v
6.10.2
#设置仓库为 taobao的,这样安装软件的时候快一些
C:\Users\Administrator>npm config set registry https://registry.npm.taobao.org
如下图,没有安装成功
解决上述未安装成功问题:
重新卸载了nodejs,中间试过很多版本,最终能下载成功的版本:v12.9.0
接着参考网上说设置 node_global、node_cache目录
C:\Users\Administrator>npm config set prefix="D:\\tools\\nodejs\\node_global"
C:\Users\Administrator>npm config set prefix="D:\\tools\\nodejs\\node_cache"
再次下载appium
npm install appium@1.18.0 -g
联系客服