-
4 votesanswersviews
尝试使用create-react-app用jest运行打字稿
我正在努力设置开玩笑与反应有打字稿 .每当我运行 npm test 时它就会出错 . npm test给出了以下错误: 开箱即用,Create React App仅支持覆盖这些Jest选项:•collectCoverageFrom•coverageReporters•coverageThreshold•snapshotSerializers . Create React App当前不支持pac... -
0 votesanswersviews
使用jest-junit的测试覆盖率在create-react-app项目中失败
在create-react-app/react-scripts@2.1.1项目中,我正在尝试使用jest-junit生成覆盖率报告 . 不幸的是,它失败了以下内容: $ yarn run test --coverage Failed to write coverage reports: ERROR: Error: Invalid report format [jest-ju... -
10 votesanswersviews
用jsdom开玩笑,文档在Promise解析中未定义
The scenario 尝试使用Jest(和Enzyme)测试一个简单的React组件 . 这个组件使用 react-dropzone ,我想测试一些涉及DOM的操作,所以我使用jsdom(已经由 create-react-app 配置) The problem 我的测试代码中可用的 document 对象也可以在组件内部使用,它位于dropzone onDrop 回调内部 undefined... -
1 votesanswersviews
测试用酶和Jest反应:不变违反:目标容器不是DOM元素
我有一个设置酶/开玩笑的问题 . 看起来我的配置中缺少一些东西 . 我使用create-react-app创建了项目,之后我安装了酶 . 如果我使用选择器测试小组件(如类名),它的效果很好 . 但是,当我想为我的组件添加一个测试,这是App中的主要测试时,我遇到了这个错误 . 我发现人们遇到了这个问题,但到目前为止还没有解决方案 . 我在这里粘贴所有细节,如果有人碰到这个,你怎么解决它? 错误说:... -
3 votesanswersviews
如何使用Jest测试异步组件?
任何人都可以告诉我如何在安装一个调用 componendDidMount() 的组件时等待一个嘲笑的承诺解决? class Something extends React.Component { state = { res: null, }; componentDidMount() { API.get().then(res => this... -
1 votesanswersviews
从异步函数测试反应组件
我试图用jest和酶测试一个从异步函数返回的组件,但是我在构建它时遇到了问题 async function action() { return { chunks: ['something'], title: 'something', component: ( <Layout> <Something_else /> ... -
3 votesanswersviews
使用Jest在ReactJS组件中测试异步呈现
我有一个反应组件(16.2): import externalLibrary from 'wherever'; class MyComponent extends React.Component { componentDidMount() { externalLibrary.doStuff().then((data) => { this.setState... -
4 votesanswersviews
如何避免在jest /酶单元测试中使用setTimeout来提供反应本机时间来呈现异步函数
基本上,我有一个React Native组件,它是我的Login组件 . 我想测试多个状态变化 . 我的组件的第一个阶段是显示一个加载组件,然后,它通过多个异步函数,如: NetInfo:为了查看我是否可以使用网络登录自动登录 setState:一些状态更改,也有回调函数 . fetch:从API获取信息 . 到目前为止,我有fetch和NetInfo都被嘲笑 . Coverag... -
0 votesanswersviews
使用Enzyme创建Mocked Jest Tests以获取
我在为调用 fetch 的React组件创建模拟Jest测试时遇到了麻烦 . 特别是,如果我写了一个失败的测试,那么Jest会爆炸并将我踢回bash shell . 要重新开始,我必须重新开始我的测试 . 这是我的组件的精简版本 class App extends Component { constructor(props) { super(props); this.state... -
0 votesanswersviews
具有开玩笑和酶的模拟功能模块
我有一个React组件,它从另一个模块调用一个方法 .该模块只返回1个方法: export default (url, method, authorization, body) => { const headers = { 'Content-Type': 'application/json' } if (authorization) headers.Authorization = l... -
1 votesanswersviews
在Jest中测试异步操作中的加载状态
我有以下React组件,在 componentDidMount() 上执行异步操作,一旦收到数据,就会用结果更新状态 . import * as React from "react"; export interface IAppProp { App: any } export interface IAppProp { App: any } export c... -
13 votesanswersviews
使用Jest使用props模拟React组件
我有一个React组件,其中包含一些依赖于访问Redux存储等的其他组件,这会在执行完整的Enzyme安装时导致问题 . 让我们说这样的结构: import ComponentToMock from './ComponentToMock'; <ComponentToTest> ...some stuff <ComponentToMock testProp="T... -
6 votesanswersviews
在React应用程序中使用Jest模拟导入/模块
我正在研究一个React应用程序,我想测试一个模块,我们称之为B,这取决于另一个模块,我们称之为A. 场景可能是这样的: moduleA.js export function helperFn() { return { prop1: 10, prop2: 20 }; } moduleB.js import React from 'react'; import { helperFn } fro... -
1 votesanswersviews
我可以在不使用.simulate() - Jest Enzyme的情况下调用方法
我正在使用Jest / Enzyme对React飞行座位选择应用进行单元测试 . 有没有办法可以在我的基于类的组件中测试一个方法,该组件在点击一个按钮后运行,但是没有实际模拟按钮点击?这是因为按钮位于子组件的子级内,并且该方法作为prop传递 . 虽然功能非常简单,但我仍然想测试一下 inputSeats(chosenSeats) { this.setState({ cho... -
2 votesanswersviews
模拟由Redux Provider组件包含的React组件函数
这是我的情况:我正在尝试对React组件(TodoList)进行单元测试,该组件在Render方法上不做任何事情,而不是映射项目并显示它们 . 它通过使用MapStateToProps从Redux商店获取项目(TodoItem) . 这是TodoList组件的javascript代码: class TodoList extends React.Component { onRemoveCli... -
0 votesanswersviews
Jest / Enzyme不能模拟类属性
我目前正在用Jest an Enzyme编写React组件的测试 . 当我必须模拟使用箭头语法编写的类属性函数时,我陷入困境:模拟未应用 . 以下是测试组件的摘录: class MaClass extends React.Component { ... componentWillMount () { this.getNotifications() } getNotifica... -
0 votesanswersviews
如何使用Jest和Enzyme模拟组件方法
我有一个React组件,它有一个文本 input 作为主包装器中的子项之一 . 当 input 获得焦点时,它通过 onFocus 属性调用一个函数 . 所以组件的结构是这样的: <div className="main-wrapper"> <input type="text" onFocus={this.focusHandler} /&g... -
0 votesanswersviews
如何用jest和酶模拟React组件事件
我已经阅读了关于类似问题的多个SO答案,但无法理解为什么事情对我不起作用 . 我已经尝试了this,它确实按照接受的答案中的说明工作,但不适用于模拟事件 . 这是组件: import React, { Component } from 'react'; export default class App extends Component { render() { return ( ... -
0 votesanswersviews
功能组件中的jest /酶模拟功能
我有一个功能组件,我想用mock函数测试它(简化演示) const remove = () => { ... do something } const removeButton = (props) => ( <Button onClick={() => remove()}> Remove </Button> ); 我试过这个测试用例... -
2 votesanswersviews
Jest / Enzyme - 生命周期方法中的模拟异步函数
我正在尝试使用Jest对我的React组件进行单元测试 . 我的测试正在通过,但由于try / catch中的console.error(),我得到了TypeError . 我认为我的模拟设置不正确,但我试着用任何结果做异步 . 我很感激任何提示 . console.error components/App.js:91 TypeError: Cannot read property '... -
0 votesanswersviews
使用Jest&Enzyme模拟`getAppState()`
我正在尝试在我的React / Redux应用程序中测试我的操作,并且在我的一个操作中,我使用 getAppState() 来获取Redux的当前状态 . 该操作没有参数,只需从 getAppState() 的返回中解构状态属性 actions/myFile/index.test.js it('should call myAction successfully', () => { con... -
4 votesanswersviews
如何用jest / enzyme模拟反应refs?
我开始学习应用程序测试,我需要测试该功能 . 我有一些组件: export class Countries extends React.Component<Props, State> { private countriesList: React.RefObject<HTMLDivElement> = React.createRef< HTMLDivElem... -
7 votesanswersviews
Jest - 模拟在React组件内部调用的函数
Jest提供了一种模拟函数的方法,如文档中所述 apiGetMethod = jest.fn().mockImplementation( new Promise((resolve, reject) => { const userID = parseInt(url.substr('/users/'.length), 10); process.nextTi... -
0 votesanswersviews
在React组件的Jest / Enzyme测试中没有调用模拟函数
我正在尝试使用Jest和Enzyme进行React测试,并且正在编写一个简单的测试,我在用户将文本输入搜索字段时验证是否使用正确的参数调用了两个动作创建者 . 用户更改输入会导致onChange和onSearch事件处理程序触发(https://ant.design/components/select/) . 我为每个动作创建者创建了模拟函数,并将它们设置为组件的道具,我浅呈现 . 问题是模拟函数... -
1 votesanswersviews
如何使用Jest&Enzyme模拟React无状态currying功能
我有这个无状态的React组件: ... const Providers = ({ onSelectFeedProvider, ... }) => { const handleSelectFeedProvider = value => e => { e.preventDefault(); onSelectFeedProvider({ target: { val... -
0 votesanswersviews
React和Jest:如何模拟成员函数的实现
我在我的组件中做了一些api取件 . 在进行单元测试时,我想模拟某些成员函数的实现: //component.js class Foo extends Component { prepareData() { getSthFromApi().then(getMoreFromApi).then(val=>this.setState({val})); } componentDi... -
0 votesanswersviews
酶导入的ReferenceError
我正在尝试使用酶和jest为反应原生组件编写基本测试 . 我得到一个错误,暗指酶未正确导入: ● SearchPage › it starts spinner when page is loading - ReferenceError: _enzyme is not defined at Spec.eval (__tests__/basic-test.js:12:16) 1 t... -
4 votesanswersviews
如何在componentDidMount中测试由异步调用创建的组件?
我正在从组件的componentDidMount函数向我的API http://localhost:3001/api/cards 发出GET请求,因此只有在第一次呈现组件之后才会发出api请求(如反应官方指南所示) . 此API设置数组 data 的状态 . 在渲染函数中,我调用 data.map 函数来渲染此数组中的多个组件 . 我该如何测试是否已呈现所需数量的组件? 我的组件: //Card... -
3 votesanswersviews
浅层渲染用酶无法找到元素
我试图对我的一个React组件进行单元测试,但是Enzyme的浅渲染方法是说它无法在组件中找到元素 . 该组件根据身份验证支持呈现不同的导航链接 . 导航组件: class Header extends Component { renderLoginNav() { switch(this.props.auth) { case null: ... -
0 votesanswersviews
在jest中导入React组件时出错
我试图用Jest测试一个基本的反应组件,但在将组件导入我的测试时遇到错误 . 它在我的测试之外工作正常 . 错误是: 不变违规:_registerComponent(...):目标容器不是DOM元素 . App.js const App = () => ( <h1>Hello World</h1> ) app.test.js import React from ...