草庐IT

App测试

全部标签

javascript - 使用 $routeParams 资源对 AngularJS Controller 进行单元测试

注意:我正在用CoffeeScript编写所有内容我有一个Controller如下:angular.module('myApp').controller'MyController',($scope,$routeParams,Batch)->$scope.$on'$routeChangeSuccess',()->Batch.get{batchUuid:$routeParams.batchUuid},(response)->$scope.batch_id=response.idcontroller拉取Batch资源,定义如下:angular.module('myApp').factory'

javascript - 如何测试一个函数在另一个函数之前被调用

我有一些紧密耦合的遗留代码,我想用测试覆盖它们。有时确保一个模拟出的方法在另一个方法之前被调用很重要。一个简化的例子:functionPageManager(page){this.page=page;}PageManager.prototype.openSettings=function(){this.page.open();this.page.setTitle("Settings");};在测试中,我可以检查是否调用了open()和setTitle():describe("PageManager.openSettings()",function(){beforeEach(functi

javascript - 使用 mocha,我如何运行名​​称中*没有* (slow) 的所有测试?

我有很多测试,其中一些名称中有“(慢)”:其中一些比标记为(慢)的测试慢,但其他测试依赖于它们,因此不能跳过。我只想跳过名称中带有(慢)的那些——这可能吗?我正在使用Mocha。 最佳答案 在我看来,您正在为要在浏览器中加载以运行Mocha的页面执行此操作。要在浏览器中执行此操作,您可以在页面的URL中传递这些参数:grep大致对应于命令行上的--grep选项。这将运行的测试范围缩小到与传递给grep的表达式相匹配的测试。但是,目前(甚至从2.0.1开始)没有办法让Mocha将此参数解释为正则表达式。它总是被解释为一个字符串。这就是

javascript - Mocha 测试 : Uncaught TypeError: Cannot read property 'status' of null

学习TDD和我对“HelloWorld”服务器响应的第一个简单测试在Mocha中失败了。我正在使用Mocha.js、Superagent和Expect.js。当我curl-ilocalhost:8080时,我得到了正确的响应和状态代码。HTTP/1.1200OKContent-Type:text/plainDate:Mon,27Apr201517:55:36GMTConnection:keep-aliveTransfer-Encoding:chunkedHelloWorld测试代码:varrequest=require('superagent');varexpect=require('

Javascript 测试 : Selenium cookies data url

只要需要Javascript,我就有一个运行Selenium的Behat测试。如果使用Javascript(因此Selenium被禁用),我当前的Behat测试工作正常。目前,我从Selenium得到的唯一错误反馈是以下语句:unknown:Failedtosetthe'cookie'propertyon'Document':Cookiesaredisabledinside'data:'URLs.(Sessioninfo:chrome=48.0.2564.109)(Driverinfo:chromedriver=2.20.353124(035346203162d32c80f1dce58

javascript - Angular 单元测试 : Error: Cannot match any routes. URL 段: 'home/advisor'

我正在我的angular4.0.0应用程序下进行单元测试,我的真实组件中的一些方法正在通过以下方式调用手动路由:method(){....this.navigateTo('/home/advisor');....}withnavigateTo是一个自定义路由方法,调用它:publicnavigateTo(url:string){this.oldUrl=this.router.url;this.router.navigate([url],{skipLocationChange:true});}我有这个路由文件:import...//Componentsanddependenciescon

javascript - 如何使用 sinon.js 对回调函数的内容进行单元测试

如何使用sinon.js模拟框架在回调函数中测试代码?JSFiddle:http://jsfiddle.net/ruslans/CE5e2/varservice=function(){return{getData:function(callback){returncallback([1,2,3,4,5]);}}};varmodel=function(svc){return{data:[],init:function(){varself=this;svc.getData(function(serviceData){self.data=serviceData;//***testthisli

【uni-app】点击左上角返回按钮,弹出弹窗或者是携带参数返回上一页

目录1、弹出弹窗2、把这一页的数据带回到上一页(获取下一页的数据)3、跳转页面并携带参数,接受页获取参数1、弹出弹窗当我返回上一页的时候需要做一个判断是否需要保存onBackPress只支持APP和H5但不支持小程序,可以用onUnload生命周期解决,页面销毁的时候执行方法。注意:onBackPress和methods、onLoad同级data(){ return{ flag:true//是否弹出返回提示框 }},onBackPress(){ if(this.flag){ uni.showModal({ title:"确定退出编辑?", content:"退出后内

javascript - Express Middleware 为所有 app.get() 填充一个 Jade 变量

我有一个名为layout.jade的Jade文件,我的所有模板都对其进行了扩展。如果用户当前已登录(这在req.session中保持跟踪),我希望能够在其中有一个注销按钮。所以layout.jade会有类似的东西,-if(loggedin)a.navButton(href="/logout")LogOut页面的路由看起来像,app.get("/foo",function(req,res){res.render("foo",{loggedin:req.session.isValidUser});});问题是,我不想在每条路由中都手动填充loggedin变量。有没有一种方法可以使用Expr

javascript - 如果测试失败,如何使 Mocha 在源文件中显示正确的行号?

我正在使用Mocha进行我的NodeJS测试,当测试由于我的源代码抛出错误而失败时(例如“TypeError:Cannotreadproperty'prop'ofnull”),显示的堆栈跟踪中的行号是错误的(它们与原始源文件不匹配,但要大得多)。1)MyAppshoulddosomething:TypeError:Cannotreadproperty'prop'ofnullatMyApp.(/path/to/my-project/lib/my-project.js:515:93)atMyApp.build(/path/to/my-project/lib/my-project.js:77