gherkish 是一个基于 cucumber 的测试框架,用来执行 end-to-end 的测试。通过写 gherkin 语言的测试用例,可以快速编写测试代码,同时也方便非开发人员了解测试过程。在本教程中,我们将学习如何使用 npm 包 gherkish,包括安装、配置和编写测试用例。
安装 gherkish
安装 gherkish 可以通过 npm 来进行:
npm install gherkish --save-dev
安装完成后,我们可以在项目的 package.json 文件中看到 gherkish 的依赖项。
配置 gherkish
在运行 gherkish 的时候,我们需要配置测试用例的位置以及运行的设置。在项目的根目录下新建一个 gherkish.js
的文件,并加入以下内容:
module.exports = { specs: [ 'features/**/*.feature' ], cucumberArgs: '--require features/step_definitions' };
其中,specs
项用来指定测试用例的位置,这里使用了 glob 模式,**
表示匹配任意多级目录,在 features
文件夹中的 .feature
文件都会被匹配到;cucumberArgs
项用来指定运行时的一些参数,本示例中表示加载 step_definitions
文件夹中的代码。
编写测试用例
gherkin 是一种基于自然语言的 DSL(领域特定语言),可以让非开发人员更容易理解测试用例。下面是一个简单的示例:
-- -------------------- ---- ------- -------- --- --- ------- -- - ---- - ---- -- --- --- ------- -- ---- - --- --- --- ------ --------- --- --- -------- ------- ---- - --- --- ------- - --- - ---- - ------ --- -- --------- --- - -------- ------ --- - -------- ------ ---- - --- --- ------- -- --- -- ---- - ------ --- -
这个测试用例描述了一个简单的需求:一个用户想要把两个数字相加,以便得到结果。我们可以使用 gherkish 提供的步骤定义来实现这个测试:
-- -------------------- ---- ------- ----- - ------ ----- ---- - - -------------------- --- ------- -------- ---- ------- ----- ---- --- ------------ -------- ----- - ------ - ---- --- ------- --- --- ------- ----- --- ------- -------- ------ ----- - ------ - ---- - ----- --- ------- ------ --- ----- -- --- -------- -------- ---------------- - ---------------------------------------- ---
在上述代码中,我们使用了 Given
、When
、Then
这几个步骤定义,分别代表了测试用例中的前置条件、测试操作以及测试断言。在运行测试用例时,gherkish 会根据测试用例文件中的描述来匹配到对应的步骤定义,并执行代码。
运行测试用例
通过上述步骤的编写,我们已经准备就绪可以运行测试了。在 package.json 文件中添加如下命令:
"test": "gherkish"
然后在终端中输入 npm test
来运行测试用例。你会看到测试执行的结果,如果测试失败则会打印出详细的错误信息。
结语
gherkish 可以帮助我们快速编写和执行测试用例,通过 gherkin 语言可以让测试用例更加易于理解。在实际应用中,可以根据业务需求编写更多的测试用例,并通过 gherkish 来自动化执行这些测试,从而提高开发效率和软件质量。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6006735b890c4f7277583f82