Настроен мульти-пульт с appium и selenium-standalone в WebdrverIO. Таким образом, в appium всегда будет возвращаться Promise {<pending>}. - PullRequest
0 голосов
/ 13 июля 2020

Настроен 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'
}
.
.
.
...