【javascript – TypeError:jasmine.addMatchers不是一个函数】教程文章相关的互联网学习教程文章

javascript – 如何让Jasmine的spyOnProperty工作?【代码】

我看到了this post的帖子,并很高兴尝试一下,但我无法让它工作.试图保持这个简单只是为了弄清楚什么是错的,但即使这样也是失败的.export class SomeService { ... private _myValue: Boolean = false; get myValue(): Boolean {return this._myValue; } set myValue(helper: Boolean) {this._myValue = helper; }在我的单元测试中,我有:it('should ', inject([SomeService], (someService: SomeService) => { let oldValue...

javascript – 期望不要使用参数传递函数 – Jasmine【代码】

我有一个获得3个参数的函数.我想检查一下这个函数没有抛出错误.我做了这样的事情:expect(myFunc).not.toThrow();问题是myFunc需要得到参数.我该如何发送论据? P.S我试图传递它的参数,但我得到错误,myFunc(arg1,arg2,arg3)不是一个函数.解决方法:toThrow匹配器需要将函数作为参数传递给期望,这样您就可以简单地将函数调用包装在匿名函数中:expect(function() {myFunc(arg1, arg2, arg3); }).not.toThrow();您还可以使用bind创建函...

javascript – 使用Jasmine检查两个边界(在匹配器之间)【代码】

在茉莉花中,有很多人可以和很多人一起去比赛. 如果我想检查特定范围内的整数值怎么办?有什么比toBeInBetween matcher? 目前,我可以在两个单独的期望调用中解决它:var x = 3;expect(x).toBeGreaterThan(1); expect(x).toBeLessThan(10);解决方法:您可以运行布尔比较并断言结果为true:expect(x > 1 && x < 10).toBeTruthy();此外,还有由jasmine-matchers引入的BeWithinRange()自定义匹配器:expect(x).toBeWithinRange(2, 9); /...

javascript – 在jasmine上监视jQuery $(‘…’)选择器【代码】

当涉及监视jQuery函数(例如绑定,单击等)时,很容易:spyOn($.fn, "bind");问题是当你想监视$(‘…’)并返回已定义的元素数组时. 在SO上阅读其他相关答案后尝试了一些事情:spyOn($.fn, "init").andReturn(elements); // works, but breaks stuff that uses jQuery selectors in afterEach(), etc spyOn($.fn, "merge").andReturn(elements); // merge function doesn't seem to exist in jQuery 1.9.1 spyOn($.fn, "val").andReturn...

javascript – 使用特定的keyCode测试Jasmine中的keydown事件【代码】

我正在为AngularJS指令编写测试,该指令触发< textarea>的事件.当某些键被按下时.根据我的手动测试,一切正常.我想要做得很好,也有一个完整的单元测试套件,但是我遇到了一个我自己无法解决的问题: 我想在我的测试中的triggerHandler()调用中发送一个特定的keyCode,但我找不到一种方法来指定实际工作的密钥.我知道有关构建和发送具有特定数据的事件的主题的许多问题和答案,但它们都不适用于我的设置: 我的设置 > Karma试验跑步者> P...

javascript – Jasmine 2.0如何在运行期望之前等待实时【代码】

我正在尝试测试postMessage API,因为在收到消息之前有一点延迟我发送消息后无法立即运行期望. 在jasmine 1.3中我习惯等待()几毫秒才能运行期望,并且运行正常.然而,对于jasmine 2.0,wait()已被弃用,现在看来setTimeout中的所有内容都不会运行,除非调用done(),在我的情况下,女巫不会削减它,因为我实际上想要在运行我的期望之前等待实时.. 不确定这一切是否有意义,如果确实如此,我会喜欢关于如何解决这个问题的一些指示.谢谢!解决方法...

javascript – 如何在Jasmine JS中重用beforeEach / afterEach?【代码】

使用JasmineJS编写测试时,我有许多测试具有类似的beforeEach / afterEach代码. 有没有办法使用JasmineJS测试套件实现继承模型? 我可以在一个描述中对所有测试进行分组,但在这种情况下,我将以包含所有测试的单个HUGE JS文件结束. 我想分开每个页面的测试. 这是一个例子:describe('Services Page', function() {beforeEach(function() {login_as_admin()})beforeEach(function() {browser().navigateTo('/services')})if('Some tes...

javascript – jasmine没有从’src’目录加载js文件【代码】

我成功地构建了我的maven项目,该项目使用jasmine-maven-plugin将源代码和测试javascript文件放在正确的位置.当我有一个简单的测试,如:describe('true', function() {it('should be true', function() {expect(true).toBe(true);}) })整个事情没有任何问题,所有的茉莉花规格都通过了.但是当我尝试创建一个对象的实例时,我在其中一个包含target / jasmine / src文件夹的文件中列出了该实例,我得到一个“ReferenceError:”Stat“未定...

javascript – Jasmine如何知道它是否应该等待done()?【代码】

我一直在使用Jasmine测试和特别是异步测试一段时间,我无法弄清楚它是如何检测它是否应该等待,如果你在测试中使用done(),可能会超时.它工作得非常好,我真的很好奇他们是如何做到的. 我们来看看这个简单的测试.这两个显然有用(BTW,即使没有beforeEach()):it('Sample test', function () {expect(true).toBe(true); });it('Sample test with done', function (done) {expect(true).toBe(true);done(); });但是,如果我在第二次测试中没...

如何使用Jasmine 2.4.1(独立)设置基本的Javascript测试?【代码】

这是我第一次尝试编写测试.我使用bower在我的项目中安装了jasmine 2.4.1:bower install jasmine --save结果这就是我在libs文件夹中的内容我只是无法弄清楚下一步要做什么来设置specRunner.html.我在网上找到的所有教程都专注于以前版本的jasmine,它们似乎有specRunner.html文件和稍微不同的包结构.我在github上找到的安装说明已经过时,可追溯到2.0.0版本.在github page上找到有用的信息也没有运气 我接下来要做什么才能让最基本的...

javascript – Jasmine Spy根据参数返回不同的值【代码】

我正在监视一个JS方法.我想根据方法的实际参数返回不同的东西.我试过callFake并尝试使用参数[0]访问参数,但它说参数[0]未定义.这是代码 – spyOn(testService, 'testParam').and.callFake(function() {var rValue = {};if(arguments[0].indexOf("foo") !== -1){return rValue;}else{return {1};}}) 这里建议 – Any way to modify Jasmine spies based on arguments? 但它对我不起作用.

javascript – 函数中Restangular的jasmine测试用例【代码】

如何为Rectangular编写茉莉花测试,如下所示 脚本$scope.allEmployees = [{visible: true,empId: "EMP148"}];$scope.employeeDocuments = { "EMP148": [{"empId": "EMP148","department": "Sales","firstName": "Manu","lastName": "Mathew","place": "Kolkata"}]};var employeesCopy = angular.copy($scope.allEmployees); $scope.allEmployees.push({visible: true, empId: "EMP489"}); $scope.addEmployees = function (employ...

javascript – Grunt,Jasmine,Phantom,React单元测试:ReactElementValidator上的React抛出【代码】

我正在使用Grunt与Phantom一起运行Jasmine单元测试.Grunfile.js module.exports = function (grunt) {"use strict";grunt.loadNpmTasks('grunt-browserify');grunt.loadNpmTasks('grunt-karma');grunt.initConfig({pkg: grunt.file.readJSON('package.json'),browserify: {dev: {files: {'test-output.js':['src/methods.js']},options: {browserifyOptions: {debug: true}}}},karma:{unit:{configFile:"karma.conf.js"}}}); };使用...

javascript – 使用Jasmine测试该函数是在ES6构造函数中执行的【代码】

我在JSFiddle上创建了a simple example来测试我在项目中遇到的问题:describe('testing es6 and jasmine', function() {describe('let', () => {// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/letit('is es6 works', function() {class Test {constructor() {var x = this.sum(1, 1);}sum(a, b) {return a + b;}}var test = new Test();spyOn(test, 'sum').and.callThrough();expect(test.sum...

javascript – 如何使用Jasmine声明异常?【代码】

我正在尝试编写一个测试,以确保我正在执行的无效实例化会产生异常.测试如下:describe('Dialog Spec', function () { "use strict";it("should throw an exception if called without a container element", function () {expect(function() {new Dialog({});}).toThrow(new Exception("InvalidArgumentException", "Expected container element missing"));}); });Dialog()类:function Dialog(args) {if (undefined === args.con...

JAVASCRIPT - 技术教程分类
JavaScript 教程 JavaScript 简介 JavaScript 用法 JavaScript Chrome 中运行 JavaScript 输出 JavaScript 语法 JavaScript 语句 JavaScript 注释 JavaScript 变量 JavaScript 数据类型 JavaScript 对象 JavaScript 函数 JavaScript 作用域 JavaScript 事件 JavaScript 字符串 JavaScript 运算符 JavaScript 比较 JavaScript 条件语句 JavaScript switch 语句 JavaScript for 循环 JavaScript while 循环 JavaScript break 和 continue 语... JavaScript typeof JavaScript 类型转换 JavaScript 正则表达式 JavaScript 错误 JavaScript 调试 JavaScript 变量提升 JavaScript 严格模式 JavaScript 使用误区 JavaScript 表单 JavaScript 表单验证 JavaScript 验证 API JavaScript 保留关键字 JavaScript this JavaScript let 和 const JavaScript JSON JavaScript void JavaScript 异步编程 JavaScript Promise JavaScript 代码规范 JavaScript 函数定义 JavaScript 函数参数 JavaScript 函数调用 JavaScript 闭包 DOM 简介 DOM HTML DOM CSS DOM 事件 DOM EventListener DOM 元素 HTMLCollection 对象 NodeList 对象 JavaScript 对象 JavaScript prototype JavaScript Number 对象 JavaScript String JavaScript Date(日期) JavaScript Array(数组) JavaScript Boolean(布尔) JavaScript Math(算数) JavaScript RegExp 对象 JavaScript Window JavaScript Window Location JavaScript Navigator JavaScript 弹窗 JavaScript 计时事件 JavaScript Cookie JavaScript 库 JavaScript 实例 JavaScript 对象实例 JavaScript 浏览器对象实例 JavaScript HTML DOM 实例 JavaScript 总结 JavaScript 对象 HTML DOM 对象 JavaScript 异步编程 javascript 全部