Пользовательская функция инициализации не выполняется в TestCafe - PullRequest
2 голосов
/ 22 мая 2019

Я создаю функцию инициализации для подготовки почти каждого теста, который я делаю в TestCafe.Но при запуске кода он не срабатывает.

Я пытался:
- Выполнить тест-драйвер без функции: Works
- Обернуть его внутри функции без операторов if: Works
- Обернуть его внутри функции с помощью операторов if:Не работает
- Обертывание операторов if внутри меньших функций и их выполнение внутри самовыполняющейся функции внутри скрипта init: не работает.

export async function setupEnvironment(Method: Method, Action?: Action, Frame: number = 43, Viewport: Viewport = 1) {
    await u.selectFrame(Frame);

    if (Method === "QVA") {
        await t.click( s.btnQva )} 
    else if (Method === "QCA") {
        await t.click( s.btnQca )} 
    else if (Method === "LVA") {
        await t.click( s.btnLva )} 
    else if (Method === "RVA") {
        await t.click( s.btnRva )} 

    if (Action === "MANUAL-SPLINE") {
        await t.click(s.btnManualSpline);
    } else if (Action === "AUTO-SPLINE") {
        await t.click(s.btnAutoSpline);
    }
}

или

export async function setupEnvironment(Method: Method, Action?: Action, Frame: number = 43, Viewport: Viewport = 1) {

    async function selectAction(){
        if (Action === "MANUAL-SPLINE") {
            await t.click(s.btnManualSpline);
        } else if (Action === "AUTO-SPLINE") {
            await t.click(s.btnAutoSpline);
        }
    }

    async function selectMethod() {
        if (Method === "QVA") {
            await t.click( s.btnQva )} 
        else if (Method === "QCA") {
            await t.click( s.btnQca )} 
        else if (Method === "LVA") {
            await t.click( s.btnLva )} 
        else if (Method === "RVA") {
            await t.click( s.btnRva )} 
    }

    (async function render(){
        selectMethod()
        await u.selectFrame(Frame);
        selectAction()
    }) 
}

test('name test case', async (t) => {
      await i.setupEnvironment(Method.LVA, Action.AutoSpline);
});

Ожидаемое поведение: код выполняет

Фактическое поведение: ничего не происходит

1 Ответ

3 голосов
/ 22 мая 2019

Я не знаю, почему ничего не происходит в первом случае. Я думаю, что никто не может дать вам ответ без страницы для проверки предоставленной функции. Во втором случае вы забудете вызвать функцию рендеринга. Он определен внутри setupEnvironment, но никогда не вызывается.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...