1.0.6 • Published 5 years ago

appium-dom-utils v1.0.6

Weekly downloads
2,695
License
MIT
Repository
github
Last release
5 years ago

Installation

NPM Version NPM DownloadsLicense

npm i -S appium-dom-utils

appium-dom-utils

A collection of util functions for writing Appium tests using DOM API.

const {
  parseDomFromString,
  getXPathSelector,
} = require('appium-dom-utils');
const wdio = require("webdriverio");

const client = await webdriverio.remote(opts);
const xmlSourceString = await client.getPageSource();
const dom = parseDomFromString(xmlSourceString);
const domElement = dom.querySelector("[text*='9']");
const xpath = getXPathSelector(domElement);
const appiumElement = await client.$(xpath);
await appiumElement.click();
await client.deleteSession();

API

parseDomFromString(xml: String)

Returns a DOM object. Throws when the xml string is not formatted well. Currently tested with the return value of driver.getPageSource() for both Android (UiAutomator2) and iOS (UIAutomation) tests.

import { parseDomFromString } from 'appium-dom-utils';
parseDomFromString(xmlString);

getXPathSelector(el: Element)

Returns the xpath (string) for the element supplied. Android UiAutomator2 tests.

import { getXPathSelector } from 'appium-dom-utils';
getXPathSelector(element);

getClassChainSelector(el: Element)

Returns the class chain (string) for the element supplied. iOS UIAutomation tests.

import { getClassChainSelector } from 'appium-dom-utils';
getClassChainSelector(element);
1.0.6

5 years ago

1.0.5

5 years ago

1.0.4

5 years ago

1.0.2

5 years ago

1.0.1

5 years ago

1.0.0

5 years ago