2013-04-08 4 views
1

У меня есть контроллер под названием productcontroller в этом методе с именем HomePage.Тестирование моего приложения Ruby on Rails

код выглядит следующим образом:

class ProductsController < ApplicationController 
     def HomePage 
     end 
    end 

В routes.rb файле

root :to => 'products#HomePage'

Так что, когда я нажимаю localhost:3000 это делает домашнюю страницу.

Для этого файла HomePage.html.erb, я вызываю javascript-файл, в этом файле javascript отправляется другой запрос ajax для рендеринга содержимого центра. Path: 'homepage01/1' для этого запроса у меня есть действие в контроллере, как

def homepage01 
"query executed and stored in instance variable" 
end 

Так что мой вопрос, как проверить, успешно ли оказана эта страница или любой т.д. ошибка в тестировании framewoks?

ответ

0

Это просто с RSpec: создать тест в спецификации/контроллеры/products_controller_spec.rb с помощью следующего кода:

describe ProductsController do 
    describe '#homepage01' do 
    before { get :homepage01 } 

    it { should respond_with(:success) } 
    it { should render_template(:template_name) } 
end 
+0

Нет маршрута спичек {: контроллер => "продукты",: действие => "homepage01"} я включил группу: тест,: разработка сделать Gem 'RSpec рельсы' камень 'огурец рельсы' камня 'водосвинкой' камня 'database_cleaner' жемчужины "factory_girl_rails", "~> 4,0" конца в геме файл , Должен ли я что-то пропустить? – user2244199

+0

Посмотрите на свои маршруты, позвонив «рейк-маршруты» - это покажет все доступные пути в вашем приложении - контроллеры и действия. Я думаю, что вы получили эту ошибку в своих маршрутах.rb этот путь не определен. Попробуйте добавить л как этого ресурсов: продукты,: путь => '',: только => [: HomePage,: homepage01] получить 'продукты/homepage01' получить 'продукты/HomePage' Но это имя очень плохо, вы должны использовать действия REST и CRUD для простоты – Extazystas

+0

i Исправлена ​​ошибка маршрутизации с помощью посещения root_path, но теперь получаем Failure/Error: it {should reply_with (: success)} NoMethodError: undefined method 'response_with 'для # < RSpec :: Core :: ExampleGroup :: Nested_1 :: Nested_1: 0xb94c9a0> – user2244199

Смежные вопросы