vue.js 小程序_Vue.js测试实用程序库

vue.js 小程序

阿佛里亚兹 (avoriaz)

This library will be deprecated once vue-test-utils is released.

vue-test-utils发布后,将不推荐使用该库。

安装 (Installation)

npm install --save-dev avoriaz

例子 (Examples)

断言包装器包含一个孩子 (Assert wrapper contains a child)

import { mount } from 'avoriaz'
import Foo from './Foo.vue'

const wrapper = mount(Foo)
expect(wrapper.contains('.bar')).to.equal(true)

浅渲染组件 (Shallow render components)

import { shallow } from 'avoriaz'
import Foo from './Foo.vue'
import Bar from './Bar.vue'

const wrapper = shallow(Foo)
expect(wrapper.contains(Bar)).to.equal(true)

断言样式被渲染 (Assert style is rendered)

const button = wrapper.find('div > button .button-child')[0]
expect(button.hasStyle('color', 'red')).to.equal(true)

触发DOM事件时调用断言方法 (Assert method is called when DOM event is triggered)

const clickHandler = sinon.stub()
const wrapper = mount(Foo, {
  propsData: { clickHandler }
})
wrapper.find('div .bar')[0].trigger('click')
expect(clickHandler.called).to.equal(true)

断言包装包含文本 (Assert wrapper contains text)

const title = wrapper.find('h1.title')[0]
expect(title.text()).to.equal('some text')

注入全局变量 (Inject globals)

const $route = { path: 'http://www.example-path.com' }
const wrapper = mount(Foo, { 
    globals: {
        $route
    }
})
expect(wrapper.vm.$route.path).to.equal($route.path)

注入插槽 (Inject slots)

const wrapper = mount(Foo, { 
    slots: {
        default: Foo
    }
})

设定资料 (Set data)

wrapper.setData({
  someData: 'some data'
})

expect(wrapper.vm.someData).to.equal('some data')

更新道具 (Update props)

wrapper.setProps({
  someProp: 'some prop',
  anotherProp: 'another prop'
})

翻译自: https://vuejsexamples.com/a-vue-js-testing-utility-library/

vue.js 小程序

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值