Tôi bắt đầu chế tạo động cơ Rails 3.1 và tôi đang gặp khó khăn khi thử nghiệm nó bằng rspec.Thử nghiệm động cơ có thể lắp Rails 3.1 với Rspec
Trước hết, nếu tôi chạy rails g integration_test whatever
nó tạo ra một thử nghiệm tích hợp thường xuyên trong các thử nghiệm/tích hợp thay vì spec/yêu cầu (các rspec-ray đá quý đã được cài đặt và bắt buộc như một sự phụ thuộc phát triển trong file gemspec)
Ngoài ra, khi tôi chạy một kiểm tra spec tôi nhận được một lỗi nói rằng bảng tương ứng với mô hình tôi đang thử nghiệm đã không được tạo ra. Tôi đã thử rake engine_name:install:migrations
và chạy rake db:migrate
từ bên trong ứng dụng giả và tôi gặp lỗi "bảng đã tồn tại".
Mọi thứ dường như bị ngắt kết nối, tôi cảm thấy tôi thiếu một số thứ ở đây để làm cho đá quý rspec hoạt động liền mạch như thường làm với các ứng dụng đường ray đầy đủ.
Tôi đã theo tất cả các thay đổi từ đây http://rubyx.com/2011/03/01/start-your-engines và tôi có thể kiểm tra động cơ theo cách thủ công bằng cách khởi chạy ứng dụng giả thông qua bảng điều khiển như được hiển thị ở đây http://railscasts.com/episodes/277-mountable-engines.
Có cách nào để biến rspec thành mặc định để thử nghiệm động cơ 3.1 thanh ray không?
Trong đường ray 3.2 một số điều này đã được giải quyết, nhưng tôi luôn quên cách di chuyển cơ sở dữ liệu thử nghiệm. Để chạy di chuyển trên cơ sở dữ liệu thử nghiệm, hãy chạy 'rake app: db: test: prepare' trong thư mục gem của bạn. – Andrew
Tôi vừa mới triển khai phương pháp trong bài viết này mà không gặp vấn đề gì. http://viget.com/extend/rails-engine-testing-with-rspec-capybara-and-factorygirl – jspooner