草庐IT

jasmine-bail-fast

全部标签

javascript - 有没有办法将外部 Javascript 作为 Jasmine 的来源?

我正在尝试配置jasmine.yml(使用jasminegem)以使用从GoogleAPI提供的JQuery,而不是将其本地下载到我的服务器。即:src_files:-ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js不幸的是,这似乎不起作用,因为(根据配置文件中的注释)它正在寻找相对于src_dir的文件路径。那这不可能吗?谢谢鲁伊 最佳答案 我最终通过规范助手编写了javascriptinclude-在我的例子中是Livereload脚本:document.write

javascript - phantomjs 和 run-jasmine.js 超时

所以我遇到了一个奇怪的问题。我有一个Jasmine测试运行器在我的机器上本地运行,位于localhost:8080/test/runner.html当我在网络浏览器中打开它时,它运行良好。我想自动执行此操作,所以我使用了phantomjs(从brew安装——我在mac上)并且我使用了代码中的示例run-jasmine.js文件。但是,每当我针对URL运行它时,我都会得到:phantomjswar/test/spec/run_jasmine.jshttp://localhost:8080/test/runner.html'waitFor()'timeout所以我写了一个非常简单的脚本来查

javascript - jasmine-node 是否提供任何类型的 "fail fast"选项?

当我从命令行运行一套jasmine测试时,我想要某种类型的快速失败选项,以便它在第一个断言错误时停止今天有这样的东西吗? 最佳答案 刚拼在一起jasmine-bail-fast获得这种行为。npminstalljasmine-bail-fast然后在你的第一个规范之前:require('jasmine-bail-fast');jasmine.getEnv().bailFast();希望得到它mergedtojasminecore然后作为标志添加到jasmine-node。 关于javas

javascript - Jasmine 期待(结果代码)。toBe(200 或 409)

对于某些测试场景,我遇到了针对多个值进行测试的需求,这些值都可以。我想做的事情如下:expect(resultCode).toBeIn([200,409]);当resultCode为200或409时,该规范应该通过。这可能吗?已添加感谢peter和dolarzo指导我创建匹配器。我在使用addMatchers()时遇到了问题。所以,最后我在jasmine.js中添加了以下内容:jasmine.Matchers.prototype.toBeIn=function(expected){for(vari=0;i这给了我一个可行的解决方案。我现在可以根据需要执行toBeIn。(Jasmine1

javascript - $browser.$$checkUrlChange 在 Jasmine 测试中未定义

我有以下测试:it('shouldmaintainabindbetweenthedataatthe$scopetothedataattheingredientsService',function(){$scope.addFilters('val1',$scope.customFiltersData,'filter1');$scope.$digest();expect($scope.customFiltersData).toEqual(ingredientsService.filters());});我收到以下错误:TypeError:undefinedisnotafunctionatS

javascript - 当不同文件中存在测试时,如何在 jasmine 中对测试套件进行分组?

根据文档,我们可以有测试套件的组-子组,但它们只存在于一个文件中,如下所示describe('MainGroup-Module1',function(){beforeEach(function(){module('app');});describe('subgroup-1',function(){//Subgroup//specsgoeshere});describe('subgroup-2',function(){//Subgroup//specsgoeshere});});如果我想将subgroup-1和subgroup-2保存在两个不同的文件中,我如何将这两个子组分组到MainG

javascript - 试图监视(Jasmine)Array.prototype 方法导致堆栈溢出

这很奇怪。将testemrunner与jasmine2一起使用并执行以下规范(尽管它正确地标记了没有期望):describe('Spyingonarray.prototypemethods',function(){it('shouldworkthisway',function(){spyOn(Array.prototype,'push').and.callThrough();//expect(1).toBe(1);});});但是,添加一个expect(任何expect!)它会导致堆栈溢出,并在testem控制台中显示以下消息:RangeError:超出最大调用堆栈大小。在http:/

javascript - 将 Jasmine JavaScript 单元测试与 TFS Build CI 集成的简便方法

我一直在使用Jasmine编写JavaScript单元测试。但是,这些测试在浏览器中运行,而不是作为MSTest的一部分。我希望我的TFS持续集成构建在JavaScript单元测试失败时中断。我知道VisualStudio2012中有针对此问题的解决方案,但我在2010年(并且可能在未来很长一段时间内)。有没有一种简单的方法可以将基于Jasmine的JavaScript单元测试与TFSBuild集成? 最佳答案 Chutzpah测试运行器使您能够从命令行或VisualStudio运行QUnit和JasmineJavaScript单元

javascript - 如何从 Jasmine 测试 Angular 2/4 触发文档级事件

根据Angular测试文档,要从测试中触发事件,我们在调试元素上使用triggerEventHandler()方法。此方法采用事件名称和对象。现在,如果我们使用HostListener添加事件,这将起作用。例如:@HostListener('mousemove',['$event'])或添加一个document级别的事件,我们这样做是这样的@HostListener('document:mousemove',['$event']).在我当前的指令实现中,由于我无法嵌套HostListeners,我使用document.addEventListener添加document级事件到Host

javascript - Jasmine 2.0 TeamCity 记者

使用teamcity、requirejs和运行phantomjs.exe的jasmine1.3构建了一个有效的CI,我正在尝试将jasmine升级到2.0版。在这篇精彩的文章之后,我得到了一个基本的htmlspecrunner页面。(Jasmine现在加载到windows.onload,https://stackoverflow.com/a/20851265/564577)现在我正在尝试让teamcity-reporter工作。(来自测试框架下的插件页面,http://confluence.jetbrains.com/display/TW/TeamCity+Plugins#)它依赖于j