使用beforeEach跟直接在describe中写的区别

来源:5-4 价格题目列表测试分析和编写

李行知

2019-02-28

比如
const wrapper = mount(<AccountItem {…AccountItemProps} />)

这个我直接写在describe中不就好了吗?


describe('home header', () => {
  const wrapper = mount(<HomeHeader {...homeHeaderProps} />)
  it('income and outcome', () => {
    expect(wrapper.find('.outcome').first().text()).toBe('支出:' + homeHeaderProps.outcome)
    expect(wrapper.find('.income').first().text()).toBe('收入:' + homeHeaderProps.income)
  })
  it('title', () => {
    expect(wrapper.find('.title').text()).toBe(homeHeaderProps.title)
  })
})

跟写在beforeEach中有什么区别吗?

写回答

1回答

张轩

2019-03-01

同学你好 在 beforeEach 中创建的 wrapper 确定在每个用例中 是相互没有影响的,如果不写,当然也没问题,但是不同 case 中的 wrapper 共用一个,可能会互相影响,当然你这两个 cases 中没啥问题,但是如果一个 case 做一些 state 的更新工作,第二个 case 就有可能会被影响到了。

0
1
李行知
非常感谢!
2019-03-02
共1条回复

React16组件化+测试+全流程 实战在线账本项目

轻松上手,从设计图到上线,精通组件化思维和组件测试

713 学习 · 177 问题

查看课程