Запустите команду в консоли браузера во время теста в TestCafe - PullRequest
2 голосов
/ 14 мая 2019

Я хотел бы включить эту команду во время теста в TestCafe.Я обнаружил, что могу выполнять код JavaScript, используя клиентские функции и t.eval, но не знаю, как с этим справиться.

Команда, которую необходимо выполнить автоматически во время теста:

document.querySelector (". Watchlist - form"). submit ()

Как я могу это сделать?

1 Ответ

4 голосов
/ 15 мая 2019

Если невозможно использовать тестовые действия для отправки формы, вам потребуется создать Клиентскую функцию , чтобы сделать это:

import { Selector, ClientFunction } from 'testcafe';

const submitAction = ClientFunction(() => {
    document.querySelector(".Watchlist--form").submit();
});

fixture `My fixture`
    .page `http://example.com`;

test('My test', async t => {
    // Some actions and assertions before the submit action
    await t
        .click(Selector(...))
        ...
        .expect(...).ok();

    // Submit action
    await submitAction();

    // Some actions and assertions after the submit action
    await t
        .click(Selector(...))
        ...
        .expect(...).ok();
});
...