草庐IT

Controller测试

全部标签

javascript - 如何对 Angular Directive(指令)进行单元测试

对AngularDirective(指令)进行单元测试并不是很难,但我发现有不同的方法可以做到。为了这篇文章的目的,让我们假设以下指令angular.module('myApp').directive('barFoo',function(){return{restrict:'E',scope:true,template:'BarFoo',controller:function($element,$scope){this.toggle(){this.active=!this.active;}}};});现在我可以想到两种方法对此进行单元测试方法一:describe('Directive:

javascript - 如何使用 Jest 测试 void javascript 函数?

如何使用jest框架测试voidjavascript函数(一个不返回任何内容的函数)?您能否提供相同的示例?/***thisfunctionisusedtotoggletheinputtypepasswordfield*@paramelement{DOMElement}-fieldtobetoggled*/exportconsttogglePassword=(element)=>{consttype=element.getAttribute('type');if(type==='text'){element.setAttribute('type','password');}else{e

javascript - 使用本地存储和 Google Analytics 进行 AB 测试

我正在我的电子商务网站上运行全站AB测试。访客登陆后,我会为他们分配一个本地存储键/值:functionisLocalStorageNameSupported(){vartestKey='test',storage=window.localStorage;try{storage.setItem(testKey,'1');storage.removeItem(testKey);returntrue;}catch(error){returnfalse;}}$(function(){if(isLocalStorageNameSupported()){varversion=Cookies.ge

javascript - Rails Controller 不接受 JSON?

我正在尝试通过JSON请求创建一个ActiveRecord对象。但是,Controller无法在新创建的对象中设置参数中传递的变量。例如,一个人对象有两个字段:名字和姓氏。由JSON.org库的JSON.stringify函数生成的JSON产生:{"firstname":"Joe","lastname":"Bloggs"}但是Controller希望JSON的格式为:{"Person":{"firstname":"Joe","lastname":"Bloggs"}}我知道在事件的正常过程中(对于HTTP请求)请求的参数嵌套在模型的类名下正在创建。Controller中的创建Action

javascript - Rails 在 restful/resourceful Controller 中的 javascript 模板的最佳实践是什么?

首先,2种常见(基本)方法:#returningfromsomeFoosControllermethodrespond_todo|format|#1.rendertheoutajsonrepresentationformat.json{render:json=>@foo}#2.renderanRJStemplate,sayupdate.js.erbformat.js{render}end#inupdate.js.erb$('#foo').html("")这些显然是简单的案例,但我想说明我在说什么。我相信这些也是rails3中默认响应程序所期望的情况(以操作命名的默认模板或在资源上调用t

javascript 测试函数

这个问题在这里已经有了答案:关闭11年前。PossibleDuplicate:QuestiononthisJavaScriptSyntax(“WhatDoesThisDo?”)在this我发现这篇文章:/xyz/.test(function(){xyz;})我看了这个,但我不知道xyz是如何传递给调用者的。所以我在控制台做了一些类似的测试:/xyz/.test(function(){xya;})>false/xyz/.test(function(){xyz;})>true/xyz/.test(function(){'xya';})>false/xyz/.test(function(){

V8 上的 JavaScript 测试

functionadd(x,y){returnx+y;}console.time("time1");for(vari=0;i结果是:时间1:1481毫秒,time2:102ms,我在nodejs上运行这个测试,但我不知道为什么第一个测试比第二个慢。 最佳答案 这是因为参数类型更改导致引擎盖下发生了去优化。要知道这一点,我们必须知道优化V8做了什么:内联这是一项重要的优化,对于性能提升至关重要。它用函数体代替函数调用以加速执行。如果一个函数的大小很小,它将被内联。这假设在函数调用中,参数是固定的。去优化V8在某些假设下进行优化。如果错

javascript - 如何在 Jasmine/Angularjs 中对下拉列表进行单元测试

我正在尝试对一个指令进行单元测试,该指令使用一些JSON来创建下拉列表以指定列表的详细信息。该指令工作正常,但我在尝试对其进行单元测试时遇到问题。这是测试:/*globalinject,expect,angular*/define(function(require){'usestrict';require('angular');require('angularMock');require('reporting/js/directives/app.directives');require('reporting/js/directives/drop.down.field.directive

javascript - 在没有服务的情况下从 ng-include 继承外部 Controller 的范围?

在AngularJS中,是否可以从包含的部分中继承父Controller的范围,而不是通过注入(inject)的服务传递数据?案例:假设ParentCtrl的范围如下:{testData:'testingstuff'}Herewe'redefined:{{testData}}在partial.html中:Inherited:{{testData}}所以局部甚至不需要它自己的Controller。如果这是不可能的,并且您只能通过服务在Controller之间传递注入(inject)的数据,为什么Angular会这样做? 最佳答案 是的

javascript - 使用 AVA 和 Avoriaz 在 Vue.js 中测试计算属性

我正在尝试使用AVA和Avoriaz测试Vue.js组件的计算属性。我可以挂载组件并正常访问数据属性。当我尝试访问计算属性时,该函数似乎没有该组件上数据的作用域。computed:{canAdd(){returnthis.crew.firstName!==''&&this.crew.lastName!=='';}我得到的错误是Error:Cannotreadproperty'firstName'ofundefined测试文件:importVuefrom'vue';import{mount}from'avoriaz';importtestfrom'ava';importnextTickf