Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 从辅助函数返回值_Javascript_Function_Automated Tests_E2e Testing_Testcafe - Fatal编程技术网

Javascript 从辅助函数返回值

Javascript 从辅助函数返回值,javascript,function,automated-tests,e2e-testing,testcafe,Javascript,Function,Automated Tests,E2e Testing,Testcafe,我在平台的不同页面中有很多表,希望创建一个通用函数,例如-提供表名和列标签,并希望函数返回的文本返回测试 我已经将这个函数导入到测试中,并且能够发送表定义,而不用在函数中声明选择器。对于初学者来说,将tdText返回到测试的能力是我正在努力解决的问题。有什么见解吗?还是我完全错了 export async function columnMatcher(tableDefinition){ const table = tableDefinition; const rowC

我在平台的不同页面中有很多表,希望创建一个通用函数,例如-提供表名和列标签,并希望函数返回的文本返回测试

我已经将这个函数导入到测试中,并且能够发送表定义,而不用在函数中声明选择器。对于初学者来说,将tdText返回到测试的能力是我正在努力解决的问题。有什么见解吗?还是我完全错了

export async function columnMatcher(tableDefinition){
    const table       = tableDefinition;
    const rowCount    = await table.find('tbody > tr').count;
    const columnCount = await table.find('tbody > tr').nth(0).find('*').count;


    for(let i = 0; i < rowCount; i++) {
        for(let j = 0; j < columnCount; j++) {  
            let tdText = await table.find('tbody > tr').nth(i).find('*').nth(j).textContent;
        }
    }
}
导出异步函数列匹配器(tableDefinition){
const table=tableDefinition;
const rowCount=wait table.find('tbody>tr').count;
const columnCount=wait table.find('tbody>tr').nth(0).find('*').count;
for(设i=0;itr').nth(i).find('*').nth(j).textContent;
}
}
}
更新:我只需要添加返回文本,就可以了。但是,我希望这是一个客户端功能。仍在研究如何使用客户端功能。

帮助程序功能:

import {t} from "testcafe" 

export async function columnMatcher(tableDefinition, columnValue, columnReference,columnValuer,columnReferencer){

    const table       = tableDefinition;
    const rowCount    = await table.find('tbody > tr').count;          

    for(let i = 0; i < rowCount; i++) {
        const tdText = await table.find('tbody > tr').nth(i).find('*').nth(columnValuer).textContent;
        const tdReferrer = await table.find('tbody > tr').nth(i).find('*').nth(columnReferencer).textContent;
        if (tdText == columnValue && tdReferrer == columnReference){
            const foundMatch = true
            return foundMatch;
        }
    }
}

我不明白你到底在问什么。我不知道这是因为我不知道,还是因为不清楚你在问什么。澄清一下肯定不会有什么坏处,我自己也能解决这个问题。
const foundMatch = await columnMatcher(messagingListPage.messageListtable,userdata.reasontype,userdata.templatename,columnvaluer,columnreferencer)  
    if (foundMatch != true){
        console.log ("Match was not found")
      }