自定义初始化函数不在TestCafe中执行

时间:2019-05-22 12:22:13

标签: javascript typescript testcafe

我正在创建一个初始化函数来准备我在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 个答案:

答案 0 :(得分:2)

我不知道为什么在第一种情况下什么也没有发生。我认为没有页面来测试提供的功能,没有人能给您答案。在第二种情况下,您忘记调用render函数。它在setupEnvironment内部定义,但从未调用。