How to use wdio.remote method in Appium

Best JavaScript code snippet using appium

main.js

Source:main.js Github

copy

Full Screen

...13};14describe("Chronology element is visible", function () {15    let client;16    beforeEach(async function () {17        client = await wdio.remote(opts);18    });19    afterEach(async function () {20        await client.deleteSession();21    });22    it("cronology element is visible", async function () {23        await client.pause(10000);24        const xpath = "/hierarchy/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.view.ViewGroup/android.view.ViewGroup/android.view.ViewGroup/android.view.ViewGroup/android.view.ViewGroup/android.view.ViewGroup/android.widget.ScrollView/android.view.ViewGroup/android.view.ViewGroup[2]/android.view.ViewGroup[3]";25        const field = await client.$(xpath);26        const visible = await field.isDisplayed();27        assert(visible);28    });29});30describe("navbar is visible", function () {31    let client;32    beforeEach(async function () {33        client = await wdio.remote(opts);34    });35    afterEach(async function () {36        await client.deleteSession();37    });38    it("navbar element is visible", async function () {39        await client.pause(10000);40        const xpath = "/hierarchy/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.view.ViewGroup/android.view.ViewGroup/android.view.ViewGroup/android.view.ViewGroup/android.view.ViewGroup/android.view.ViewGroup/android.view.ViewGroup";41        const field = await client.$(xpath);42        const visible = await field.isDisplayed();43        assert(visible);44    });45});46describe("Navigation to patient list works", function () {47    let client;48    beforeEach(async function () {49        client = await wdio.remote(opts);50    });51    afterEach(async function () {52        await client.deleteSession();53    });54    it("navigation test", async function () {55        await client.pause(5000);56        const xpathButton = "/hierarchy/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.view.ViewGroup/android.view.ViewGroup/android.view.ViewGroup/android.view.ViewGroup/android.view.ViewGroup/android.view.ViewGroup/android.view.ViewGroup/android.view.ViewGroup[2]";57        const xpath = "/hierarchy/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.view.ViewGroup/android.view.ViewGroup/android.view.ViewGroup[1]/android.view.ViewGroup/android.view.ViewGroup/android.view.ViewGroup/android.widget.ScrollView/android.view.ViewGroup/android.widget.TextView[1]";58        const button = await client.$(xpathButton);59        button.click();60        await client.pause(5000);61        const field = await client.$(xpath);62        const text = await field.getText();63        assert.equal(text, "Os Meus Pacientes");64    });65});66describe("check patient info", function () {67    let client;68    beforeEach(async function () {69        client = await wdio.remote(opts);70    });71    afterEach(async function () {72        await client.deleteSession();73    });74    it("mobile info test", async function () {75        await client.pause(5000);76        const xpathButton1 = "/hierarchy/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.view.ViewGroup/android.view.ViewGroup/android.view.ViewGroup/android.view.ViewGroup/android.view.ViewGroup/android.view.ViewGroup/android.view.ViewGroup/android.view.ViewGroup[2]";77        const xpathButton2 = "/hierarchy/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.view.ViewGroup/android.view.ViewGroup/android.view.ViewGroup[1]/android.view.ViewGroup/android.view.ViewGroup/android.view.ViewGroup/android.widget.ScrollView/android.view.ViewGroup/android.view.ViewGroup[3]";78        const button1 = await client.$(xpathButton1);79        button1.click();80        await client.pause(5000);81        const button2 = await client.$(xpathButton2);82        button2.click();83        await client.pause(5000);84        const mobile = "/hierarchy/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.view.ViewGroup/android.view.ViewGroup/android.view.ViewGroup[2]/android.view.ViewGroup/android.view.ViewGroup/android.view.ViewGroup/android.widget.ScrollView/android.view.ViewGroup/android.view.ViewGroup[2]/android.view.ViewGroup/android.view.ViewGroup/android.widget.TextView[3]";85        const phone_number = "/hierarchy/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.view.ViewGroup/android.view.ViewGroup/android.view.ViewGroup[2]/android.view.ViewGroup/android.view.ViewGroup/android.view.ViewGroup/android.widget.ScrollView/android.view.ViewGroup/android.view.ViewGroup[2]/android.view.ViewGroup/android.view.ViewGroup/android.widget.TextView[2]";86        const mobile_text = await client.$(mobile);87        const text_mobile = await mobile_text.getText();88        const mobile_number = await client.$(phone_number);89        const text_number = await mobile_number.isDisplayed();90    91        assert(text_number);92        assert.equal(text_mobile, "Mobile");93    });94});95describe("submit treatment", function () {96    let client;97    beforeEach(async function () {98        client = await wdio.remote(opts);99    });100    afterEach(async function () {101        await client.deleteSession();102    });103    it("straight to the end", async function () {104        await client.pause(5000);105        const xpathButton1 = "/hierarchy/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.view.ViewGroup/android.view.ViewGroup/android.view.ViewGroup/android.view.ViewGroup/android.view.ViewGroup/android.view.ViewGroup/android.view.ViewGroup/android.view.ViewGroup[2]";106        const xpathButton2 = "/hierarchy/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.view.ViewGroup/android.view.ViewGroup/android.view.ViewGroup[1]/android.view.ViewGroup/android.view.ViewGroup/android.view.ViewGroup/android.widget.ScrollView/android.view.ViewGroup/android.view.ViewGroup[3]";107        const xPathButton3 = "/hierarchy/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.view.ViewGroup/android.view.ViewGroup/android.view.ViewGroup[1]/android.view.ViewGroup/android.view.ViewGroup/android.view.ViewGroup/android.widget.ScrollView/android.view.ViewGroup/android.view.ViewGroup[6]/android.view.ViewGroup[2]";108        const button1 = await client.$(xpathButton1);109        button1.click();110        await client.pause(5000);111        const button2 = await client.$(xpathButton2);112        button2.click();...

Full Screen

Full Screen

driver.js

Source:driver.js Github

copy

Full Screen

...31     */32    static async createClient() {33        if (!this.client) {34            if (deviceName_1.DeviceName.getDeviceName() == 'a8') {35                this.client = await wdio.remote(driverConfig_1.DriverConfig.config_a8);36            }37            else if (deviceName_1.DeviceName.getDeviceName() == 'elo') {38                this.client = await wdio.remote(driverConfig_1.DriverConfig.config_elo);39            }40        }41        return this.client;42    }43}...

Full Screen

Full Screen

test1.js

Source:test1.js Github

copy

Full Screen

...27    });28});29// describe('First WebdriverIO - Test',function() {30//   it('Just Open Kabbage!',function() {31//     //var title = wdio.remote(browserOptions).init().url('https://www.kabbage.com/').getTitle();32//     //var title = browser.url('https://www.kabbage.com/').getTitle();33//     browser.url('https://www.kabbage.com/');34//     console.log("Got the Title.. : ", title);35//     assert.equal(title,"www.kabbage.com");36//     console.log("Validation Success..");37//   });38//39//   describe('NEW - First WebdriverIO - Test', () => {40//     it('Just Open Kabbage!', () => {41//       //var title = wdio.remote(browserOptions).init().url('https://www.kabbage.com/').getTitle();42//       //var title = browser.url('https://www.kabbage.com/').getTitle();43//       browser.url('https://www.kabbage.com/');44//       console.log("Got the Title.. : ", title);45//       assert.equal(title,"www.kabbage.com");46//       console.log("Validation Success..");47//     });48// });...

Full Screen

Full Screen

app1.js

Source:app1.js Github

copy

Full Screen

...17    noReset: true,18  }19};20// before(async() =>  {21//   let client = await wdio.remote(opts);22//});23describe('APPIUM DEMO Testing', function() {24  it("Demo Test", async function(done) {25    this.timeout(15000);26    let client = await wdio.remote(opts);27    let fields = client.$("android.widget.EditText");28    // const field =  client.$("android.widget.EditText");29    console.log("Fields --->", fields)30    done()31  });...

Full Screen

Full Screen

get-element-text.js

Source:get-element-text.js Github

copy

Full Screen

...4    desiredCapabilities: {5        browserName: 'chrome'6    }7};8var browser = wdio.remote(options);9log.info('Getting Smashing Magazine latest article title');10browser11    .init()12    .url('https://www.smashingmagazine.com/')13    .getText('#content > article:first-of-type > h2 > a > span').then(function (title) {14        log.info('Smashing Magazine latest article title:');15        log.debug(title);16    })...

Full Screen

Full Screen

day-3.js

Source:day-3.js Github

copy

Full Screen

1var wdio = require("webdriverio");2var browser = wdio.remote({3  desiredCapabilities: {4    browserName: "chrome"5  }6}).init();7require('webdrivercss').init(browser);8browser.url("http://learn.visualregressiontesting.com")9  .webdrivercss("homepage", [10    {11      name: "header",12      elem: ".header"13    },14    {15      name: "benefits",16      elem: ".benefits",...

Full Screen

Full Screen

get-page-title.js

Source:get-page-title.js Github

copy

Full Screen

...4    desiredCapabilities: {5        browserName: 'chrome'6    }7};8var browser = wdio.remote(options);9log.info('Getting CSSG.ROCKS title');10browser11    .init()12    .url('http://cssg.rocks/')13    .getTitle().then(function (title) {14        log.info('CSS.ROCKS title:');15        log.debug(title + ' is awesome!');16    })...

Full Screen

Full Screen

day-2.js

Source:day-2.js Github

copy

Full Screen

1var wdio = require("webdriverio");2var browser = wdio.remote({3  desiredCapabilities: {4    browserName: "chrome"5  }6}).init();7browser.url("http://learn.visualregressiontesting.com")8  .getTitle().then(function(title) {9      console.log("Title is: " + title);10  })...

Full Screen

Full Screen

Using AI Code Generation

copy

Full Screen

1var webdriverio = require('webdriverio');2var options = { desiredCapabilities: { browserName: 'chrome' } };3    .remote(options)4    .init()5    .getTitle().then(function(title) {6        console.log('Title was: ' + title);7    })8    .end();9### .remote(options)10MIT © [Sam Verschueren](

Full Screen

Using AI Code Generation

copy

Full Screen

1var wdio = require('webdriverio');2var options = {3  desiredCapabilities: {4  }5};6var client = wdio.remote(options);7  .init()8  .click("~buttonTest")9  .end();10exports.config = {11  capabilities: [{12  }],13  reporterOptions: {14  },15  mochaOpts: {16  }17};18{19  "scripts": {20  },21  "devDependencies": {22  }23}

Full Screen

Using AI Code Generation

copy

Full Screen

1var wdio = require('webdriverio');2var options = {3    desiredCapabilities: {4    }5};6    .remote(options)7    .init()8    .elements('android=new UiSelector().text("Hello World!")')9    .then(function (els) {10        console.log('Found ' + els.value.length + ' elements with text "Hello World!"');11    })12    .end();

Full Screen

Using AI Code Generation

copy

Full Screen

1var wdio = require('webdriverio');2var options = {3  desiredCapabilities: {4  }5};6  .remote(options)7  .init()8  .end();9exports.config = {10  capabilities: [{11  }],12  mochaOpts: {13  }14};15[0-0] 2016-06-13T21:42:18.879Z - info: [Appium] Welcome to Appium v1.5.3 (REV 4b2f4d9f9c2b2e3a3e3e3b1c8b3f1b5c7d5d0c5d)

Full Screen

Using AI Code Generation

copy

Full Screen

1var webdriverio = require('webdriverio');2var options = {3    desiredCapabilities: {4    }5};6client = webdriverio.remote(options);7client.init();8    .elementByAccessibilityId('Graphics')9    .click()10    .elementByAccessibilityId('Arcs')11    .click()12    .elementByAccessibilityId('Add')13    .click()14    .elementByAccessibilityId('Clear')15    .click()16    .back()17    .back()18    .end();19![Android Emulator](images/emulator.png)

Full Screen

Using AI Code Generation

copy

Full Screen

1var wdio = require('webdriverio');2var options = {3    desiredCapabilities: {4    }5};6    .remote(options)7    .init()8    .click('~buttonTest')9    .end()10    .catch(function(err) {11        console.log(err);12    });13Error: An unknown server-side error occurred while processing the command. Original error: Error executing adbExec. Original error: 'Command 'C\:\\Users\\username\\AppData\\Local\\Android\\sdk\\platform-tools\\adb.exe -P 5037 -s emulator-5554 shell am start -W -n com.myApp/com.myApp.MainActivity -S' exited with code 1'; Stderr: 'Exception occurred while executing:14    at com.android.server.pm.Settings.isOrphaned(Settings.java:3361)15    at com.android.server.pm.PackageManagerService.isOrphaned(PackageManagerService.java:19590)16    at com.android.server.pm.PackageManagerService.isOrphaned(PackageManagerService.java:19585)17    at com.android.server.pm.PackageManagerShellCommand.runStart(PackageManagerShellCommand.java:1594)18    at com.android.server.pm.PackageManagerShellCommand.onCommand(PackageManagerShellCommand.java:127)19    at android.os.ShellCommand.exec(ShellCommand.java:96)20    at com.android.server.pm.PackageManagerService.onShellCommand(PackageManagerService.java:21418)21    at android.os.Binder.shellCommand(Binder.java:468)22    at android.os.Binder.onTransact(Binder.java:366)23    at android.content.pm.IPackageManager$Stub.onTransact(IPackageManager.java:2599)24    at com.android.server.pm.PackageManagerService.onTransact(PackageManagerService.java:4024)25    at android.os.Binder.execTransact(Binder.java:565)

Full Screen

Using AI Code Generation

copy

Full Screen

1describe('Test', function () {2  it('should open the app', function () {3    browser.pause(5000);4    browser.click('~TestApp');5    browser.pause(5000);6  });7});8    at Object.wrappedCommand (/Users/.../node_modules/webdriverio/build/lib/utils/ErrorHandler.js:144:12)9    at click(/Users/.../test.js:8:5)10    at Object.<anonymous> (/Users/.../test.js:13:3)11    at Module._compile (module.js:570:32)12    at Object.Module._extensions..js (module.js:579:10)13    at Module.load (module.js:487:32)14    at tryModuleLoad (module.js:446:12)15    at Function.Module._load (module.js:438:3)16    at Module.runMain (module.js:604:10)17    at run (bootstrap_node.js:394:7)18browser.click('~TestApp');19browser.click('TestApp');20browser.click('Test App');21browser.click('Test');

Full Screen

Automation Testing Tutorials

Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.

LambdaTest Learning Hubs:

YouTube

You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.

Run Appium automation tests on LambdaTest cloud grid

Perform automation testing on 3000+ real desktop and mobile devices online.

Try LambdaTest Now !!

Get 100 minutes of automation test minutes FREE!!

Next-Gen App & Browser Testing Cloud

Was this article helpful?

Helpful

NotHelpful