我在我的rails 3應用程序中使用rails_admin和devise併爲黃瓜中的訪問控制編寫測試。用黃瓜和水豚測試訪問控制
我想測試一個人不是管理員無法訪問rails_admin的所有路由(例如)
如果我明確的測試,像這樣:
Scenario: An authenticated user cannot access site administration
Given I am an authenticated user "kate", "[email protected]"
When I visit the administration page
Then I should see access denied
我可以匹配字符串「管理頁面「到路線」rails_admin_dashboard_path「,並讓我的測試通過就好。但是這似乎是在錯誤地測試應用程序。我想測試所有的路線(以某種方式循環它們),而不是暗示他們,也許會錯過一兩個。
事情是這樣的:
Scenario: An authenticated user cannot access site administration
Given I am an authenticated user "kate", "[email protected]"
When I visit ANY administration page
Then I should see access denied
誰能告訴我如何有效地測試呢?我採取了正確的方法嗎?我應該在rspec中做這個嗎?
正如你可能會說的,我有點n00b。
這似乎是實現我的訪問控制的好方法。謝謝。但是,我怎麼能測試這真的有用? – Rimian 2011-05-01 06:09:01