const webdriverio = require('webdriverio'); const iosOptions = require('../../helpers/caps').iosOptions; const app = require('../../helpers/apps').iosTestApp; const assert = require('chai').assert; iosOptions.capabilities.app = app; describe('Basic IOS interactions', function () { let client; beforeEach(async function () { client = await webdriverio.remote(iosOptions); }); afterEach(async function () { await client.deleteSession(); }); it('should send keys to inputs', async function () { const elementId = await client.findElement('accessibility id', 'TextField1'); client.elementSendKeys(elementId.ELEMENT, 'Hello World!'); const elementValue = await client.findElement('accessibility id', 'TextField1'); await client.getElementAttribute(elementValue.ELEMENT, 'value').then((attr) => { assert.equal(attr, 'Hello World!'); }); }); it('should click a button that opens an alert', async function () { const element = await client.findElement('accessibility id', 'show alert'); await client.elementClick(element.ELEMENT); assert.equal(await client.getAlertText(), 'Cool title\nthis alert is so cool.'); }); });