Tôi có 30 thông số kỹ thuật trong foo_controller_spec.rb của mình và khi tôi chạy toàn bộ tệp bằng cách sử dụng thông số, tôi nhận được 4 lỗi và 2 đang chờ xử lý. Khi tôi chạy 4 thông số thất bại riêng lẻ, 3 trong số chúng vẫn thất bại, nhưng một trong số chúng vượt qua. Lúc đầu, tôi nghĩ rằng đó là một vấn đề cơ sở dữ liệu, rằng dữ liệu không được làm sạch đúng cách giữa các lần chạy. Vì vậy, tôi cài đặt database_cleaner (http://github.com/bmabey/database_cleaner) và thêm mã này vào spec_helper tôi:các thông số riêng lẻ khi chạy một mình, nhưng không thành công khi tất cả các thông số kỹ thuật đang chạy
config.before(:suite) do
DatabaseCleaner.strategy = :truncation
DatabaseCleaner.clean_with(:truncation)
end
config.before(:each) do
DatabaseCleaner.start
Sham.reset
login
end
config.after(:each) do
DatabaseCleaner.clean
end
Bây giờ khi tôi chạy thông số kỹ thuật của tôi, tôi có thể thấy rằng các bảng được cắt ngắn giữa mỗi đặc tả nên tôi biết nó làm việc, nhưng spec vẫn thất bại khi chạy với tất cả các thông số kỹ thuật khác nhưng vượt qua khi chạy một mình. Tôi đang thiếu gì ở đây?
Sửa lỗi tốt! Tôi đã có cùng một vấn đề, và phát hiện ra rằng một "bao gồm Foo" bên ngoài bất kỳ khối mô tả đã làm cho những phương pháp có sẵn cho tất cả các thông số kỹ thuật. Điều này che dấu một thất bại khi chạy toàn bộ bộ. – r00k
Làm thế nào tôi có thể kiểm tra điều này với Sublime Text một thiết bị đầu cuối của tôi? – Ricbermo