From c10d437e450ba66dd83576152e85c6310afeb349 Mon Sep 17 00:00:00 2001 From: ngothikimthaoqb Date: Fri, 13 Aug 2021 21:44:44 +0700 Subject: [PATCH 1/3] Support integrated devices --- javascript/dc-android-web-test.js | 83 +++++++++++++++++++++++++++++++ 1 file changed, 83 insertions(+) create mode 100644 javascript/dc-android-web-test.js diff --git a/javascript/dc-android-web-test.js b/javascript/dc-android-web-test.js new file mode 100644 index 00000000..620c82f4 --- /dev/null +++ b/javascript/dc-android-web-test.js @@ -0,0 +1,83 @@ +import 'babel-polyfill' +import 'colors' +import wd from 'wd' +import {assert} from 'chai' + +const username = process.env.KOBITON_USERNAME +const apiKey = process.env.KOBITON_API_KEY +const deviceName = process.env.KOBITON_DEVICE_NAME || 'Galaxy*' +const udid = process.env.KOBITON_UDID + +const kobitonServerConfig = { + protocol: 'https', + host: 'api.kobiton.com', + auth: `${username}:${apiKey}` +} + +const desiredCaps = { + sessionName: 'Automation test session', + sessionDescription: 'This is an example for Android web', + deviceOrientation: 'portrait', + captureScreenshots: true, + browserName: 'chrome', + udid: udid, + deviceGroup: 'KOBITON', + deviceName: deviceName, + platformName: 'Android' +} + +let driver + +if (!username || !apiKey) { + console.log('Error: Environment variables KOBITON_USERNAME and KOBITON_API_KEY are required to execute script') + process.exit(1) +} + +describe('Android Web sample', () => { + + before(async () => { + driver = wd.promiseChainRemote(kobitonServerConfig) + + driver.on('status', (info) => { + console.log(info.cyan) + }) + driver.on('command', (meth, path, data) => { + console.log(' > ' + meth.yellow, path.grey, data || '') + }) + driver.on('http', (meth, path, data) => { + console.log(' > ' + meth.magenta, path, (data || '').grey) + }) + + try { + await driver.init(desiredCaps) + } + catch (err) { + if (err.data) { + console.error(`init driver: ${err.data}`) + } + throw err + } + }) + + it('should return the title that contains Kobiton', async () => { + await driver.get('https://www.google.com') + .waitForElementByName('q') + .sendKeys('Kobiton') + .sleep(3000) + .keys(wd.SPECIAL_KEYS.Enter) + + let msg = await driver.title() + assert.include(msg, 'Kobiton - Google Search') + }) + + after(async () => { + if (driver != null) { + try { + await driver.quit() + } + catch (err) { + console.error(`quit driver: ${err}`) + } + } + }) +}) From 1492c0b9cb60ef3303e3368ca0e9d6950b6a1a47 Mon Sep 17 00:00:00 2001 From: ngothikimthaoqb Date: Fri, 13 Aug 2021 21:50:38 +0700 Subject: [PATCH 2/3] Support integrated devices --- ...{dc-android-web-test.js => integrated-android-web-test.js} | 0 javascript/package.json | 3 ++- 2 files changed, 2 insertions(+), 1 deletion(-) rename javascript/{dc-android-web-test.js => integrated-android-web-test.js} (100%) diff --git a/javascript/dc-android-web-test.js b/javascript/ integrated-android-web-test.js similarity index 100% rename from javascript/dc-android-web-test.js rename to javascript/ integrated-android-web-test.js diff --git a/javascript/package.json b/javascript/package.json index 2ea39182..1a3d694d 100644 --- a/javascript/package.json +++ b/javascript/package.json @@ -11,7 +11,8 @@ "multiple-devices-test": "mocha --require babel-core/register --no-timeouts multiple-devices-test.js", "jasmine-android-web-test": "./node_modules/jasmine/bin/jasmine.js ./spec/jasmine-android-web-spec.js", "jasmine-android-app-test": "./node_modules/jasmine/bin/jasmine.js ./spec/jasmine-android-app-spec.js", - "integrate-with-testrail-test": "mocha --require babel-core/register --no-timeouts integrate-with-testrail-test.js" + "integrate-with-testrail-test": "mocha --require babel-core/register --no-timeouts integrate-with-testrail-test.js", + "integrated-android-web-test": "mocha --require babel-core/register --no-timeouts integrated-android-web-test.js" }, "keywords": [ "kobiton", From 9d1741bc7aca1f8543432863c8717f5b3e57338e Mon Sep 17 00:00:00 2001 From: ngothikimthaoqb Date: Fri, 13 Aug 2021 21:51:53 +0700 Subject: [PATCH 3/3] Support integrated devices --- javascript/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/javascript/README.md b/javascript/README.md index 1cd3f638..13cdb224 100644 --- a/javascript/README.md +++ b/javascript/README.md @@ -106,6 +106,7 @@ npm run multiple-devices-test npm run jasmine-android-web-test npm run jasmine-android-app-test npm run integrate-with-testrail-test +npm run integrated-android-web-test ``` ## VI. Report on Test Results