我最近遇到过不同的教程,人们使用它们mock和mock_model功能.
在控制器的RSpec教程中,他们使用该mock_model函数,但在RSpec的文档中,只有mock函数,但没有mock_model
我试着自己运行一些测试,但我没有发现任何真正的区别,因为当我使用这两个函数中的任何一个时一切正常,所以有什么不同吗?
我有一个多步骤流程,用户可以顺序完成或直接跳转到某个部分(如果两者之间的部分已完成).我认为这个逻辑应该在Route对象中.但是,从控制器内部,我如何访问路由实例.例如,能够在控制器中执行类似的操作是理想的:
App.Flow = Em.ObjectController.extend({
submit: function(){
// Validation and XHR requests
// ...
// Go to the next step
route.goToNextStep();
}
}
Run Code Online (Sandbox Code Playgroud) 简单来说有人能解释如何减少功能与它的参数reduceAdd,reduceSum,reduceRemove工程crossfilter?
我正在尝试制作一个小应用程序来了解Backbone如何工作.我从名为Todo的来源获取了示例应用程序.我使用Todo应用程序的片段从头开始创建我的应用程序.我认为这些应用程序看起来非常相似,但由于某些原因,我无法在示例应用程序中使用一些正常工作的东西.我收到一个错误:
A 'url' property or function must be specified
Run Code Online (Sandbox Code Playgroud)
另一个问题是我无法从示例工作中创建此代码:
this.model.bind('change', this.render);
Run Code Online (Sandbox Code Playgroud)
它说没有绑定这样的功能.我检查了所有的库版本和代码,无法实现我的错误.我该怎么办?
我在测试中有一个非常简单的行,它调用这样的执行脚本:
puts page.execute_script("return somefunction();").to_i.inspect
Run Code Online (Sandbox Code Playgroud)
在javascript中我有一个这样的函数:
function somefunction(){
console.log("test");
return 999;
}
Run Code Online (Sandbox Code Playgroud)
来自控制台日志的"测试"正在注销,因此它正在运行...
在运行测试时查看日志,execute_script返回0而不是999,所以在rspec中我无法获取函数的返回值,如何使page.execute_script从该函数返回该值?
integration-testing rspec ruby-on-rails capybara poltergeist
如Python所示,sys.stdout.write()Ruby中的等价物是什么?
我正在测试一个将日期作为可选参数的函数.我想声明如果在没有参数的情况下调用函数,则会创建一个新的Date对象.
var foo = function (date) {
var d = date || new Date();
return d.toISOString();
}
Run Code Online (Sandbox Code Playgroud)
我如何断言new Date被称为?
到目前为止,我有这样的事情:
it('formats today like ISO-8601', function () {
spyOn(Date, 'prototype');
expect().toHaveBeenCalled();
});
Run Code Online (Sandbox Code Playgroud)
想象一下以下场景:我打开一个CURL连接并通过POST传递一些XML-Logindata.服务器使用302重定向进行应答,其中会话cookie已设置并将我重定向到以下"欢迎"页面.如果我启用FOLLOWLOCATION,重定向页面上设置的cookie将丢失,欢迎页面将失败并显示"会话已过期"消息.如果我禁用FOLLOWLOCATION,我不会被重定向(显然)并获得一个HTML页面,其中"页面已移动到另一个位置",其中的链接将引导我访问欢迎页面.这可以在设置cookie时起作用,但我需要按照重定向直接进入欢迎页面.
那么,如何保持cookie以便正确设置?
到目前为止这是我的代码:
$ch = curl_init('https://www.example.com/login');
curl_setopt($ch, CURLOPT_AUTOREFERER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_POSTFIELDS, '<some xml data>');
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt');
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: text/xml; charset=UTF-8"));
curl_exec($ch);
curl_close($ch)
Run Code Online (Sandbox Code Playgroud)
谢谢你的帮助!;
我正在使用Jasmine BDD Javascript库并且非常享受它.我有测试代码,我想重用(例如,测试基类的多个实现或在稍微不同的上下文中运行相同的测试),我不知道如何使用Jasmine.我知道我可以将代码从jasmine函数移到可重用的类中,但我喜欢代码读取散布Jasmine函数的方式(描述,它),我不想将规范与测试代码分开,除非我不得不.有没有人使用Jasmine遇到这个问题,你是如何处理它的?
javascript ×4
jasmine ×2
rspec ×2
ruby ×2
backbone.js ×1
bdd ×1
capybara ×1
cookies ×1
crossfilter ×1
curl ×1
ember.js ×1
html ×1
jquery ×1
mocking ×1
php ×1
poltergeist ×1
python ×1
redirect ×1
stdout ×1
testing ×1
versioning ×1