草庐IT

react单元测试

全部标签

javascript - RegExp测试方法中的 "g"如何交替工作?

http://jsfiddle.net/bpt33/vart="";vara=["atom-required","atom-label","atom-data-type","atom-regex"];varr=/atom\-(label|required|regex|data\-type|class|is\-valid|field\-value|error)/i;functiontest(a,r){for(vari=0;i"+r.test(a[i])+"";}}test(a,r);t+="";a=["atom-required","atom-label","atom-data-type

javascript - angularJS:单元测试给出:未知提供者:$httpProviderProvider <- $httpProvider

在我尝试做的一个单元测试中beforeEach(function(){angular.mock.inject(function($injector){$httpBackend=$injector.get('$httpBackend');mockUserResource=$injector.get('User');$httpProvider=$injector.get('$httpProvider');//(demo)为什么不能注入(inject)$httpProvider?我这样做的原因是因为我没有加载添加我所有拦截器的文件,因为我想一个一个地测试它们! 最

javascript - should.js 不会导致 mocha 测试失败

我对单元测试、mocha和should.js非常陌生,我正在尝试为返回promise的异步方法编写测试。这是我的测试代码:varshould=require("should"),tideRetriever=require("../tide-retriever"),moment=require("moment"),timeFormat="YYYY-MM-DD-HH:mm:ss",from=moment("2013-03-06T00:00:00",timeFormat),to=moment("2013-03-12T23:59:00",timeFormat),expectedCount=30

javascript - React js 性能工具插件抛出 "Cannot read property ' 未定义的计数”

我对如何使用React的性能工具感到困惑。我目前的使用情况如下图:varPerf=React.addons.Perf;Perf.start();this.setState({newState:newStateObject,},function(){Perf.printInclusive();Perf.stop();});这不会在页面上呈现任何内容并脱口而出UncaughtTypeError:Cannotreadproperty'counts'ofundefined 最佳答案 参见https://github.com/facebook

javascript - react类中的成员变量引用为 "shared"

当我创建一个React类的多个实例时(通过在同一个类上使用React.createElement),一些成员变量在实例之间共享(数组和对象是共享的,字符串和bool值等不是)。对我来说,这感觉很可怕、很可怕​​而且是错误的。这是一个错误还是有其他方法可以做我想做的事?请看:http://jsbin.com/kanayiguxu/1/edit?html,js,console,output 最佳答案 您应该做的是在组件上设置状态,而不是将状态作为React组件上的任意属性。所以不要这样做:varMyComponent=React.cre

javascript - 如何使用 Protractor 测试比较具有 getSize() 函数的元素的宽度和高度?

早上好亲爱的同事们。我对Selenium方法有疑问。在我的例子中,我正在使用Protractor测试Angular应用程序,我想将getSize函数的返回值与我的测试中的设置值进行比较。这是下面的代码-varsearchForm=element(by.id('search'));it('searchFormmusthavewidth:400pxandheight:400px',function(){//expect(browser.driver.manager().window().getSize()).toEqual(400,400);searchForm.getSize();sea

javascript - 使用 React-Native 运行自定义 Babel 转换

我需要使用babel-plugin-transform-decorators-legacy和React-Native来启用@decorators。如何配置React-Native/Babel来实现这一目标?这与我之前关于如何让@decorators在React-Native中工作的问题有关:https://stackoverflow.com/a/34271636/941058 最佳答案 使用官方Babel预设安装官方BabelpresetsforReactNativeapplications:npmibabel-preset-rea

javascript - Jasmine 单元测试不等待 promise 解决

我有一个像这样的异步依赖的Angular服务(function(){angular.module('app').factory('myService',['$q','asyncService',function($q,asyncService){varmyData=null;return{initialize:initialize,};functioninitialize(loanId){returnasyncService.getData(id).then(function(data){console.log("gotthedata!");myData=data;});}}]);})

javascript - 如果连接到未更改的商店,React componentDidUpdate 方法不会在继承的 Prop 更改时触发

我想让我的组件知道是否已经加载了一些库。要知道从任何上下文我都将它连接到我商店的“库”reducer到我的组件。我还从调用组件的父级向它传递一个配置对象this.props.dataObject。像这样:classGoogleButtonextendsComponent{render(){if(this.props.libraries.google){return}else{returnnull}}componentDidUpdate(){gapi.interactivepost.render('sharePost',this.props.dataObject)}}functionma

javascript - react 变化检测

我正在研究变化检测机制,但我在使用reactjs案例时遇到了一些麻烦。当在React组件中更改props时,该组件将“重新渲染”(不完全正确,因为差异算法,但想法就在这里)。我知道当某事发生时,React浏览其内部虚拟DOM以检查新值是否与之前的值相同,并根据需要重新渲染其真实组件树。我的问题是:这是什么东西。例如,使用angular2,我们有zone.js允许捕获异步内容(按钮点击、setTimeout等...)并触发更改检测。但是现在,我完全不知道它是由reactjs触发的。你能帮帮我吗? 最佳答案 试着想象这里有两件事:组件(