2012-11-20 18 views
8

Tôi đã tìm cách tăng tốc thử nghiệm của mình bằng cách sử dụng một số loại kiểm tra song song kết hợp với thiết lập Guard hiện tại của tôi. Guard-Hydra có vẻ như là một khởi đầu tốt nhưng bản thân số Hydra gem không còn được duy trì và tác giả hướng mọi người đến parallel_tests thay thế.Có thể sử dụng Guard kết hợp với các thử nghiệm song song không?

Kiểm tra song song có vẻ rất tốt. Tôi đã nhận nó làm việc tại dòng lệnh bằng cách sử dụng nhiệm vụ rake thông thường, nhưng tôi không có khả năng viết một phần mở rộng bảo vệ thích hợp bản thân mình. Tôi đã khá ngạc nhiên về việc thiếu thông tin có sẵn khi tìm kiếm 'guard parallel_tests'. Chắc chắn tôi không phải là nhà phát triển Rails duy nhất ở đó với một PC đa lõi, những người sẽ quan tâm đến việc tăng tốc kiểm tra của họ?

Trả lời

8

Tôi đã thực hiện tùy chọn này cảnh giác-rspec

https://github.com/guard/guard-rspec/pull/150

+0

Hi Rafael. Tôi đã thử nghiệm nó và nó hoạt động tốt. Nhiều, nhanh hơn nhiều! Hy vọng nó được sáp nhập. – Simmo

+2

Bất kỳ cơ hội nào có thể làm việc cùng một phép thuật trên dưa chuột? – Simmo

1

Thực ra, tôi đã xem xét điều này gần đây và không tìm thấy giải pháp. Nó có vẻ hơi lạ bởi vì những người thực sự thông minh ngồi xung quanh chờ đợi kiểm tra, khi có lõi không sử dụng ngồi nhàn rỗi.

Bất cứ ai có thể đưa ra giải pháp cho điều này sẽ đóng góp rất lớn cho cộng đồng Rails và Ruby.

3

Hiện tại có một số thông tin trong ReadMe về guard-rspec về cách thực hiện việc này tại đây https://github.com/guard/guard-rspec (nhìn xuống dưới cùng bên phải). Tính đến thời điểm viết, nó trông giống như sau (lưu ý dấu phẩy trong số arg bổ sung)

rspec_options = { 
    cmd: "bundle exec rspec", 
    run_all: { 
    cmd: "bundle exec parallel_rspec -o '", 
    cmd_additional_args: "'" 
    } 
} 
guard :rspec, rspec_options do 
# (...)