Tôi sử dụng nosetests
để chạy các lần hủy của tôi và nó hoạt động tốt. Tôi muốn có được một danh sách tất cả các bài kiểm tra nostests
tìm thấy mà không thực sự chạy chúng. Có cách nào làm được việc này không?Liệt kê tất cả các Bài kiểm tra Tìm thấy bởi Nosetest
Trả lời
Phiên bản 0.11.1 hiện khả dụng. Bạn có thể nhận được một danh sách các bài kiểm tra mà không cần chạy chúng như sau:
nosetests -v --collect-only
Sẽ sớm có: một chuyển đổi - thu thập mới tạo ra hành vi này được giới thiệu ở PyCon tuần trước. Nó sẽ được trên thân cây "sớm" và sẽ được trong bản phát hành 0,11.
Danh sách http://groups.google.com/group/nose-users là tài nguyên tuyệt vời cho các câu hỏi về mũi.
tôi khuyên bạn nên sử dụng:
nosetests -vv --collect-only
Trong khi lựa chọn -vv
không được mô tả trong man nosetests
, "An Extended Introduction to the nose Unit Testing Framework" khẳng định rằng:
Sử dụng cờ -vv cung cấp cho bạn đầu ra tiết từ thuật toán khám phá kiểm tra của mũi. Điều này sẽ cho bạn biết liệu mũi có nhìn vào đúng chỗ để tìm các bài kiểm tra của bạn hay không.
Tùy chọn -vv
có thể tiết kiệm thời gian khi xác định lý do tại sao chỉ tìm thấy một số thử nghiệm của bạn. (Trong trường hợp của tôi, đó là vì nosetests bỏ qua các bài kiểm tra nhất định vì .py
kịch bản đã thực thi.)
Điểm mấu chốt là tùy chọn -vv
là vô cùng tiện dụng, và tôi hầu như luôn luôn sử dụng nó thay vì tùy chọn -v
.
Xem ['-vv'] (http://stackoverflow.com/a/3448487/232794) làm tùy chọn tốt hơn so với' -v'. – Sardathrion
'nosetests -v --collect-only | grep 'some-string'' không hoạt động. Bất kỳ ý tưởng tại sao? –
@EyalLevin Tôi chạy vào cùng một điều. Đầu ra đi tới stderr, vì vậy bạn cần phải thực hiện 'nosetests -v --collect-only 2> & 1>/dev/null | grep 'some-string'' – sihrc