小编Bra*_*and的帖子

在何处/如何为capybara集成测试包含辅助方法

我使用capybara进行集成/验收测试.它们在/spec/requests/文件夹中.现在我在验收测试中使用了一些帮助方法.一个例子是register_user这样的

def register_user(user)
  visit home_page
  fill_in 'user_name', :with => user.username
  fill_in 'password', :with => user.password
  click_button 'sign_up_button'
end
Run Code Online (Sandbox Code Playgroud)

我想在几种不同的验收测试中使用这种方法(它们在不同的文件中).包含这个的最佳方法是什么?我试过把它放进去,spec/support/但它并没有为我工作.花了一些时间后,我意识到我甚至不知道这是否是一个好方法,所以我想我会在这里问.

注意:我使用的是rails 3,spork和rspec.

ruby rspec ruby-on-rails capybara

27
推荐指数
2
解决办法
1万
查看次数

vim nerdtree文件显示*附加

可能重复:
gVim会在右侧显示每个带星号的文件(和粗体)?

我正在使用带有nerdtree插件的vim进行我的rails项目,并且一些文件显示*附加到文件名.它们也是与其他文件不同的颜色.

edit.html.erb*
index.html.erb
show.html.erb*
Run Code Online (Sandbox Code Playgroud)

什么*意思?

vim ruby-on-rails nerdtree

9
推荐指数
2
解决办法
2387
查看次数

id列的默认索引?

我正在Heroku上创建一个rails 3应用程序,它使用postgres作为数据库.在我的rails迁移中,我在所有ID列上添加了索引.这是一个错误吗?我开始怀疑postgres是否在ID列上默认有索引.

如果这是一个错误,我该如何解决?如果我只是编写一个rails迁移来删除ID列中的索引将修复所有内容?

postgresql heroku ruby-on-rails-3

7
推荐指数
1
解决办法
3536
查看次数

使用asp.net MVC 3学习TDD的资源

是否可以在asp.net MVC 3上进行TDD?如果是这样,有什么好的在线资源?据我所知,MVC 3是最新版本.但是我谷歌的大多数tdd文章都是针对MVC 1.即使是我在MVC中找到的TDDing中仅有的两本书都是1.0

Asp.net MVC测试驱动开发

试驾asp.net MVC

即使在微软官方网站上,MVC TDD演练的文章也适用于MVC 2.0.

它开始让我觉得TDD在asp.net MVC上是不实用的,或者它没有得到很大的支持.

asp.net tdd asp.net-mvc

7
推荐指数
1
解决办法
2629
查看次数

virtualbox + vagrant和VMWare融合之间的区别

我已经运行VMWare融合了一段时间,并用它来创建我的ubuntu rails dev环境和Web服务器的新实例.

我正在尝试过渡到使用virtualbox和vagrant.

根据我的理解,virtualbox运行VM并且vagrant管理实例.在VMWare Fusion中,它同时执行VM和实例管理.这是否意味着将virtualbox与vagrant一​​起使用与使用VMWare Fusion几乎相同?

virtualization vmware ruby-on-rails vagrant

7
推荐指数
1
解决办法
8882
查看次数

你如何存根File.open块中发生的file.read?

如何存根file.read调用以便它返回我想要的内容?以下不起作用:

def write_something
  File.open('file.txt') do |f|
    return contents = f.read
  end
end
# rspec
describe 'stub .read' do
  it 'should work' do
    File.stub(:read) { 'stubbed read' }
    write_something.should == 'stubbed read'
  end
end
Run Code Online (Sandbox Code Playgroud)

看起来存根被应用于File类而不是我的块中的文件实例.所以按预期File.read回报stubbed read.但是当我运行我的规范时,它失败了.

ruby rspec

7
推荐指数
1
解决办法
5828
查看次数

管理heroku上的db索引

如何在Heroku上管理我的数据库索引?我知道关于水龙头,但这似乎是推/拉数据.

如何查看,更新,删除索引?我的dev db是sqlite3,而在Heroku上它是postgres.

postgresql ruby-on-rails heroku

6
推荐指数
1
解决办法
693
查看次数

使用spork的Rails项目 - 总是要使用spork?

如果我在我的rails项目中使用spork并且有这样的spec_helper.rb文件

require 'spork'

Spork.prefork do
  ...
end

Spork.each_run do
  ...
end
Run Code Online (Sandbox Code Playgroud)

这是否意味着我需要在运行我的规格时总是运行spork rspec spec?意思是,如果我还没有$ spork在终端窗口中执行,是否意味着我的规格将无法正常运行?

ruby rspec ruby-on-rails spork

6
推荐指数
1
解决办法
3597
查看次数

如何编写/运行模型/视图/控制器以外的文件的规格

使用rails和rspec,当我使用rails generate带有models/views/controllers 的命令时,很容易让rspec为我生成必要的文件.但是现在我想为我写的模块编写规范.模块是/lib/my_module.rb这样我创建了一个规范/spec/lib/my_module_spec.rb

我遇到的问题是,当我尝试运行rspec spec/该文件时my_module_spec.rb,lib/my_module.rb无法找到对我的模块的引用.这样做的正确方法是什么?

只是FYI my_module_spec.rb文件确实已经require 'spec_helper'有了

require 'spec_helper'

describe "my_module" do
  it "first test"
    result = MyModule.some_method  # fails here because it can't find MyModule
  end
end
Run Code Online (Sandbox Code Playgroud)

ruby rspec ruby-on-rails

6
推荐指数
1
解决办法
2475
查看次数

多次弹出/移动ruby数组

我的代码目前看起来像这样

numbers = [1, 2, 3, 4, 5]

def pop_three
  pop = []
  3.times { pop << numbers.pop }
  return pop
end
Run Code Online (Sandbox Code Playgroud)

有什么pop_three方法可以在一行中执行方法内部的操作吗?

我基本上想要做一些事情,numbers.slice(0, 3)但删除切片中的数组项.

嗯... hrmmm,我想我刚刚意识到我可以尝试切片!

ruby arrays

5
推荐指数
1
解决办法
3847
查看次数