Настроен multiremote с appium и selenium-standalone в WebdriverIO. Таким образом, в appium всегда возвращается Promise {}. Для справки: это нормально, когда используется только appium.
Если используется async / await, все в порядке. Но я не хочу использовать async / await.
"@wdio/selenium-standalone-service": "^6.1.14",
"@wdio/sync": "^6.1.14",
"appium": "^1.17.1",
[Характеристики]
import { PATH } from 'e2e/utils/constants/path';
export default describe('테스트', function() {
if (driver.config.isMultiRemote) {
it('[Chorme] Navigate to homepage', function() {
chrome.url(PATH.HOME);
expect(chrome).toHaveUrl(PATH.HOME);
});
}
it('[Android] Profile button click', function() {
const el = appium.$('~프로필');
console.log(el)
el.click()
});
if (driver.config.isMultiRemote) {
it('[Chrome] Login button click', function () {
const path = '//a[text()="로그인"]';
chrome.$(path).click();
expect(chrome).toHaveUrl(PATH.SIGN_IN);
});
}
it('[Android] Home button click', function() {
const el = appium.$('~홈');
console.log(el)
el.click();
});
});
[Результат]
.
.
.
2020-07-13T04:29:24.050Z INFO webdriver: COMMAND findElement("accessibility id", "프로필")
2020-07-13T04:29:24.051Z INFO webdriver: [POST] http://localhost:4723/session/49df23a2-36e1-4e30-9f16-0bf7eaedc860/element
2020-07-13T04:29:24.051Z INFO webdriver: DATA { using: 'accessibility id', value: '프로필' }
2020-07-13T04:29:24.205Z INFO webdriver: RESULT {
'element-6066-11e4-a52e-4f735466cecf': 'e9a85f0f-c178-40db-8b8a-71b78c8e4101',
ELEMENT: 'e9a85f0f-c178-40db-8b8a-71b78c8e4101'
}
.
.
.