我的测试包括需要针对每个测试重复的步骤。
测试是这样的:
每个测试都取决于先前的测试。
Id喜欢使用“执行先前的测试代码”之类的函数,该函数在测试3中被调用时,将调用测试2,因此将测试1调用。在这一点上不执行钩子也很重要。
对于手写测试,这不是问题:我将测试定义为单独的函数并相应地调用它们,而不是在test()调用中将其定义为匿名函数。
对于TestCafe Studio,我感觉“内部”调用内部API并创建了此功能:
function executePreviousTestCode(t) {
const id = t.testRun.test.id;
const tests = t.testRun.test.testFile.collectedTests;
const prevTestIndex = tests.findIndex(t => t.id === id) -1;
if(prevTestIndex < 0) return;
const prevTest = tests[prevTestIndex];
return prevTest.fn(t)
}
它适用于普通的TestCafe,但我不知道如何将其包括在TestCafe Studio测试中。
也许有人提出了比复制和粘贴或一项大型测试更好的解决方案。
答案 0 :(得分:2)
在TestCafe中,您可以使用User Roles和/或beforeEach hooks进行授权。
beforeEach
挂钩允许您在夹具中的每个测试之前运行代码,User Roles
允许您定义多个登录例程并按需使用它们。
TestCafe Studio不支持User Roles
进行记录的测试。但是,您可以将记录的测试转换为脚本,然后在其中应用User Roles
。