首页 > 解决方案 > 我的 jest-cucumber 测试无法识别我的步骤定义

问题描述

我正在使用这个库https://www.npmjs.com/package/jest-cucumber以 BDD 格式运行我的 jest 测试。

每当我运行我的示例测试时,我都会得到:

? Given Test for given step
       Undefined. Implement with the following snippet:

         Given('Test for given step', function () {
           // Write code here that turns the phrase above into concrete actions
           return 'pending';
         });
       
   ? When Test for when step
       Undefined. Implement with the following snippet:

         When('Test for when step', function () {
           // Write code here that turns the phrase above into concrete actions
           return 'pending';
         });
       
   ? Then Test for then step
       Undefined. Implement with the following snippet:

         Then('Test for then step', function () {
           // Write code here that turns the phrase above into concrete actions
           return 'pending';
         });
       

1 scenario (1 undefined)
3 steps (3 undefined)
0m00.000s

Process finished with exit code 1

这是文件所在的文件夹:

在此处输入图像描述

我的 BDD 场景:

Feature: E2E Tests

Scenario:Example
  Given Test for given step
  When Test for when step
  Then Test for then step

我的步骤定义代码:

import { loadFeature, defineFeature } from 'jest-cucumber';
const feature = loadFeature('/src/smokeTests/smokeTests.feature');

defineFeature(feature, (test) => {
    test('Example', ({ given, when, then }) => {
        let x: number;
        let z: number;

        given('Test for given step', () => {
            x = 1;
        });

        when('Test for when step', () => {
            z = x + 3;
        });

        then('Test for then step', () => {
            expect(z).toBe(4);
        });
    });
});

没有什么其他的想法了!

标签: typescriptcucumberts-jest

解决方案


将步骤定义文件重命名为 *.step.ts


推荐阅读