草庐IT

run-jasmine

全部标签

javascript - "Error: Mismatched anonymous define()"与 Karma + RequireJS + Jasmine

我现在卡住了一段时间,试图设置和运行单元测试。我有一个AngularJS前端加载了针对生产优化的RequireJS和r.js,所以它很好地放在一个文件中。这行得通!执行单元测试是行不通的。到目前为止,这没什么特别的,只是从教程中复制了一个starter。tests/user/user.test.js:define(['angular','angular-mocks','app'],function(angular,app){describe('Unit:UserController',function(){beforeEach(module('user.app'));it('shoul

javascript - "Stop running this script?"错误

我正在开发一个广泛使用JavaScript(jQuery)的网站。我经常收到IE“停止运行此脚本?”当我尝试关闭浏览器时出现错误对话框。我猜问题的发生是因为该站点是使用AJAX的单个页面,因此没有回传来重置IE的已执行命令计数。客户端注册表黑客攻击不是一种选择。有谁知道解决这个错误的方法吗?更新:该页面有多个(约10个)间隔计时器,它们以30或60秒的间隔连续轮询。 最佳答案 我也遇到过这个问题,并通过划分连续的DOM执行来克服了这个问题。对于这种方法,我使用了setTimeout函数。解决这个问题完全取决于你如何划分连续执行。

javascript - 类型错误 : module is not a function AngularJS & Jasmine

在我的示例应用程序中,我像这样测试运行器收藏夹Controller:varmodule=angular.module('AngularSampleApp',[]);varFavoritesController=module.controller('FavoritesController',functionfavoritesController($scope){$scope.phones=[{'name':'NexusS','snippet':'FastjustgotfasterwithNexusS.'},{'name':'MotorolaXOOM™withWi-Fi','snippet

javascript - grunt Jasmine Node 测试运行两次

我设置了grunt来运行node.jsJasmine测试。出于某种原因,使用此配置,结果总是显示双倍的测试。这是我的配置:我正在使用jasmine-node插入grunt。/spec/some-spec.js:varmyModule=require('../src/myModule.js');describe('test',function(){it('works',function(done){setTimeout(function(){expect(1).toBe(1);done();},100);});});Gruntfile.js:module.exports=function

javascript - Jasmine 测试中未调用 AngularJS 指令链接函数

我正在创建一个在其link函数中调用服务的元素指令:app.directive('depositList',['depositService',function(depositService){return{templateUrl:'depositList.html',restrict:'E',scope:{status:'@status',title:'@title'},link:function(scope){scope.depositsInfo=depositService.getDeposits({status:scope.status});}};}]);目前该服务很简单:ap

javascript - Jasmine + AngularJS : How to test $rootScope. $broadcast 被调用参数?

我正在尝试编写一个单元测试来验证是否调用了$rootScope.$broadcast('myApiPlay',{action:'play'});。这是myapi.jsangular.module('myApp').factory('MyApi',function($rootScope){varapi={};api.play=function(){$rootScope.$broadcast('myApiPlay',{action:'play'});}returnapi;});这是我的单元测试:describe('Service:MyApi',function(){//loadtheser

javascript - 使用 Karma (Jasmine) 测试 AngularJS 工厂

我正在努力使用Karma+Jasmine测试AngularJS工厂。我无法将我的工厂注入(inject)OfficerValidationService变量。我做错了什么?注意:文件加载正确工厂:'usestrict';angular.module('darthvader').factory('OfficerValidationService',[function(){varOfficerValidationService={};OfficerValidationService.something=function(){returntrue;};returnOfficerValidat

javascript - ExtJS 调试 "[E] Layout run failed"(在自定义组件中)

我开发了一个customkindofcombobox它使用网格而不是标准的组合选择器(主要是为了受益于大数据集的缓冲渲染)。我现在正试图使其与Ext4.2.1兼容,但我遇到了这个错误:[E]Layoutrunfailed请参阅demopages对于测试用例。每个组合都会引发一次错误,但只会在第一次展开时引发。4.2.0没有发生这个错误(参见demopagewith4.2.0)。当时我在4.2.1中确定的重大更改是关于查询过滤器,而不是渲染或布局......但是,在网格选择器位于窗口,但它在一个有很多覆盖的代码库中,并且使用了Ext4的沙盒版本......所以我只是希望它不是来self的

javascript - Jasmine Node 完成未定义

一直在尝试简单的异步测试。安装jasmine-nodenpminstall-gjasmine-node然后编写一个简单的模块并测试。简单的模块。//weather.jsexports.get=function(city,callback){callback(city);};和一个测试套件。//weather-spec.jsvarlist=require("../modules/weather");describe("WeatherForecast",function(data){it('shouldgetweatherforLondon,UK',function(){list.get(

javascript - 在 Node.js 中使用 Jasmine 测试子 process.send

我有一个Node.js应用程序,它有一个main-process.js和一个child-process.js。main-process.js看起来像这样:varchildProcess=require('child_process');varjob=childProcess.spawn('node',["child-process.js"],{detached=true,stdio:['ipc']});我的child-process.js执行一些任务并通知父进程它的状态,它使用:exports.init=function(){//someprocessinghereprocess.se