当前位置: 首页 > Web前端 > HTML

写了一本开源小书《Jest 实践指南》

时间:2023-03-28 20:07:48 HTML

大家好,我是海怪。前段时间一直在公司的项目中引入Jest。过程中学到了很多东西,查了很多相关资料。**最后写了一本小书《Jest 实践指南》,希望对想了解和学习前端测试的朋友有所帮助。**教程首页教程Github教程配套项目Github测试难点Jest看似很简单,就像很多博客写的一样:expect(sum(1,1)).toEqual(2)然而,在实际业务中,写好难点的考试不低。我总结了写测试的几个难点:没有配置。Jest入门文档非常简单,甚至不需要任何配置。但真实情况是,只要一个配置配置不当,所有的测试都跑不起来。测试不像开发。如果代码有问题,可以慢慢调整。这是一场0-1的比赛,不是成功就是失败,挫败感很强。我不知道如何嘲笑。这绝对是经典。虽然官方文档中有教程,但实际业务往往没有那么理想,远比文档复杂。不会构造测试用例。刚接触测试的时候,很容易把业务中“实现XXX功能”的想法代入到测试中。但是测试的重点不是实现功能,而是构造用例。没有测试策略。以上是“技术”的难易程度,在考试中是“技巧”的难易程度。闷肝测试效率不高,使用合适的测试策略远比写10个测试用例重要。上面的问题很容易写出难以维护的复杂测试。只要业务发生变化,不仅要维护业务代码,还要维护测试代码。这时候你不禁感叹:“测试是浪费时间”,最后放弃写测试,直接开始。好的测试会给你很高的代码信心,而糟糕的测试会严重拖累项目的开发。所以,大家讨厌的不应该是测试本身,而是那些维护不善的测试。社区现状目前国内的前端测试内容非常糟糕。在查资料的过程中,没有不坎坷的时候。首先,Jest的官网不是很好:先不说翻译的准确与否,单看中文内容就让人没有阅读的欲望。真希望Jest能找专业一点的人来翻译。因为官网的中文翻译太烂了,在中文社区几乎找不到问题。再来说说国内关于测试的文章。我归纳为三类:入门级。安装Jest,加上expect(1+1).toEqual(2)小示例API规范类。类似于从Jest官网复制理论课。里面详细解释了什么是测试,为什么,测试理论等等,但是最重要的“howtodoit”并没有说这些文章不好,而是这些文章大多停留在最初级的层面,之后阅读它们,他们仍然不知道如何编写测试。就目前的情况来看,国内的测试界还是有进步的。至少很多人都在写第三类。要知道以前基本只有第一类文章。教程诞生了最后,我看到了ReactTestingLibrary作者KentC.Dodds的博客。他写了很多关于测试思路的文章,每篇都很优秀。受他的启发,我觉得有必要分享这些想法和技巧,这最终促成了这本小书的诞生。这本小书要解决的是“如何做”这一步。内容本教程主要分享测试的思路。虽然React是主要的技术栈,但使用其他技术栈的读者仍然可以流畅阅读。本教程是我结合自己的实践、KentC.Dodds文章、StackOverflow、GithubIssue等博客最终总结出来的一套实用指南。这本小书由3个部分组成:基本实践。从0到1编写项目和测试,每一章都会通过一个业务实例来分享测试难点、解决方案和思路。配套物品。如果在某个步骤卡住了,也可以参考这个项目。测试想法。分享一些肯特的文章(中文翻译)和测试总结。最后,我知道很多人看到这个帖子,还是对测试嗤之以鼻。他们可能认为写测试是废话,浪费时间,或者你可能对中国的“短平快”感到失望,我完全理解。但是我相信总有人愿意写测试,希望在他们学习写测试的时候给他们一个方向和指导。喜欢我的分享可以来一波一键三连,点赞,看就是我最大的动力,爱??