如何在Jest中循环动态测试用例?
我有以下测试用例如何使用it/test方法动态创建jest测试用例.
这是我尝试过的,但它只是通过而没有在循环中排除测试用例.
const mymodule = require('mymodule');
let testCases = [
{q: [2, 3],r: 5},
{q: [1, 2],r: 3},
{q: [7, 0],r: 7},
{q: [4, 4],r: 8}
];
describe("Test my Math module", () => {
test("test add sub module", () => {
for (let i = 0; i < testCases.length; i++) {
let item = testCases[i];
let q = item.q;
let expected = item.r;
it(`should add ${q[0]},${q[1]} to ${expected}`, () => {
let actual = mymodule.add(q[0] + …Run Code Online (Sandbox Code Playgroud) 我正在使用 jest it.each 块来减少同一场景的测试用例的重复性,但我无法动态更新 it 块描述。怎么做?
测试用例示例
const testData = [
{
module: 'test_module',
entityName: 'test_entity'
},
{
module: 'test_module1',
entityName: 'test_entity1'
},
];
it.each(testData)(`should perform get respose - ${entityName}`, async (entityDetails: any) => {
const url = `${entityDetails.module}/${entityDetails.entityName}/all/`;
// Executing
const response = await request(server).get(url);
// Verifying
expect(response.status).toBe(200);
});
Run Code Online (Sandbox Code Playgroud)
在这个提供的示例中,我需要动态地将实体名称包含在块描述中。类似的事情
应该执行 get respose - test_entity
应该执行 get respose - test_entity1
如何实现这一点?