欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

cucumber 与 jest 与Vue与React的四角恋(瞎编乱造未完成...)

程序员文章站 2022-04-25 22:10:05
...

因为业务需求,接触到cucumber测试

cucumber

cucumber是由BDD(行为驱动开发)测试框架,使用给定的关键字描述测试.

一些资料链接

cucumber的好处

测试描述部分与实际代码测试部分是分离的,它能更直观浅显的描述测试的过程/条件,即使不懂代码也能知道它大概在做什么

一些概念

关键字

  • Given
  • When
  • Then
  • And
  • But
  • Rule

在测试中使用cucumber

官方提供@cucumber/cucumber npm库在js中使用cucumber

操作流程

装库(酷)当然是首要的
后续操作: package.json scripts 加上

"test": "cucumber-js"

一个完整的测试,有两种文件组成

  • .feature文件: 用于测试描述
  • .js文件: 用于对.feature文件描述的匹配并实现所描述测试逻辑

未调研cucumber-js 能否实现.ts文件的测试,实际上我使用的是jest-cucumber,jest可以通过合适的transform实现各类文件的测试

欣赏一下.feature文件的花容月貌,嗯,确实很清奇,和寻常测试文件长的不一样,都是大白话

Feature: Is it Friday yet?
  Everybody wants to know when it's Friday

  Scenario: Sunday isn't Friday
    Given today is Sunday
    When I ask whether it's Friday yet
    Then I should be told "Nope"

在Vue或者React中使用Cucumber

相关库

React

cucumber-react能让你在react中使用cucumber,该库内置了部分常用的测试语句匹配

Vue

暂时未在项目中使用,与react类似,只要测试库将vue文件解析成普通的js文件,测试流程都是相同的.

jest-cucumber

jest作为测试流行库,有活跃的社区支持,使得我们可以用jest测试各类框架/库编写的代码

一些注意事项

  • .feature文件的语句描述数量在实际测试文件中数量/顺序需要保持一致
相关标签: 测试 单元测试