MAIBILAI

javascript - BlanketJS + Jasmine 2.0 不工作

我一直在使用Jasmine2.0.0进行测试,它没有任何问题。但是当我将BlanketJS附加到我的代码时出现了问题。我使用了与Jasmine1.3.1配合使用的specRunner(https://github.com/alex-seville/blanket/blob/master/test/jasmine-requirejs/runner.html)。但是当我用Jasmine2.0.0替换Jasmine1.3.1时它不起作用,这是来自BlanketJS存储库的原始代码:<html><head><title>JasmineSpecRunner&l

javascript - 没有将 "exportAs"设置为 "ngForm"的指令

当我尝试测试LoginComponent时出现以下错误PhantomJS2.1.1(Linux0.0.0):Executed3of55(1FAILED)(0secs/0.307secs)PhantomJS2.1.1(Linux0.0.0)LoginComponentshouldcreateFAILEDFailed:Uncaught(inpromise):Error:Templateparseerrors:Thereisnodirectivewith"exportAs"setto"ngForm"("ivclass="col-md-4col-

javascript - 如何使用 jasmine.js 测试控制台输出?

我正在阅读文本:面向Web开发人员的专业JavaScript,作者:NicholasZakas我正在使用Jasmine.js测试示例。我目前可以通过指定返回值来测试函数的输出,但是当我想要返回多条数据时,我遇到了麻烦。课本上用的是alert()方法,但是比较麻烦,不知道怎么测试alert。我想知道是否有一种方法可以测试console.log()输出。例如:function_to_test=function(){varperson=newObject();person.name="Nicholas";person.age=29;return(person.name);//

javascript - Jasmine 监视嵌套对象

我的服务对象是这样的:varappService={serviceOne:{get:function(){}},serviceTwo:{query:function(){}}}我想模拟appService,像这样:expect(appService.serviceTwo.query).toHaveBeenCalled();我该怎么做? 最佳答案 好的,我得到了这个工作:appService:{serviceOne:jasmine.createSpyObj('serviceOne',['get']),s

javascript - 你如何使用 Jasmine BDD 卡住/伪造时间

我的代码中有这样一行newDate().getFullYear();我需要它总是在同一年返回。有什么办法可以用Jasmine做到这一点吗?谢谢。 最佳答案 在JavaScript中,您可以简单地覆盖测试设置中的函数:Date.prototype.getFullYear=function(){return2012}你也可以使用jasminespy:spyOn(Date,'getFullYear').andReturn(2012)另一种方法是将日期插入到您要测试的函数中。顺便说一句。编写可测试代码的最佳方式。不要在你的函

javascript - 使用 Jasmine 监视 Backbone.js 路由调用

在Backbone路由器上监听方法调用时遇到问题,以确保它在给定路由上调用正确的方法。测试摘录describe'Router',->beforeEach->@router=newApp.Router()Backbone.history.start()afterEach->Backbone.history.stop()describe'routes',->it'shouldbedefined',->expect(@router.routes).toBeDefined()describe'defaultr

javascript - 如何使用 Protractor/Selenium 设置可用于我的测试套件的常用函数?

我正在研究AngularJSProtractor测试套件。我有一个如下所示的conf文件:exports.config={seleniumAddress:'http://localhost:4444/wd/hub',baseUrl:'http://127.0.0.1:17315/',capabilities:{browserName:'chrome','chromeOptions':{args:['--test-type']}},suites:{login:['LoginPage/login.js&

javascript - Jasmine 中的错误预期

我有以下有效的功能functionsum(){vartotal=0,num=0,numArgs=arguments.length;if(numArgs===0){thrownewError("ArgumentsExpected");}for(varc=0;c<numArgs;c+=1){num=arguments[c];if(typeof(num)!=="number"){thrownewError("Onlynumberareallowedbutfound",typeof(num));}total+=num;}returntota

javascript - 使用 Protractor 验证文本部分

我想验证某个文本是否存在于字符串中(使用Protractor)。在我的例子中,以下代码:element(by.css('h1.text-center')).getText();将导致:ArrowGreySlimFitFormalTrouser-1(Size-X)现在,我想验证字符串ArrowGreySlimFitFormalTrouser是否包含在上面的文本中。请推荐! 最佳答案 使用jasmine有多种方法可以进行部分字符串匹配:expect(text).toContain("ArrowGreySlimFi

javascript - 检测 Jasmine 测试何时完成

我正在运行jasmine像这样测试;jasmine.getEnv().addReporter(newjasmine.TrivialReporter());jasmine.getEnv().execute();我想使用JavaScript检测测试何时完成。我该怎么办? 最佳答案 作为@Xv。建议,添加一个记者将工作。你可以做一些简单的事情:jasmine.getEnv().addReporter({jasmineDone:function(){//thespecshavefinished!}});参见http://jasmine.gi