appium / appium/java-client

findNodeInCurrentFileSystem fails at command.destroy()

Open
#1,461 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Java
Stars
1.3k
Forks
752
Avg merge
6d 21h
Merged PRs (30d)
8

Description

The problem

Looks like Appium is looking for a tmp file to destroy, but is not finding it while trying to start the server - rm: /tmp/deepak.start.74839

Environment

  • Appium version (or git revision) that exhibits the issue: 1.20.2
  • Last Appium version that did not exhibit the issue (if applicable):
  • Desktop OS/version used to run Appium:m Mac OS X 11.2.3
  • Node.js version (unless using Appium.app|exe): v12.22.1
  • Npm or Yarn package manager: npm v = 6.14.12
  • Mobile platform/version under test: Android
  • Real device or emulator/simulator: Real Device
  • Appium CLI or Appium.app|exe: I have tried both CLI and app

Details

I am unable to build the Appium Server using this standard line appiumDriverLocalService = AppiumDriverLocalService.buildDefaultService();

I get the following error message

io.appium.java_client.service.local.InvalidServerInstanceException: Invalid server instance exception has occured: There is no installed nodes! Please install node via NPM (https://www.npmjs.com/package/appium#using-node-js) or download and install Appium app (http://appium.io/downloads.html)

    at io.appium.java_client.service.local.AppiumServiceBuilder.findNodeInCurrentFileSystem(AppiumServiceBuilder.java:184)
    at io.appium.java_client.service.local.AppiumServiceBuilder.checkAppiumJS(AppiumServiceBuilder.java:345)
    at io.appium.java_client.service.local.AppiumServiceBuilder.createArgs(AppiumServiceBuilder.java:425)
    at org.openqa.selenium.remote.service.DriverService$Builder.build(DriverService.java:358)
    at io.appium.java_client.service.local.AppiumDriverLocalService.buildService(AppiumDriverLocalService.java:86)
    at io.appium.java_client.service.local.AppiumDriverLocalService.buildDefaultService(AppiumDriverLocalService.java:82)
.
.
.
Caused by: java.io.IOException: /Users/deepak/.nvm/versions/node/v12.18.3/lib/node_modules
rm: /tmp/deepak.start.74839: No such file or directory

    at io.appium.java_client.service.local.AppiumServiceBuilder.findNodeInCurrentFileSystem(AppiumServiceBuilder.java:185)
    ... 29 more 

Link to Appium logs

Code To Reproduce Issue [ Good To Have ]

            final AppiumServiceBuilder appiumServiceBuilder = new AppiumServiceBuilder();
            appiumDriverLocalService = appiumServiceBuilder
                    .withArgument(new AppiumServerArgument("--log-level"),appConfig.getAppiumLogLevel())
                    .usingAnyFreePort().build();
            appiumDriverLocalService.start();

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with AppiumServiceBuilder.findNodeInCurrentFileSystem, then trace checkAppiumJS and createArgs using the stack trace and reproduction snippet. Reproduce the failure in the reported Java, Node.js, macOS, and Appium versions, and compare the Node discovery and temporary-file cleanup paths. Done means the service can build without the reported missing-Node or temporary-file error.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
mobile-dev, testing-qa
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.