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

javascript – 测试适用于jasmine-node,但不适用于jasmine【代码】

我有一个订阅了未被捕获的错误事件的对象,我正在尝试测试它的行为.首先我尝试使用jasmine-node,但现在当我尝试使用茉莉花时,我发现了麻烦.任何人都可以帮助我.describe('Constructor tests', function () {it('error is passed to the callback', function (done) {const error = new Error("testError-0");let errorHandler = new AllErrorHandler((arg1) => {expect(arg1).toBe(error);errorHandler.dispose();done();});setTime...

如何在Jasmine / Maven自动生成的ManualSpecRunner.html中配置我的javascript文件的路径?【代码】

我认为这个问题大部分都是如此.我有一个由maven / jasmine插件创建的自动生成的ManualSpecRunner.html文件,我已经通过使用它将自己置于可部署的.war中:<jasmineTargetDir>${basedir}/pathForMyWebapp</jasmineTargetDir>但是,ManualSpecRunner.html中js文件的所有链接都是硬编码文件:///引用 – 这有点精神,我希望它们只是webapp中文件的相对路径,即 目前它给了我这条道路:file:///home/username/code/HEAD/pathForMyWebapp/js/...

javascript – 使用Jasmine测试requireJS方法异步【代码】

我正在尝试使用jasmine和requirejs测试需要模块的函数.这是一个虚拟代码:define("testModule", function() {return 123; }); var test = function() {require(['testModule'], function(testModule) {return testModule + 1;}); } describe("Async requirejs test", function() {it("should works", function() {expect(test()).toBe(124);}); });它失败了,因为它是一个异步方法.我该如何用它进行测试? 注意:我不想更改我的代码...

javascript – Jasmine测试模拟选项卡keydown并检测新聚焦的元素【代码】

我有一个茉莉花测试,我有2个输入字段.我专注于第一个输入,然后在’tab’键上模拟keydown,并期望焦点在第二个输入上.不幸的是,这种情况并非如此.焦点不会从第一次改变,我的测试失败.如何解决这个失败的测试? 我试图测试的小提琴:http://jsfiddle.net/G2Qz3/1/ 失败的茉莉花测试的小提琴:http://jsfiddle.net/mFUhK/4/ HTML:<input id="first"></input> <input id="second"></input>JavaScript的:function simulateTab() {var T...

javascript – 在Angular应用程序中使用Jasmine测试SignalR的问题【代码】

我这里有一个严肃的问题.我的应用程序依赖于SignalR功能,但由于这一点,我无法编写单元测试.我是测试框架的新手,仅在简单的情况下使用Jasmine.事实证明SignalR对我来说是一个太大的挑战,但我需要了解如何成功测试它.这是我的CommsApp.ts文件[typescript]:/// <reference path="References.ts" /> var commsAnimationsModule = angular.module('forge.communications.animations', ['ngAnimate']); var commsDirectivesModule = ang...

javascript – Jasmine测试对象的Ajax方法spy调用状态【代码】

我正在对Angular控制器进行单元测试,该控制器使用Rails Resource工厂来处理来自Rails应用程序的GETing和POSTing模型数据. POST通过模型上的方法完成,例如(使用模型$scope.resource):$scope.resource.update().then(successHandler, failureHandler);我有一个间谍在这个方法来存根Ajax调用,所以我可以单元测试控制器:resUpdateSpy = spyOn($scope.resource, 'update').and.callFake(function() { return {then: function(success,...

javascript – ReferenceError:模块未在jasmine中定义【代码】

当我运行SpecRunner.html时,我收到以下错误ReferenceError: module is not defined我的控制器是angular.module('mymodule', []).controller('mycontroller', ['$scope',function($scope) {$scope.employees = [{name: 'Dick',address: 'Mumbai'}, {name: 'Tom',address: 'US'}];$scope.addEmployee = function() {$scope.employees.push({name: $scope.name,address: $scope.address});}}]) 我的规格是describe('Employee', functi...

javascript – 测试Jasmine测试是否失败【代码】

我正在尝试为Jasmine编写一个插件,允许您从规范中返回一个承诺,并根据承诺是否已履行或拒绝而通过或失败该规范. 当然,我想编写测试以确保我的插件正常工作,并且要彻底,我需要确保在拒绝承诺时测试失败…所以当我需要时如何进行测试通过确保测试“成功失败”?解决方法:在与使用Jasmine的开发人员交谈后,我们想出了这个:var FAILED = 'failed' var PASSED = 'passed'describe('My Test Suite', function () {var envbeforeEach(fun...

javascript – 使用expect(),jasmine有软断言吗?【代码】

在我的测试中,有很多期待.但其中一些可能不够严重,不能停止测试.我可以暂时忽略错误并在测试结束时抛出它们吗?解决方法:茉莉花的期望在默认情况下有点“软”.从某种意义上说,测试在失败后继续执行. 换句话说,如果您有以下代码:expect(true).toBe(false); expect(false).toBe(true);你会得到一个测试失败的2个未满足的期望. 一个常见的问题与你所要求的完全相反 – 如何关闭行为以便茉莉花在第一次预期失败后失败 – 这现在由stop...

javascript – 使用Velocity和Jasmine测试Meteor时需要超时【代码】

对流星,速度和茉莉很新,所以不确定我是否做错了什么,使用Jasmine作为它不适合的东西,或者这只是它的工作方式. 我发现我需要为我的所有测试设置超时,以便让它们通过.应该是这种情况还是我做错了什么? 例如,我正在运行的一些测试来检查验证消息:describe("add quote validation", function() {beforeEach(function (done) {Router.go('addQuote');Tracker.afterFlush(function(){done();});});beforeEach(waitForRouter);it("shoul...

javascript – Jasmine:返回promise的测试是一个具体的例外【代码】

我在node.js服务器中有一个方法,它返回一个Promise – 抛出一个自定义异常(UserNotAuthenticatedError) – 我想编写一个测试来确保在必要时抛出此异常. 方法如下:export function changePassword(userId, oldPass, newPass) {var query = User.findById(userId);return query.exec().then(user => {if (user.authenticate(oldPass)) {user.password = newPass;return user.save();} else {// I want to test that this Exception...

javascript – 使用Jasmine或任何其他替代方案在Node上运行测试.mjs / ESM【代码】

由于–experimental-modules CLI开关(即节点–experimental-modules),我的基于节点的项目是使用节点上的本机ES模块支持实现的. 显然,当我使用Jasmine节点–experimental-modules ./node_modules/jasmine/bin/jasmine运行规范时,我收到以下错误:Error [ERR_REQUIRE_ESM]: Must use import to load ES Module在Node中使用ES模块是否可以使用Jasmine? 如果没有,是否有任何替代方法不使用框架(例如,使用npm脚本运行测试)?解决方法:这...

javascript – 使用Jasmine在Angular Controller中测试非范围函数【代码】

Jasmine是以BDD方式对javascript代码进行单元测试的最广泛使用的测试框架之一.我试图将它用于AngularJS组件测试. AngularJS文档提供以下示例代码describe('PasswordController', function() {beforeEach(module('app'));var $controller;beforeEach(inject(function(_$controller_){$controller = _$controller_;}));describe('$scope.grade', function() {it('sets the strength to "strong" if the password length is >8 chars'...

javascript – 试图在Array.prototype方法上窥探(Jasmine)会导致堆栈溢出【代码】

这很奇怪.使用带有jasmine2的testem runner和以下规范执行(虽然它正确地标记了没有期望):describe('Spying on array.prototype methods', function(){it('should work this way', function(){spyOn( Array.prototype, 'push' ).and.callThrough();// expect(1).toBe(1);}); });但是,添加一个expect(任何期望!)并且它会导致堆栈溢出,并在testem控制台中显示以下消息:RangeError:超出最大调用堆栈大小.在http:// localhost:735...

javascript – Karma / Jasmine测试自定义指令控制器【代码】

我正在尝试使用Karma Jasmine测试AngularJS自定义指令.我找到了一种方法来检查网络上的许多参考文献.但解决方案似乎不是正确的方法.我们先来看一个例子,这是test.js:angular.module("app", []).directive("test", function() {return {restrict: 'E',scope: {defined: '='},templateFile: "test.html",controller: function($scope) {$scope.isDefined = function() {return $scope.defined;};}};});describe("Test directive", f...

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 全部