【JavaScript-使用Mocha和Chai测试抓取】教程文章相关的互联网学习教程文章

javascript – 区分DOM – 如何编写单元测试,检查脚本是否对页面上的元素进行任何用户可见的更改?

我最近写的一个JavaScript插件有内置的各种故障,它告诉整个插件或其中的一部分隐藏自己并在无法运行的情况下死掉.例如,假设我们提供的一项功能是自动生成一个弹出窗口,当用户在一个在线商店中悬停它时,该弹出窗口显示竞争对手的物品价格.然后我们还会有一些检查说,如果我们不知道任何竞争对手的价格,或者我们无法识别该项目,那么就不要显示弹出窗口. 我想使用大致遵循此结构的测试来测试该功能 – 禁用: >将我们的插件加载到应该禁...

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 – Twilio测试SMS不会导致StatusCallback【代码】

我注意到,当我使用Twilio API发送测试SMS时,一切都按照documentation中的描述工作,但系统不会调用StatusCallback.相同的设置与真实凭据一起工作正常,我得到了回调.这是预期的行为吗? 这就是我发送短信的方式:/* Test credentials */ var account_sid = "<<test acc>>"; var auth_token = "<<test auth>>"; var fromNumber = "+15005550006"; // test numbervar fromNumberEnc = encodeURIComponent(fromNumber); var t...

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 – 在RxJs中使用TestScheduler测试主题【代码】

我正在使用RxJ来计算在特定时间窗口内到达的数据包数量.我的代码基本上是这样的:var packetSubject = new Rx.Subject(); var packetsInWindow = [];function startMonitoring() {var subscription = packetSubject.windowWithTime(1000).select(function(window) {window.toArray().subscribe(function(elements) {packetsInWindow.push(elements.length);});}).subscribe(); }function newPacket(packet) {packetSubject.onNext(...

JavaScript事件处理程序是否应进行单元测试【代码】

这里有很多关于其他语言的单元测试事件处理程序的问题,但是在JavaScript方面我找不到一个好的答案.具体来说,我说的是一个案例:// inside a "view" class definition: handleCheckboxClick: function() {this.relevantData.toggleSomeValue();return false; }// later on: $('#someCheckbox').on('click', view.handleCheckboxClick);显然,事件处理程序中存在逻辑(this.relevantData.toggleSomeValue()),但同时没有其他方法会调用此...

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 – 在吞咽测试后关闭浏览器的Karma【代码】

我正在使用谷歌中的Chrome和Firefox发射器进行基本的茉莉花测试.但我的浏览器之后总是被关闭.无论测试成功与否,即使在任务和配置中指定单次运行为false之后也是如此. Gulp任务:karma = require('gulp-karma');gulp.task('test', ['testsSetup'], function() {// Be sure to return the stream// NOTE: Using the fake './foobar' so as to run the files// listed in karma.conf.js INSTEAD of what was passed to// gulp.src !re...

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 – 在AngularJS中,为什么将表示逻辑(如jQuery)放入控制器会对可测试性产生负面影响?

我是Angular的新手,也是“测试”思维模式的编码.我理解将表示逻辑放入控制器并不是“Angular Way”,但不明白为什么它会对可测试性产生负面影响.解决方法:因为它依赖于有一个DOM来测试.您应该能够在不需要创建DOM的情况下测试控制器逻辑,因为您应该只是模拟依赖项,然后在构造的视图模型中测试数据. 除了测试之外,控制器在生活中的工作是编组数据,他们不了解视图,他们所知道的只是一个视图模型,他们应该只调用后端服务,然后将这些数据...

javascript – 模拟点击material-ui切换组件测试【代码】

所以我试图使用jest和酶测试一些基于material-ui toggle组件的功能. 我有一个通用的clickIt函数,适用于其他材料-ui组件,但在这一个它似乎没有触发状态更改function clickIt(wrapper, selector) {let elem = wrapper;if (selector) {elem = wrapper.find(selector);}const node = ReactDOM.findDOMNode(elem.node);TestUtils.Simulate.touchTap(node); }在测试中:const toggle = wrapper.find('#subscribe-toggle');expect(toggle....

javascript – 如何在redux操作(或操作中分配的其他回调)的上下文中使用jest测试`image.onload`【代码】

我的问题是我正在尝试对函数进行单元测试,但无法弄清楚如何测试它的一部分. 这是一个react / redux动作,它执行以下操作: 1)使用图像URL检索json数据 2)将图像加载到Image实例并将其大小调度到reducer(使用Image.onload加载图像时异步) 3)将完成提取的调度发送给reducer 图像onload是异步发生的,所以当我尝试对它进行单元测试时,就不会调用它.而且,我不能只是嘲笑事物,因为图像实例是在函数内创建的…… 这是我想要测试的代码(删除...

javascript – 如何修复TypeError不是一个函数(使用Jest测试promise)【代码】

由于答案在这里,我现在通过测试:How to test is chained promises in a jest test? 但是我在测试的catch部分仍然出错. 我好像无法在动作文件中正确地模拟或侦察这部分:.then(res => res.getIdToken())TEST signIn ERROR => TypeError: res.getIdToken is not a function考试jest.mock('services/firebase', () => new Promise(resolve => resolve({signInWithEmailAndPassword: () => Promise.resolve({ getIdToken: 'abc123' })...

在C#中生成JavaScript并进行后续测试【代码】

我们目前正在开发一个ASP.NET MVC应用程序,该应用程序大量使用基于属性的元数据来驱动JavaScript的生成. 下面是我们正在编写的方法类型的示例:function string GetJavascript<T>(string javascriptPresentationFunctionName,string inputId,T model) {return @"function updateFormInputs(value){$('#" + inputId + @"_SelectedItemState').val(value);$('#" + inputId + @"_Presentation').val(value);}function clearInputs(){"...

javascript – 在iOS模拟器上测试Web应用程序

我正在尝试优化我的iPad网站.能指导一下最好的方法吗? >关于我是否应该仅通过CSS分离桌面/ ipad或重定向到完全不同的域(例如mysite.com/ipad)>我如何在iPad模拟器上进行测试?我应该使用XCode进行开发吗? 请帮我一些好的在线教程.谢谢.解决方法:最好使用单独的css文件或只是制作完整的液体布局, 就测试而言,您可以下载带有xcode的ipad开发套件供模拟器使用

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