剧作家跑步者与黄瓜

问题描述 投票:0回答:2

最近我发现了剧作家,看起来真的很好。我发现的问题通常是在黄瓜或小黄瓜语法的实现中。例如,在 cypress 中,这里的任务非常简单,看起来我需要使用其他测试运行程序然后使用剧作家。这是真的还是我只是缺少剧作家中黄瓜的一些库/配置?感谢您的任何建议。

angular cucumber e2e-testing gherkin playwright
2个回答
3
投票

您可以使用 Cucumber 来运行测试并将其与 Playwright 集成。作为起点,您可以查看 Tally Barak 的链接,这对您有很大帮助。

介绍文章https://tally-b.medium.com/e2e-testing-with-cucumber-and-playwright-9584d3ef3360

入门回购https://github.com/Tallyb/cucumber-playwright


-1
投票

还有 playwright-bdd 包,允许使用 Playwright runner 执行 BDD 场景:

您可以按照与 Cucumber 完全相同的方式编写步骤定义:

import { Given, When, Then } from '@cucumber/cucumber';

Given('I open url {string}', async function (url) {
  await this.page.goto(url);
});

When('I click link {string}', async function (name) {
  await this.page.getByRole('link', { name }).click();
});

并在功能文件中使用以下步骤:

Feature: Playwright site

    Scenario: Check title
        Given I open url "https://playwright.dev"
        When I click link "Get started"
        ...

然后使用

playwright-bdd
选项更新 Playwright 配置:

// playwright.config.js
import { defineConfig } from '@playwright/test';
import { defineBddConfig } from 'playwright-bdd';

const testDir = defineBddConfig({
  paths: ['feature/*.feature'],
  require: ['steps/*.ts'],
});

export default defineConfig({
  testDir,
});

最后使用以下命令运行测试:

npx bddgen && npx playwright test
© www.soinside.com 2019 - 2024. All rights reserved.