草庐IT

javascript - Angular karma Jasmine 错误 : Illegal state: Could not load the summary for directive

我正在开发githubrepository(使用angular7和angular-cli),我在master分支中对Karma和Jasmine进行了一些测试。现在我正在尝试添加延迟加载功能,问题是,之前通过的测试现在没有通过。这很有趣,因为只有延迟加载模块的测试失败了......这是代码和错误:import{async,TestBed}from'@angular/core/testing';import{APP_BASE_HREF}from'@angular/common';import{AppModule}from'../../app.module';import{HeroDetai

javascript - Rails 3.1+ 的 Jasmine 与 Mocha JavaScript 测试

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭7年前。Improvethisquestion我有使用Jasmine的经验并且非常喜欢它。有没有人有Jasmine和Mocha的经验,特别是Rails?我想知道它是否值得切换到。

javascript - 如何为 Jasmine spy 的多次调用提供不同的返回值

假设我正在监视这样的方法:spyOn(util,"foo").andReturn(true);被测函数多次调用util.foo是否可以让spy在第一次调用时返回true,但在第二次调用时返回false?或者有不同的方法来解决这个问题吗? 最佳答案 您可以使用spy.and.returnValues(如Jasmine2.4)。例如describe("Aspy,whenconfiguredtofakeaseriesofreturnvalues",function(){beforeEach(function(){spyOn(util,"f

javascript - 我如何测试 Jasmine 中的值是 "greater than or equal to"?

我想确认一个值是小数(或0),所以这个数应该大于等于0并且小于1。describe('percent',function(){it('shouldbeadecimal',function(){varpercent=insights.percent;expect(percent).toBeGreaterThan(0);expect(percent).toBeLessThan(1);});});如何模拟“>=0”? 最佳答案 我想我应该更新这个,因为API在新版本的Jasmine中发生了变化。JasmineAPI现在内置了以下功能:大于

javascript - 如何使用 Jasmine 监视值属性(而不是方法)

Jasmine的spyOn可以很好地改变方法的行为,但是有没有办法改变对象的值属性(而不是方法)?代码可能如下所示:spyOn(myObj,'valueA').andReturn(1);expect(myObj.valueA).toBe(1); 最佳答案 2017年2月,他们合并了一个添加此功能的PR,他们于2017年4月发布。所以要监视你使用的getters/setters:constspy=spyOnProperty(myObj,'myGetterName','get');其中myObj是您的实例,“myGetterName”是

javascript - 如何使用 Jasmine 验证 jQuery AJAX 事件?

我正在尝试使用Jasmine为基本的jQueryAJAX请求编写一些BDD规范。我目前在独立模式下使用Jasmine(即通过SpecRunner.html)。我已将SpecRunner配置为加载jquery和其他.js文件。为什么以下不起作用的任何想法?has_returned不会变为真,甚至认为“雅皮士!”警报显示正常。describe("AjQueryajaxrequestshouldbeabletofetch...",function(){it("anXMLfilefromthefilesystem",function(){$.ajax_get_xml_request={has_

javascript - 从 Node 使用 Jasmine 的正确方法是什么?

经过多次黑客攻击,我设法通过Node运行了一个简单的Jasmine测试。但是,有一些奇怪的东西我不明白......jasmine文件导出函数似乎需要一个对自身的引用才能传回工作(这适用于Jasmine和ConsoleReporter)。我确定这不是正确的方法(尽管我很高兴我终于进行了一些测试:)),所以有人可以解释一下更好的方法吗?(注意:我对引入更多我不理解的第三方代码(如node-jasmine)不感兴趣;我想了解我现在拥有的东西;不要添加更多!)//Includestuffjasmine=require('../../../Apps/Jasmine/jasmine-standal

node.js - 如何为 gulp-jasmine 设置环境变量

在我的项目中,我希望服务器根据环境变量DATABASE动态使用数据库。根据此变量,我将从具有数据库名称的文件夹下加载特定于该数据库的文件。(mongodb->server/mongodb/file.js)我使用noemon为Node服务器设置环境变量(DATABASE="mongodb"),例如,当我加载数据库文件时,我使用require('./'+process.env.DATABASE+'/file').现在我的问题是我是否可以使用环境变量配置gulp-jasmine?现在我的所有测试都失败了,因为路径解析为./undefined/file。 最佳答案

node.js - 如何使用 Jasmine 2.3 和 SuperTest 测试 Express.js 路由

我正在使用Jasmine2.3通过NPM安装并使用Grunt执行。'usestrict';module.exports=function(grunt){grunt.initConfig({package:grunt.file.readJSON('package.json'),exec:{jasmine:'node_modules/.bin/jasmine'}});require('load-grunt-tasks')(grunt);require('time-grunt')(grunt);grunt.registerTask('default','exec:jasmine');};我导

node.js - 为什么在 `jasmine` 和 `jasmine init` 之后运行 `jasmine examples` 什么都不做?

我已经通过运行npminstalljasmine-g全局安装了jasmine。运行jasmine-v给我jasminev2.5.0jasmine-corev2.5.0然后,根据docs,运行jasmineinitjasmineexamples这创建了预期的/spec目录和spec/support/jasmine.json文件。我的印象是,如果我现在运行jasmine,我应该会在控制台中看到一些测试输出。相反,它只是想了一会儿,然后什么也不做。我在GitBash终端的Windows7机器上运行nodev4.5.0。我也尝试过从Windowscmd提示符运行它,但这也不起作用。