Forum Discussion

MrunalCTS's avatar
MrunalCTS
New Contributor
3 years ago

Unable to connect to BitBar via automation script using appium + NodeJS + WebdriverIO

Hello team,

We are trying to connect to smartbear - bitbar for mobile automation using nodeJS - wdio5.
Since this is for automation POC we are using the config file from: https://github.com/bitbar/test-samples/blob/master/samples/testing-frameworks/appium/client-side/javascript/webdriver.io/wdio.conf.js
 
While connecting we are getting error as :

[0-0] 2022-08-24T16:18:54.762Z WARN webdriver: Request failed due to <html>
<head><title>405 Not Allowed</title></head>
<body>
<center><h1>405 Not Allowed</h1></center>
<hr><center>nginx/1.21.6</center>
</body>
</html>

[0-0] 2022-08-24T16:18:54.762Z INFO webdriver: Retrying 1/3
2022-08-24T16:18:54.762Z INFO webdriver: [POST] https://cloud.bitbar.com/#testing/dashboard:443%5Cwd%5Chub%5Csession

 
Can anyone suggest how to correct this?
Appreciate any help
  • Hi MrunalCTS!

     

    I was able to stand up our WDIO sample without issue unfortunately. 

     

    Can you tell us what all has been changed in the config file?

     

    I also see the 405 is coming back from an NGINX server it looks like. Does your application need to contact a machine that is not publicly available?

     

    If so, and you are using NGINX, it might help to investigate using our SecureTunnel tool for local connections;

    https://support.smartbear.com/bitbar/docs/tunnel/index.html

     

    If not, let me know and any more information about the config file, and your test itself. We'll be happy to help.

    • MrunalCTS's avatar
      MrunalCTS
      New Contributor

      Thanks Nick.

      We have made changes to the capabilities as below in the config file:

      const apiKey = '<my API Key>';
      const appId = 'VCM_Android_UAT_V-1.5.4.1.apk';
      protocol: 'https',
          hostname: 'cloud.bitbar.com/#testing/dashboard',
          port: 443,
          path: '/wd/hub',
      capabilities: [{
            bitbar_apiKey: apiKey,
            bitbar_device: "Google Pixel 3a Android 12",
            bitbar_app :  appId,
            bitbar_target: "android",
            deviceName: "Android Phone",
          }],
      The machine is publicly available and there should not be any restriction on accessing that.
      • MrunalCTS's avatar
        MrunalCTS
        New Contributor

        hello, 

        I was passing incorrect deviceId, corrrecting which I was able to connect to bitbar.

        However now on connecting to bitbar I am unable to launch our application and getting below error:

         

        2022-08-29 06:49:12:612 - [debug] [ADB] Running '/root/Android/Sdk/platform-tools/adb -P 5037 -s 8A2Y0E73T shell 'settings delete global hidden_api_policy_pre_p_apps;settings delete global hidden_api_policy_p_apps;settings delete global hidden_api_policy''
        2022-08-29 06:49:12:744 - [debug] [BaseDriver] Event 'newSessionStarted' logged at 1661755752744 (06:49:12 GMT+0000 (Coordinated Universal Time))
        2022-08-29 06:49:12:799 - [debug] [W3C] Encountered internal error running command: Error: Cannot start the 'com.victorycapital' application. Visit https://github.com/appium/appium/blob/master/docs/en/writing-running-appium/android/activity-startup.md for troubleshooting. Original error: Error executing adbExec. Original error: 'Command '/root/Android/Sdk/platform-tools/adb -P 5037 -s 8A2Y0E73T shell am start -W -n com.victorycapital/com.victorycapital.MainActivity -S -a android.intent.action.MAIN -c android.intent.category.LAUNCHER -f 0x10200000' timed out after 20000ms'. Try to increase the 20000ms adb execution timeout represented by 'adbExecTimeout' capability
        2022-08-29 06:49:12:799 - [debug] [W3C] at ADB.startApp (/opt/testdroid/appium-1.22.3/node_modules/appium/node_modules/appium-adb/lib/tools/apk-utils.js:179:11)

         

        Can you please help on how to overcome this?