我正在用Jest模拟一个函数,文档说它们真的是“spy”。我也看到了SinonJS中spy的使用,但我找不到两者之间的明显区别。如果它们服务于相同的目的,是否有任何理由选择一个而不是另一个?JestMockFunctionsSinonJS 最佳答案 两者的主要行为是一样的,都是可以记住调用的函数。因此,对于两者,您都可以计算出它们被调用的频率和参数。Sinon具有更广泛的API,可用于在spy上进行测试,并且它有一个API可将对象中的函数替换为spy。 关于javascript-Jest
我运行了测试,这是我收到的:----------------|------------|------------|----------|------------|--------------------|文件|%Stmts|%分支|%函数|%行|未覆盖的行#s|--------------|------------|----------|----------|-----------|--------------------|所有文件|100|0|100|100||搜索|100|100|100|100||索引.js|100|100|100|100||搜索结果|100|0|100|100|
我在我的机器上安装了Jest并从终端输入jest导致来自父folers的测试也被执行。我只想从当前文件夹运行测试。例如如果我在终端中转到c:/dev/app并键入some-jest-command,它应该只运行带有.test.js的文件>存在于app文件夹中。目前,从app文件夹运行jest命令也会在父文件夹中运行测试,这不是我想要的行为。 最佳答案 默认情况下,Jest将尝试递归测试package.json所在文件夹中的所有内容。假设您在c:/dev/app中,而您的package.json在c:中。如果调用Jest的基本命令是n
为目录中的Redux操作('App.js')设置Jest测试('App-test.js')app/__tests__:这是App.js的header:jest.unmock('../../modules/actions/App.js')importReactfrom'react'importReactDOMfrom'react-dom'importTestUtilsfrom'react-addons-test-utils'import*asAppfrom'../../modules/actions/App.js'在app/有一个模块config.js.这是在需要的地方导入的。问题是,当
我在grunt构建过程中得到了这个webpack配置:module.exports={options:{output:{path:path.resolve('../ui/static/js'),filename:'[name].js',chunkFilename:'[id].[name].js',libraryTarget:'amd',library:'[name]'},externals:['jquery','lodash','backbone','backbone.layoutmanager','moment','spin','lib/select2.min','dispatche
我在各种Jest测试中使用了一些实用程序函数,例如这样的函数,用于模拟获取响应:exportconstmockFetchJsonResponse=(data)=>{ok:()=>true,json:()=>data};我想以一种可以导入它们并在我的测试中重用的方式共享这些函数。例如://Some.spec.jsxfile//...import{mockFetchJsonResponse}from'some/path/to/shared/tests/utils.jsx'//ThenIcanusemockFetchJsonResponseinsidethistest//...我应该在哪里放
场景尝试使用Jest(和Enzyme)测试一个简单的React组件。该组件使用react-dropzone,我想测试一些涉及DOM的操作,所以我使用jsdom(已由create-react-app配置)问题document对象虽然在我的测试代码中可用并且在组件内部可用,但在dropzoneonDrop回调中是undefined,这会阻止测试运行。代码MyDropzoneimportReactfrom'react'importDropzonefrom'react-dropzone'constMyDropzone=()=>{constonDrop=(files)=>{fileToBase6
我是JavaScript测试的新手,正在新的代码库中工作。我想编写一个测试来检查元素上的类名。我正在和Jest一起工作,ReactTestingLibrary。下面我有一个测试,它将根据variant属性呈现一个按钮。它还包含一个类名,我想测试一下。it('RenderswithaclassNameequaltothevariant',()=>{const{container}=render()expect(container.firstChild)//CheckforclassNamehere})我试图在google上搜索类似Enzyme具有hasClass的属性,但我找不到任何东西
我一直在为我的所有事件(当然还有其他一切)编写测试,但我不知道如何测试this.props.onClick(this)在子组件上被调用。我的子组件有以下代码:closeModal:function(){this.props.onClick(this);},render:function(){return()}家长是这样听的:onCloseModal:function(){this.replaceState({modalStatus:'hidden'});},render:function(){return()}我知道如何测试parent的点击事件,我也知道如何在测试中调用child的按
我有一个简单的应用程序,他们使用react-routerv4constApp=()=>(Home}/>Profile}/>Help}/>);和测试jest.dontMock('../App');importReactfrom'react';import{MemoryRouter}from'react-router-dom';import{shallow}from'enzyme';importAppfrom'../App';describe('',()=>{constwrapper=shallow();console.log(wrapper.html());it('rendersasta