zoukankan      html  css  js  c++  java
  • [Jest] Automate your migration to Jest using codemods

    Jest is a fantastic testing library, but maybe you've been putting off the switch because migrating all of your existing tests from another library seems like a daunting task. With jest-codemods, you can automate most, if not all, of that migration! The jest-codemods CLI is a wrapper around jscodeshift that is specifically focused on helping you migrate from several popular test runner and assertion library combinations to Jest. In this lesson, we'll walk through converting a small sampling of tests created with Mocha, Sinon and Chai over to Jest. We'll even take a look at a couple edge cases where the conversion requires some manual intervention so you can be prepared for those in your own project.

    Source code

    Install:

    npm i -D jest
    
    npm i -g jest-codemons

    Run:

    jest-codemods  # default path is under src

    There is a waring:

    "

    jest-codemods warning: (src/index.spec.js) Usage of package "sinon" might be incompatible with Jest

    "

      describe('once', () => {
        test('Only invokes the function once', () => {
          const fn = sinon.stub()
          const onceFn = once(fn)
          onceFn()
          onceFn()
          onceFn()
          onceFn()
          sinon.assert.calledOnce(fn)
        })
      })

    Change to:

      describe('once', () => {
        test('Only invokes the function once', () => {
          const fn = jest.fn();
          const onceFn = once(fn)
          onceFn()
          onceFn()
          onceFn()
          onceFn()
          expect(fn).toHaveBeenCalledTimes(1);
        })
      })

    One failed test:

    expect(result).to.eq(3)

    Change to:

    expect(result).toBe(3)
  • 相关阅读:
    学好VC++的十大良好习惯
    VC6.0调试技巧
    匈牙利命名法
    VC中常用文件操作(三)
    VL_FEAT——图像处理函数库
    MATLAB——linspace
    (Your)((Term)((Project)))(字符串处理)
    Matrix Chain Multiplication(栈的简单应用)
    The Triangle(DP基础)
    MATLAB——polyfit
  • 原文地址:https://www.cnblogs.com/Answer1215/p/9515376.html
Copyright © 2011-2022 走看看