美文网首页
TS+Jest 最简开始

TS+Jest 最简开始

作者: anOnion | 来源:发表于2020-11-03 18:10 被阅读0次

Jest 是当下最主流的前端测试框架;对于初学者,Jest 配置入门并不算友好,尤其是选择了 Typescript 做开发语言,教程很烦琐。我最近试了一个叫 ts-jest 的预处理库,配置非常简单,一共就三步,这里推荐给大家。

安装

我们从空白 node 项目开始——这里以 yarn 为例——安装依赖:

yarn add -D jest typescript ts-jest @types/jest

主要就是四个库: jesttypescript自不必说,ts-jest是要用到的预处理器,@types/jest用于测试框架的类型推断。

生成配置

yarn ts-jest config:init

这里是利用 ts-jest 自动生成 jest.config.js 文件。生成的代码如下所示:就三行,很简单吧。

// jest.config.js
module.exports = {
  preset: "ts-jest",
  testEnvironment: "node",
};

运行

yarn jest

完工!附上了github repo,大家可以 clone 下来跑一下,也欢迎点赞。

Jest Runner

我们试着写一个简单的单元测试用例(该测试本身无意义):

function add(a: number, b: number): number {
  return a + b;
}

describe("add function", () => {
  it("1 + 1 = 2", () => {
    expect(add(1, 1)).toEqual(2);
  });
});

单元测试在日常操作中一般就是 git hook 里跑一个yarn test:unit,检查当前更改有没有破坏之前的代码逻辑。但是,开发阶段你更多只是跑一个 case。这时候你又要写新的命令yarn jest fileName -t caseName,很麻烦,而且很容易又碰到配置问题。这里推荐一款 vscode 插件——Jest Runner,看一下安装后的效果:

Run

每个 Case 前都会出现 Run|Debug 标识,点击后自动运行。我们再看看 Debug 效果:

Debug

只要在 vscode 上打上断点,点击 Debug 按钮,就会自动在断点处停止,很方便吧。

小结

本文简单介绍了 ts+jest 的入门配置,希望对初学者有所帮助。

最后再加几句题外话:神书《人月神话》里提到过开发进度的时间安排:

1/3 计划、1/6 编码、1/4 构件测试以及 1/4 系统测试

测试时间占了一半,很意外吧?但是,我见过的绝大多数开发人员,90%以上的时间都在编码;设计文档是不可能有的,测试用例也很稀少。说来惭愧,我自己也是在工作四年后,才开始改变那种工作方式的,然后我有了更多的时间写博客了,哈哈。不过,很可惜,我依旧无法改变周围人的开发方式,即便是强制他们写测试,也是应付了事,唉。
还有,我从事过软件外包工作,外包人员有个很具行业特色的现象——不写测试。不知道大家看到后,有没有觉得比我们外包强呢?

相关文章

  • TS+Jest 最简开始

    Jest[https://jestjs.io/] 是当下最主流的前端测试框架;对于初学者,Jest 配置入门并不算...

  • 最开始的最开始

    是什么时候开始会产生一种叫做喜欢的情绪。 当我坐上去远方的车。我开始认真 的思考这个致命问题。 是六年级那个长的可...

  • 极简生活|极简的5个步骤,从最简单处着手

    极简的开始阶段,不要去担心最难的、最棘手的任务。恰恰相反,尽可能从最容易的地方、最小件的物品开始,享受“由简而丰”...

  • 再见

    不是最开始的那个简书了 性质变了 再见了

  • 何以为食

    如何开始,也许最开始的坚持能变成饭碗?。 刚开始是看到简书里的程序例子特别好,下了简书看。后面也想自己写写。 今天...

  • 简书与我

    简书对我主要的帮助有两块:技术资料的支持与情绪的疏导。 与简书相识也蛮久了,最开始知道简书是在网上查资料,简书最开...

  • 如何拥有更为幸福的人生

    开启极简生活,最开始的第1步是物质极简,这是最容易做到且很直观的步骤,正是通过物质的极简寻找到自己真正喜欢且热爱的...

  • 最开始

    知道报了这个夏令营,我当时是激动的呀,有CS,骑马,还有罗马大战,都是我喜欢玩儿的,平常也玩不到的。可看着通知书上...

  • 最开始

    小明说,很多时候,想着自己从小到大的经历,觉得不可思议,觉得光怪离奇,觉得自己从这么多的戏剧场景里面可以完好无损,...

  • 最开始

    2018.3.29号 第一天注册简书,为了给自己的学习建立一个平台。将平时自己学到的后期作品还有绘画作品放上来,给...

网友评论

      本文标题:TS+Jest 最简开始

      本文链接:https://www.haomeiwen.com/subject/oudivktx.html