我有一个使用chai的expect的mocha测试:it("shouldparsesailsoutofcachefile",async()=>{constsailExtractor=newExtractor();constresult=awaitsailExtractor.extract("test.xml");try{expect(result.length).to.be.greaterThan(0);constwithMandatoryFlight=result.filter((cruises)=>{returncruises.hasMandatoryFlight===true;}
我在尝试应用enzyme时遇到此错误,但我找不到任何相关问题。这是test.js;importReactfrom'react';importAccountLoginFormfrom'./LoginPage';importsinonfrom'sinon';import{mount,shallow,configure}from'enzyme';import{expect}from'chai';importAdapterfrom'enzyme-adapter-react-15';importconfigureStorefrom'redux-mock-store';configure({ada
我无法弄清楚为什么这个测试没有通过。varexpect=require('chai').expect;describe('HelloComponent',function(){it('passesaquitesimpletest',function(){expect(1+4).to.equal(5);});});产生这个错误:DEBUG[web-server]:serving:/Users/ivan/dev/react-starter/node_modules/karma/static/context.htmlDEBUG[web-server]:serving(cached):/Use
我对cucumberjs有疑问。我找不到办法确保具有给定选择器的那个元素被呈现到DOM中。我在用着cucumberjs与Chai。https://github.com/cucumber/cucumber-jsisPresent返回对象——不管元素是否存在。所以问题是如何检查DOM中是否存在元素。我将编辑问题以分享一个经验教训。我阅读文档还要感谢NathanThompson。存在()返回一个promise,该promise将解决该元素是否存在于页面上。http://angular.github.io/protractor/#/api?view=Protractor.prototype.i
我是使用React-Jest-Enzyme进行测试的新手,但从我收集的所有相关信息来看,在我看来,大多数测试实际上都在测试如果React库崩溃,而不是我的实际业务逻辑。我举几个例子,如果我错了请指正:快照测试:这个策略有什么问题?据我所知,它的主要目的是捕获对我的代码的任何不需要的更改。它“stringify”我的组件树,并注意到是否添加了任何新的换行符/字符,对吗?所以它主要用于那些我可能不小心按下键盘的情况?或者其他人不小心弄乱了我的代码?Enzyme的mount/shallow和Jest的我看到的大多数解释你如何使用它们的例子都是这样的:constwrapper=mount()e
我指的是测试断言库:http://chaijs.com/api/bdd/#false您可以像下面这样编写语言链断言:expect(false).to.be.false;expect()显然是一个全局函数,“to.be”看起来像两个属性,但最后一部分“false”是如何工作的。我希望它必须是一个函数调用:expect(false).to.be.false();这是2015ES语法吗?我似乎无法在https://github.com/lukehoban/es6features中找到对它的引用StackOverflow说这是不可能的:Howtoimplementoptionalparenth
我在调用enzym的mount函数时遇到问题。它说:EnzymeInternalError:Enzymeexpectsanadaptertobeconfigured,butfoundnone.Toconfigureanadapter,youshouldcall`Enzyme.configure({adapter:newAdapter()})`beforeusinganyofEnzyme'stoplevelAPIs,where`Adapter`istheadaptercorrespondingtothelibrarycurrentlybeingtested.Forexample:impo
所以我的开Jest快照可以正常工作,使用babel6/emotion9在快照中生成css和html但是我需要更新到babel7和emotion10但是我的enzyme快照测试不再有效。代码编译并在更新所需代码后工作正常,只是测试被破坏(迁移文档中没有显示与测试设置更新相关的任何内容)。test('rendersproperly',()=>{//thisworksgeneratingthecorrectcss/htmlsnapshotoutputexpect(renderer.create(test).toJSON()).toMatchSnapshot();//thisdoesnotco
我编写了一个简单的React组件来呈现:exportclassIframeextendsReact.component{render(){return;}}我试图通过检查加载的内容src来测试它正确填充在中.为此,我尝试访问frame.contentWindow,但在用enzyme安装它之后它总是返回undefined.我试过模拟内容与诗浓FakeXMLHttpRequest:server=sinon.fakeServer.create();server.respondWith('GET','test',[200,{'Content-Type':'text/html'},'Amazin
我有一个父组件和一个只是“标签”元素的子组件。当我点击子元素时,我需要调用父组件中的函数。我希望它被调用,但状态没有改变,当我看到覆盖文件时,函数没有被调用。**更新:**该代码适用于开发。只是单元测试失败了。这是我的父组件父类.jsexportdefaultclassParentextendsComponent{constructor(props){super(props)this.state={clickedChild:false}this.handleChildClick=this.handleChildClick.bind(this)}handleChildClick(inde