Thử nghiệm của chúng tôi mất khá nhiều thời gian để chạy và luôn có khoảng thời gian 5-10 phút mà chúng tôi biết thử nghiệm nào đã thất bại, nhưng chúng tôi không thể thấy thông báo lỗi hoặc backtrace cho đến khi bộ phần mềm kết thúc. Nó sẽ hiệu quả hơn để xem các backtraces khi chúng xảy ra. Điều này có thể không?Làm thế nào bạn có thể nhận được rspec để in backtraces kiểm tra thất bại * như * nó đang chạy?
8
A
Trả lời
10
Bạn có hai lựa chọn:
1) thất bại nhanh
# spec/spec_helper.rb
RSpec.configure do |c|
c.fail_fast = true
end
..or sử dụng nó từ dòng lệnh
$ bundle exec rspec spec/ --fail-fast
.F
Failures:
1) Swinger should set the Capybara driver
Failure/Error: Capybara.current_driver.should_not == :rack_test
Finished in 0.00479 seconds
2 examples, 1 failure
Về cơ bản tùy chọn này lỗi sẽ dừng bộ kiểm tra và nó sẽ in lỗi.
2) sử dụng rspec-instafail đá quý
https://github.com/grosser/rspec-instafail
đá quý này sẽ hiển thị spec thất bại ngay lập tức và nó sẽ tiếp tục chạy thông số kỹ thuật.
5
Tôi sử dụng Fuubar để nhận thông báo lỗi và backtraces ngay lập tức trong khi bộ tiếp tục, cũng như nhận được chỉ báo có ý nghĩa hơn về mức độ mà bộ thử nghiệm của tôi đã tiến triển.
+0
Fuubar trông khá tuyệt vời. Cảm ơn! –
Các vấn đề liên quan
- 1. Làm thế nào để kiểm tra RSpec thất bại?
- 2. Selenium IDE - bộ kiểm tra dừng chạy trên thất bại
- 3. Dynamic_cast thất bại như thế nào?
- 4. Làm thế nào để kiểm tra Mongoid :: Observer với rspec
- 5. Khởi động trình gỡ lỗi ruby nếu kiểm tra rspec thất bại
- 6. Làm thế nào weakCompareAndSet có thể thất bại giả nếu nó được thực hiện chính xác như compareAndSet?
- 7. Làm thế nào để GNU kiểm tra một cách rõ ràng cho sự thất bại?
- 8. Kiểm tra thất bại dưới chứng minh nếu nó viết để stdout mà không có newline
- 9. Làm thế nào để bạn kiểm tra các ràng buộc tuyến đường sử dụng RSpec
- 10. onNavigationItemSelected in ActionBar đang được gọi khi khởi động như thế nào có thể tránh nó?
- 11. Làm thế nào để làm cho Delphi DUnit kiểm tra thất bại khi TSQLConnection.Connected = true
- 12. Làm thế nào để có được tên của bài kiểm tra hiện đang chạy trong spock?
- 13. làm thế nào để viết thất bại dự kiến?
- 14. Làm thế nào để thất bại trên
- 15. lập mưu RSpec thử nghiệm điều khiển đăng ký thất bại trên bản cập nhật như thể nó đã cố gắng để xác nhận địa chỉ email
- 16. django - "manag.py kiểm tra" thất bại "bảng đã tồn tại"
- 17. Làm thế nào để gọi ipdb khi kiểm tra thất bại trong thử nghiệm django?
- 18. Làm thế nào để kiểm tra ThinkingSphinx sử dụng RSpec
- 19. Có thuộc tính nào để tránh thất bại kiểm tra đơn vị thác trong MSTest không?
- 20. Làm thế nào để bạn kiểm tra facebook omni-auth bằng rspec?
- 21. Kiểm tra WATIN thất bại với TimeoutException khi chạy từ CruiseControl
- 22. Kiểm tra xem Chronometer có đang chạy
- 23. RSpec. Làm cách nào để kiểm tra xem phương thức đối tượng có được gọi không?
- 24. Rspec: Làm thế nào để kiểm tra đệ quy?
- 25. Làm thế nào để kiểm tra các bản in?
- 26. Có phải tôi đang tiêu diệt backtraces của tôi?
- 27. Có Jenkins Thất bại Nhanh khi Node Đang Ngoại tuyến
- 28. Làm thế nào để bạn xử lý các bài kiểm tra đơn vị/hồi quy được dự kiến sẽ thất bại trong quá trình phát triển?
- 29. Làm thế nào để bạn có được dưa chuột/bảo vệ để lọc trên các thẻ như @wip?
- 30. Làm thế nào để hiển thị các bài kiểm tra của tôi vượt qua/thất bại trong Github?
fail_fast là đóng nhưng nó dừng phần còn lại của các bài kiểm tra chạy sau khi thất bại đầu tiên. Để họ tiếp tục chạy tốt hơn, vì vậy rspec-instafail đã hoạt động rất tốt! (sau khi một troll ngắn kết hợp nó với Guard https://github.com/grosser/rspec-instafail/issues/13) Cảm ơn một tấn! Bạn vừa mới cứu tôi một khoảng thời gian. –