2016-12-14 11 views
-1

私はCucumberとCapybaraをちょっと試しています。Rubyクラス内でのCapybaraの使用

私はいくつかのユーザー管理を実行するクラスを作成しています。

私は、次のクラスがあります。私がしようとすると、このクラスのインスタンスを作成すると

class UserAdmin 

    def initialize(data) 
    @data = data 
    end 

    def add_user 
    require 'rspec/expectations' 
    require 'capybara/cucumber' 
    require 'capybara/helpers' 

    @data.hashes.each do |user_details| 
     load_user_data(user_details) 

    fill_in('firstname', with: @first_name) 
    fill_in('surname', with: @last_name) 
    fill_in('username', with: @new_username) 
    fill_in('usernameConfirmation', with: @confirm_new_username) 

    click_button_add_user 

    end 
    end 

は、私が手 `NoMethodError:未定義のメソッドFILL_IN'#

ため、私は等のカピバラをrequieingことで考えを、自分のクラスで自分のメソッドを使うことができました。

明らかに私は間違っています。誰かが間違っていた箇所を指摘できますか?

答えて

1

あなたはCapybara::DSL含まれている必要があります

require 'capybara/dsl' 

class UserAdmin 
    include Capybara::DSL 
    Capybara.run_server = false 
    # ... 
end 
+0

を素晴らしいありがとう、私はステップを「期待」のため、私はRSpecの::期待を含める含めるようにしようとしましたが、それは – Tom

+1

を助けるdoes'nt同じを取得しています@Tom n/p :) RSpecをRubyクラスに持つことには意味がありません。テストは分離する必要があります。 –

+0

よろしくお願いいたします。自分を先取りする – Tom

関連する問題