Mocha客户端可以运行为Cucumber / Gherkin编写的测试吗?

时间:2018-01-20 00:47:53

标签: javascript cucumber mocha integration gherkin

我们有一个基于MochaBDD)的大型测试套件,由Mocha command-line client运行。我们的一些设计师/产品经理希望提供用Gherkin语言编写的测试方案(加上World / Step定义和JavaScript中的Hooks)。

如果我们想将这些新的测试场景集成到我们现有的Mocha测试树中,那么在不牺牲任何基本Cucumber功能的情况下,建议的方法是什么? (理想情况下,这些相同的测试仍然可以使用Cucumber client运行。)

我还不太了解Cucumber / Gherkin自己回答这个问题,尽管我怀疑它不应该太难。 Mocha和Cucumber似乎都非常模块化,我看到一两个plugins看起来很有前途。但我不太清楚这些碎片是如何组合在一起的。

例如,我想通过正确的设置可以实现这样的事情:

import gherkinToMocha from 'gherkin-to-mocha'

describe('test-tree', () => {
    describe('Mocha test', () => {
        it('can run', () => {})
    })
    describe('Cucumber / Gherkin tests', () => {
        return gherkinToMocha('./test-scenario.feature')
    })
})

1 个答案:

答案 0 :(得分:0)

我看到的最直接的方法是让产品和设计人员快速定义功能文件,然后将这些方案与您当前的测试套件集成,可能会使用您提到的mocha-gherkin工具。

您可以在存储库中创建一个文件夹,产品和设计人员可以随意推送功能文件。然后,您可以根据mocha-gherkin的用法,使用脚本为该文件夹中的所有要素文件生成“步骤定义”文件:

cat file.feature | mocha-gherkin > test.js

我还要确保在合并要素文件之前,工程师会对它们进行适当的审核,以便在整个要素文件中统一相似的步骤,并且方案有效。