草庐IT

unit-testing

全部标签

javascript - 使用 jasmine 监视构造函数

我想监视构造函数并使用jasmine告诉它被调用了多少次。我通常会做这样的事情来定位对象的方法:spyOn(lib,'methodName')但在这种情况下,我试图监视实际的构造函数,所以我尝试过:spyOn(lib);it('libshouldbeinstantiatedforeachmatchingelement',function(){spyOn(lib);expect(lib.calls.count()).toEqual(2);});不幸的是,这只会在控制台中给我一个错误:"Error:undefined()methoddoesnotexistin..."我如何监视构造函数?

javascript - Angular JS 错误 : [$injector:nomod] Module 'portfolioMockupApp.services' is not available

我正在尝试使用Karma编写一些单元测试,但收到以下错误:PhantomJS1.9.8(MacOSX)错误错误:[$injector:nomod]模块“portfolioMockupApp.services”不可用!您要么拼错了模块名称,要么忘记加载它。如果注册模块,请确保将依赖项指定为第二个参数。http://errors.angularjs.org/1.3.3/$injector/nomod?p0=portfolioMockupApp.services在/Users/danielbogart/Documents/coding/work/portfolio-mockup/bower_

javascript - 在 Jest 中手动模拟对象

我正在尝试找出Jest中的手动模拟。我认为这应该很容易……但事实并非如此。我的项目目录是这样的__测试__用户测试.js模特user.js__模拟__user.js节点模块...package.jsonmodels/user.js和models/__mocks__/user.js都有相同的代码:module.exports={create(username,password){returnnewPromise(function(resolve,reject){setTimeout(function(){resolve({"username":username,"password":pa

带有 .test() 的 Javascript 正则表达式

>varp=/abc/gi;>vars="abc";>p.test(s);true>p.test(s);false;当我在Chrome的控制台上运行此代码时,上面有此输出。每次调用'.test()'时,我都会得到不同的值。有人可以向我解释为什么会这样吗?谢谢 最佳答案 该行为是由于“g”修饰符,即匹配三次,第四次不匹配:>varp=/a/gi;>vars="aaa";>p.test(s)true>p.test(s)true>p.test(s)true>p.test(s)false查看类似问题:WhyRegExpwithglobalf

javascript - QUnit 不会运行测试

我刚开始使用QUnit时遇到了问题。我目前正在使用TypeScript,它是一个JavaScript编译器。我在与主类结构平行的类中进行测试。在每个类中,我都有一个名为runTests()的函数。为了执行这些测试,我遍历并获取所有以“Test”结尾的类,然后调用它们的runTests()函数。runTests()函数的一个示例是:runTests=function(){QUnit.test("5=5",function(){QUnit.ok(5==5,"okay");});}我知道所有的runTests()工作(因为它们被调用,因为控制台输出而被确认),但最多它只向我显示一个测试。它似

javascript - 如何使用 Karma 单元测试运行程序捕获 console.error?

Karma将捕获任何写入console.log的消息,但不会捕获任何写入console.error的消息。我知道karma在后台使用log4js。有什么方法可以配置karma来捕获console.error吗? 最佳答案 Karma确实捕获console.error(参见https://github.com/karma-runner/karma/blob/415d0257c23ff7be07e240648bfff0bdefa9b0b6/client/karma.js#L70)确保设置配置client.captureConsole:t

javascript - Controller 中有 $state.go 方法的单元测试 Controller

如何为具有$state.go()且预期重定向到特定状态的函数编写单元测试?$scope.inviteMembers=(id)=>{$state.go('invite',{deptId:id});} 最佳答案 既然是单元测试,你只需要确保函数被调用,仅此而已。沿着这条线的东西:it('shouldmovetotheinvitepageafterinvitingsomeone',function(){spyOn($state,'go');$scope.inviteMembers(1);expect($state.go).toHaveBe

javascript - karma.conf.js Uncaught ReferenceError : google no defined

当我尝试运行karma测试运行器时,我从我的一个文件中收到如下错误,说我的库google未定义???Chrome36.0.1985(MacOSX10.9.4)ERRORUncaughtReferenceError:googleisnotdefinedat/Users/giowong/rails_project/doctible_pre_treatment/app/assets/javascripts/angular-google-maps.min.js:7我的karma.conf.js文件//Karmaconfigurationmodule.exports=function(confi

javascript - Jest react 测试 : Check state after delay

在Jest文档的帮助下尝试创建测试时我真的很困惑https://facebook.github.io/jest/docs/timer-mocks.html#content我正在尝试检查容器安装时的状态,然后几秒钟后,在我手动设置状态中的值(使用setTimeout())之后。我在Main的componentDidMount中有一个这样的函数:componentDidMount(){this.setStateAfterDelay();}函数的作用是:setStateAfterDelay=()=>{setTimeout(()=>{this.setState({fruits:['banana

Javascript Regex 应该通过 .test() 但似乎失败了 - 为什么?

这个问题在这里已经有了答案:WhydoesaRegExpwithglobalflaggivewrongresults?(7个答案)关闭7年前。在javascript中测试我的正则表达式时,我似乎总是得到一个奇怪的结果。这是我的fiddle:http://jsfiddle.net/s5fYf/15/这取self正在构建的网络项目。我将一组验证对象传递到我的验证函数中,该函数遍历它们,根据值验证每个规则。如果一个为假,它应该停止循环并返回一个返回对象,该对象从失败的规则中获取消息和cssClass。问题是即使正则表达式测试通过,验证方法似乎也返回false,这应该是不可能的!所以我觉得我错