Tôi đến làm việc cho một công ty gần đây đã làm việc trên một dự án đường ray cụ thể trong một thời gian. Bỏ qua giữa quá trình phát triển, tôi bắt đầu quay lại và viết các bài kiểm tra cho mã hiện tại cũng như mã đang được sản xuất. Thử nghiệm các ứng dụng đường ray 4 là dễ dàng đủ, nhưng một khi tôi đã đến thử nghiệm động cơ, tôi nhấn một khối tinh thần. Sau khi thực hiện thẩm định, tôi thấy rằng hầu hết mọi người có cách tiếp cận như thế này (http://viget.com/extend/rails-engine-testing-with-rspec-capybara-and-factorygirl), nhưng chủ đề phổ biến tôi thấy trong tất cả các câu trả lời là mọi người đang xây dựng các ứng dụng này từ đầu và do đó đã có ứng dụng giả tạo cho chúng tự động. Tôi không có lợi ích của việc có thể tạo ra mọi thứ từ đầu, và phải làm việc với những gì tôi đã được đưa ra, vì vậy những gì tôi muốn biết là nếu có một cách để hồi sinh tạo ra chỉ ứng dụng giả. Có một cái gì đó đơn giản tôi có thể gõ vào giao diện điều khiển và có nó tạo ra cho tôi? Hoặc là có một con đường dài hơn, hơi ít đẹp hơn? Hay một chiến lược khác sẽ hoàn toàn tốt hơn?Cách tạo một ứng dụng giả bên trong một động cơ ray hiện có
21
A
Trả lời
32
Cho rằng ứng dụng giả không phải được gắn liền với đá quý mẹ ngoại trừ đối với một số tên mơ hồ, rằng thể làm điều đó:
cd some_path_where_your_engine_IS_NOT
rails plugin new YOUR_ENGINE_NAME --mountable --dummy-path=spec/dummy --skip-test-unit
mv YOUR_ENGINE_NAME/spec/dummy /real/path/to/YOUR_ENGINE_NAME/spec
rm -rf YOUR_ENGINE_NAME # cleanup useless cruft
Ngoài ra, bạn có thể quan tâm đến this answer để tạo ra ứng dụng có cùng phiên bản đường ray chính xác.
+0
Chỉ định phiên bản Rails sử dụng '_VERSION_' làm tùy chọn đầu tiên cho lệnh' rails'. Ví dụ: để sử dụng Rails 5.0.1: 'rails _5.0.1_ plugin mới YOUR_ENGINE_NAME --mountable --dummy-path = spec/dummy --skip-test-unit' –
Các vấn đề liên quan
- 1. Làm thế nào để quản lý di chuyển cho một động cơ ray + ứng dụng giả
- 2. Ứng dụng Ember CLI bên trong động cơ Rails
- 3. Tôi cần một đường dẫn đầy đá quý từ bên trong một ứng dụng đường ray
- 4. tạo một ứng dụng di động từ một trang web hiện có
- 5. Thêm twitter-bootstrap-ray với một ứng dụng đường ray hiện có
- 6. Làm thế nào tôi có thể chạy Sinatra bên trong ứng dụng đường ray hiện có?
- 7. Tạo một textarea giả
- 8. Lớp nào có getClass() báo cáo bên trong một hàm tạo của một lớp cơ sở
- 9. Cách tạo ứng dụng Edge ray?
- 10. Tạo tuyến đường ray đến một URL bên ngoài
- 11. Truy cập tên ứng dụng từ bên trong mẫu đường ray khi tạo ứng dụng đường ray
- 12. Có thể sử dụng ray image_tag từ bên trong một mô hình không?
- 13. Django: Cách tích hợp một ứng dụng bên trong một ứng dụng khác
- 14. hoạt động bên trong của một cơ sở dữ liệu
- 15. Động cơ có thể lắp trên ray và ghi đè một công cụ khác
- 16. nhanh thực hiện kiểm tra trong một play framework ứng dụng giả mạo
- 17. Cách thêm before_filter từ động cơ vào ứng dụng
- 18. Triển khai một ứng dụng hiện có trong Openshift
- 19. Làm cách nào để tạo một ImageView trong mã java, trong một Bố cục hiện có?
- 20. ray 3: cách tạo mô hình cho các bảng cơ sở dữ liệu hiện có
- 21. Cách thay đổi Tên ứng dụng Android và ID của một ứng dụng hiện có?
- 22. Tạo một bộ tạo số giả ngẫu nhiên trong C#
- 23. Thực hiện lại lệnh FLUSHALL trong ứng dụng đường ray
- 24. Tải lại một phần trong ứng dụng đường ray
- 25. Làm cách nào để tạo một ứng dụng Camel độc lập có thể tự động tắt?
- 26. Trong SQLAlchemy, tôi có thể tạo một Engine từ một kết nối ODBC hiện có không?
- 27. Cách gọi phương thức trong một ứng dụng từ một ứng dụng khác trên ruby trên đường ray
- 28. Đường ray: Tạo mô hình từ các bảng hiện có?
- 29. Tạo một khoảng cách bên trong một thẻ neo
- 30. tạo một ứng dụng java đơn lẻ
bạn có thể đặt trong 'spec/dummy' bất kỳ ứng dụng nào, đây chỉ là điểm gắn kết cho bạn, chỉ cần tạo' đường dẫn mới test_app' và sao chép 'test_app' vào thư mục giả. –
Tại sao bạn cần ứng dụng giả? bạn không thể kiểm tra động cơ bằng ứng dụng chính? – Jwan622