【全栈React】第24天: 测试应用
我们先看一下我们应用的一个特征,并考虑边缘案例的位置以及我们假设将会发生的情况 .让我们从
我们喜欢开始测试,列出我们对一个组件的假设,以及在什么情况下这些假设是真实的。例如,我们可以对
这些 假设 将转化为我们的测试。 测试让我们打开 describe('Timeline',() => { // Tests go here }) 对于我们编写的针对React每个测试的我们都希望测试文件导入React。我们还要引入React测试实用程序: import React from 'react'; import TestUtils from 'react-addons-test-utils'; describe('Timeline',() => { // Tests go here }) 由于我们在这里测试 import React from 'react'; import TestUtils from 'react-addons-test-utils'; import Timeline from '../Timeline'; describe('Timeline',() => { // Tests go here }) 让我们写第一个测试。我们的第一个假设是非常简单的测试。我们正在测试以确保元素被包装在 import React from 'react'; import TestUtils from 'react-addons-test-utils'; import Timeline from '../Timeline'; describe('Timeline',() => { it('wraps content in a div with .notificationsFrame class',() => { const wrapper = TestUtils.renderIntoDocument(<Timeline />); }); }) 如果我们运行这个测试 (尽管我们还没有设定任何期望),我们会发现测试代码有问题。React认为我们正在尝试呈现一个未定义的组件: 让我们在 DOM 中使用另一个称为
import React from 'react'; import TestUtils from 'react-addons-test-utils'; import Timeline from '../Timeline'; describe('Timeline',() => { const wrapper = TestUtils.renderIntoDocument(<Timeline />); const node = TestUtils .findRenderedDOMComponentWithClass(wrapper,'notificationsFrame'); }); }) 这样,我们的测试就会通过 (相信与否)。TestUtils 设置了一个期望,即它可以在 作为提醒,我们可以使用 yarn test
通过我们的一次测试,我们确认了我们的测试设置正在运行。 不幸的是, 今天的工作很好,明天见!
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |