-
5 votesanswersviews
通过CI和本地测试时,Jest快照不同
我已经实现了jest快照测试,效果很好 . 我唯一无法解决的是我的组件在我的CI上呈现不同的快照 . 我的测试是: /* eslint-env jest */ /* eslint import/no-extraneous-dependencies: "off" */ import React from 'react'; import { shallow } from 'enz... -
4 votesanswersviews
酶模拟提交表单,无法读取未定义的属性'value'
我在使用jest和酶测试组件时遇到了一些困难 . 我想要做的是测试在名称字段中提交没有值的表单 . 这将确保组件显示错误 . 但是,当我运行其余的时,我在控制台中收到错误: TypeError:无法读取undefined的属性“value” 我对前端测试和一般测试都很陌生 . 所以,我不完全确定我正在使用酶进行这种类型的测试 . 我不知道我的测试是否不正确,或者我是否刚编写了一个不易测试的组件... -
7 votesanswersviews
酶:方法“text”仅用于在单个节点上运行 . 0找到了
我正在使用React v15.4,babel-jest v18和酶v2.5.1 我有一个简单的React组件: import React, {Component} from 'react' import {FormattedRelative} from 'react-intl' import pageWithIntl from '../components/PageWithIntl' import... -
0 votesanswersviews
如何在浅层渲染中找到嵌套的Redux容器?
我正在用Jest和Enzyme测试嵌套的Redux容器 . 如果子嵌套组件类被称为MyComponent,并且我使用Enzyme渲染它们,它们在快照中显示为: <Connect(MyComponent) myProp='someValue' /> 有没有办法用酶找到这些容器?以下失败: expect(wrapper.find(MyComponent)).toHaveLength(1)... -
2 votesanswersviews
如何在Jest快照中使用Enzyme Shallow
我正在尝试使用来自enzyme的shallow并同时使用jest来自jest . 我面临的问题是我需要使用 setState() 从enzyme更改状态,然后将结果与快照匹配 . 查看我的组件的代码: .... getPrevProduct = () => { const key = this.state.indexCurrent > 0 && this.p... -
0 votesanswersviews
无法测试React Router中存在的组件?
我在我的app文件中定义了我的路由,就像这样 . 我正在使用jest和酶来测试,但是,我的快照永远不会匹配 . 在我的测试中渲染时,我手动将道具注入组件,但快照似乎总是只输出一个空div . 下面我附上: 错误日志 组件 Component.Spec 路由文件 错误日志 TypeError: Cannot read property 'have' of undefined ... -
0 votesanswersviews
酶无法使用mount找到要点击的元素
我有一个选项卡React组件,我正在使用Enzyme和Jest进行测试 . 这是组件: class TabbedArea extends React.Component{ constructor(props) { super(props) this.handleClick = this.handleClick.bind(this); this.state = { ... -
14 votesanswersviews
如何使用React和Redux测试具有嵌套容器的组件?
由于我正在处理的应用程序的复杂性,我决定使用嵌套的redux容器,而不是将一个动作作为prop传递给子组件 . 但是,在将 OuterContainer 与 mocha , chai 和 sinon 一起渲染 OuterContainer 时,对于单元测试来说,这已被证明是有问题的 . 这是一个人为的视图结构示例: <OuterContainer> <div> ... -
27 votesanswersviews
使用React和Redux中的Enzyme进行嵌套组件测试
我有一个组件 SampleComponent ,它安装了另一个"connected component"(即 container ) . 当我尝试通过 mount 测试 SampleComponent 时(因为我需要 componentDidMount ),我得到错误: 不变违规:无法在“Connect(ContainerComponent)”的上下文或道具中找到“store... -
2 votesanswersviews
导入时使用大写名称时反应Jest测试错误
开玩笑版本:16.0.1 有人可以告诉我为什么当我将导入名称从 myComp 更改为 MyComp 时,此Jest测试会抛出错误 Home.test.js import renderer from 'react-test-renderer'; import { Home } from './Home.js'; import React from 'react'; describe('Link',... -
2 votesanswersviews
对连接组件的反应js单元测试 - 摩卡
我有一个智能组件,试图编写单元测试(DOM测试) - 得到以下错误:不确定为什么我收到此错误,即使我在测试中传递道具..? 不变违规:无法在“Connect(myComponent)”的上下文或道具中找到“store” . 将根组件包装在a中,或者将“store”显式传递为“Connect(myComponent)”的prop . Updated New error: TypeError: C... -
1 votesanswersviews
使用react-redux测试连接组件的存在
我正在尝试测试包装连接组件的组件 . 所以我有(简化): const InnerComponent = () => { return ( <p>Hi!</p> ) } const InnerComponentWrapper = connect()(InnerComponent) const OuterComponent = () => { ... -
2 votesanswersviews
React&Jest测试:连接到Redux的嵌套组件会产生Invariant Violation错误
所以我有一个组件,我导入以使用Jest进行一些测试 . class MyComponent extends Component { render() { return ( <div> <OtherComponent /> </div> ); } } export { MyComponent }; ... -
0 votesanswersviews
对redux的JEST测试没有按预期工作
我在redux中有一个代码,我导出为 export default connect(mapStateToLinkProps, mapDispatchToLinkProps)(Link); 在jest测试用例中,我编写了测试此导出组件的文章 //imported the above component as Link describe('Dashboard component testing', ... -
2 votesanswersviews
测试路由器v4与开胃酶反应
我正在尝试用反应路由器v4和jest酶做一个简单的测试 . describe('<App />', () => { it('renders a static text', () => { const wrapper = shallow( <MemoryRouter initialEntries={['/']} initialIndex={0}&... -
2 votesanswersviews
React,Jest,Enzyme如何通过商店redux传递测试App.js
使用 create-react-app 创建了一个简单的应用程序,然后更新了我的App.js并添加了redux / store . class App extends Component { render() { return ( <header className="header"> <h1>todos<... -
15 votesanswersviews
如何用酶测试反应路由器
我正在使用酶摩卡柴来测试我的react-redux项目 . 酶提供浅层测试组分行为 . 但我没有找到测试路由器的方法 . 我正在使用react-router如下: <Router history={browserHistory}> ... <Route path="nurse/authorization" component{Nurs... -
9 votesanswersviews
反应路由器4和酶
我已经切换到路由器v4的反应,很少有测试需要重新实现 . 我有以下场景: 安装组件(检查是否已调用methodA) 用酶包装方法改变道具:setProps 检查方法是否已被调用两次 对于旧的路由器来说这很容易..但是新的路由器很难: 如果组件(或子组件)包含例如 Link ,则意味着我们必须提供适当的contxt来呈现组件 . 这就是为什么 MemoryRouter 已被创建: c... -
12 votesanswersviews
测试反应组件包含在withRouter中(最好使用jest /酶)
我有一个React组件,它包含在高阶组件withRouter中,如下所示: module.exports = withRouter(ManageProfilePage); 我的路线如下: <Route path="/" component={AdrApp}> <IndexRoute component={Login}/> <Rou... -
1 votesanswersviews
为什么这个Jest / Enzyme setState测试失败了我的React应用程序?
预计: 测试运行和状态在Login组件中更新,然后启用Notification组件(错误消息) 结果: 测试失败,预期1,收到0 最初在我添加redux和商店之前,因此需要在我的测试中使用商店和提供者逻辑,这个Jest / Enzyme测试正在通过 . Login.test(更新当前版本) import React from 'react' import { Provider } from &q... -
3 votesanswersviews
使用Jest测试React元素高度
我有一个非常简单的React.js组件,它使用“Read more”/“Read less”功能来装饰一长串标记 . 我有几个测试与Jest工作,但是,我无法断言DOM元素高度增加到原始内容的大小 . 在Jest测试环境中,我对getDOMNode() . scrollHeight的调用似乎没有返回任何内容 . 以下是使用代码和失败测试的存储库链接:https://github.com/mgute... -
3 votesanswersviews
我想在使用Jest Snapshots时获得我的图像文件名/路径
我已经开始在一个新项目中使用Jest,现在我正在使用Jest的Snapshot功能 . 简而言之,它的作用是将您的组件呈现在一个字符串中,将其存储在磁盘上(作为快照,您可以在您的仓库中签入),并且当您稍后运行测试时,它将比较快照没有不要改变 . 我的问题与 importing images 有关: 使用Jest处理它的常用方法是指定一个用于导入它们的处理程序,模拟它们并返回一个随机字符串 . 这样... -
1 votesanswersviews
如何使用jest测试导入导入jQuery UI的组件的React组件
我试图使用react-addons-test-utils浅呈现一个React组件(ComponentA),以便我可以快照它 . 组件A导入组件B. 组件B导入'jquery'和'jquery-ui/ui/widgets/draggable',这会在Jest下运行测试时导致错误: jQuery is not defined 我试图在package.json中使用setupFiles属性来导入jque... -
0 votesanswersviews
Typescript,Jest和i18next:无法在React组件中看到文本
我正在测试一个使用i18next进行国际化的React组件 . 组件: import * as React from "react"; import { t } from "i18next"; export function Hello(_props) { return <div className="widget-header&quo... -
5 votesanswersviews
调试未定义的jest快照
我有一些反应代码,我试图测试,看起来像这样: beforeEach(() => { wrapper = mount( <Provider store={store} > <MyPage params={params} location={location} /> </Provider> ); }); test('ren... -
1 votesanswersviews
如何使用酶ShallowWrapper在另一个React组件中找到存储为prop的React组件?
我有一个jest /酶测试,它在一个组件周围创建一个ShallowWrapper,找到一个指定的语义ui-react按钮(按id),模拟按钮上的点击,然后查看点击是否切换某些内容 . 示例JSX: <Popup trigger={<Button onClick={this.toggleShowThing} id="special-btn">a button... -
6 votesanswersviews
React组件在浏览器中正确呈现,但渲染时Jest测试错误:“只有ReactOwner可以有refs”
我在React中有两个组件可以很好地渲染并在浏览器中产生预期的行为,但是在通过Jest运行测试时似乎无法渲染 . description.js var React = require('react/addons'); var $ = require('jquery'); var Description = require('./description.js'); var Descriptions... -
1 votesanswersviews
React组件在RequireJS Jasmine单元测试中不起作用
我正在创作我自己的bootstrap project . 目前我完成了很多事情,但现在我遇到了ReactJS组件的单元测试问题 . 当我在浏览器中运行应用程序 - 一切正常 . 我使用RequireJS来延迟加载所需的模块 . 包含在RequireJS模块和浏览器中的React组件都按预期工作 . 但是当我尝试对反应组件进行单元测试时,RequireJs不会加载React . 而React是未定义... -
1 votesanswersviews
Jest无法找到样式名称
我有一个React Typescript Webpack(使用CSS模块)项目,我正在尝试编写单元测试 . 在我的单元测试中,我的单元测试失败了,因为样式似乎未定义 . Update: 如果我用 style={{backgroundImage:url(test)}} 替换 style={{backgroundImage:url($)}} 然后测试失败 Expected object: {"... -
6 votesanswersviews
Jest与样式组件themeProvider
我指的是github project,我正在尝试编写一个简单的KeyPad.js组件测试 . 我已经看到在这个问题上打开了问题,一个建议的解决方案是将主题作为prop传递给组件 . 该解决方案不适用于酶 . 在我的情况下,问题是子组件通过ThemeProvider接收主题,并且能够进行测试工作,我需要向所有人添加主题道具 . 例: const tree = renderer.create( ...