美文网首页
前端单元测试jest

前端单元测试jest

作者: 南蓝NL | 来源:发表于2019-06-02 19:29 被阅读0次

不是开源项目,我们一般都很少写单元测试。 不过像单元测试框架jest, 还有mocha+chai可以了解下,万一哪天自己会写开源项目呢

vue脚手架创建项目的时候会让你选择单元测试框架.png
初始化成功之后页面会出现tests的文件夹
项目目录
我们写单元测试的时候会在tests下面建立一个××.spec.js的文件,比如以下是一个计数器的测试文件

我们首先来看看Counter.vue这个文件的代码

<template>
  <div>
    <span>count: {{ count }}</span>
    <button @click="handleClick">count++</button>
  </div>
</template>

<script>
export default {
  data() {
    return {
      count: 0
    };
  },
  methods: {
    handleClick() {
      this.count++;
      this.$emit("change", this.count);
    }
  }
};
</script>
<style></style>

然后再来看看tests文件夹下的unit文件夹里面写了一个Counter.spec.js

import { mount } from "@vue/test-utils";
import Counter from "@/components/Counter.vue";
import sinon from "sinon";

describe("Counter.vue", () => {
  const change = sinon.spy();
  const wrapper = mount(Counter, {
    listeners: {
      change
    }
  });
  it("renders counter html", () => {
    expect(wrapper.html()).toMatchSnapshot();  // 测试模板页面,生成一个快照,下次修改模板页面时测试会不通过
  });
  it("count++", () => {
    const button = wrapper.find("button");   
    button.trigger("click");
    expect(wrapper.vm.count).toBe(1); // 测试点击之后是不是会变成1
    expect(change.called).toBe(true); //  测试点击之后是不是会发射一个change的函数
    button.trigger("click");
    expect(change.callCount).toBe(2);   // 测试第二次点击之后会不会count会不会变成2
  });
});

在语法上Mocha+chai与jest有点类似,更多的断言

相关文章

  • react-native单元测试

    react-natice单元测试 基于 Jest + Enzyme 的 React 单元测试 Jest、Enzym...

  • 前端单元测试jest

    不是开源项目,我们一般都很少写单元测试。 不过像单元测试框架jest, 还有mocha+chai可以了解下,万一哪...

  • 前端单元测试JEST

    1.为什么需要单元测试 正确性:测试可以验证代码的正确性,在上线前做到心里有底 自动化:当然手工也可以测试,通过c...

  • 在node.js项目中,我用jest淘汰了mocha

    在我以前的javascript fullstack项目中,单元测试一直是分裂的,react前端用jest,node...

  • React Native单元测试--Jest+Enzyme+st

    React Native的单元测试Jest+Enzyme+storybook demo 配置 Jest配置 Jes...

  • Vue 项目引入单元测试

    目前hips采用的单测组合是jest + Vue-Test-Utils,前端单元测试,就是要在项目里加上这两个配置...

  • Jest

    Jest-Javascript单元测试工具 Jest是一个JavaScript测试框架,由Facebook用来测试...

  • React单元测试 (一)

    Jest Jest 是Facebook的一个专门进行Javascript单元测试的工具,适合React。 基本方法...

  • 填坑之路:Jest对React全家桶的单元测试

    本文主要对react全家桶应用的单元测试提供一点思路。 开工须知 Jest Jest是 Facebook 发布的一...

  • Vue单元测试文档

    我们单元测试主要是对Vue组件进行单测单测使用 Jest 框架, 方法库用集成jest的 Vue Test Uti...

网友评论

      本文标题:前端单元测试jest

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