Tôi đang chạy sau thông qua một Makefiel
:bảo hiểm song song cho django kiểm tra
NPROCS:=$(shell /usr/bin/nproc)
.PHONY: coverage-app
coverage-app:
coverage erase --rcfile=./.coveragerc-app
coverage run --parallel-mode --rcfile=./.coveragerc-app manage.py test -v 3 --parallel=$(NPROCS) app
coverage combine --rcfile=./.coveragerc-app
coverage report -m --rcfile=./.coveragerc-app
Nếu tôi đặt NPROCS
tới 1, tôi nhận được dự kiến 100% bảo hiểm thử nghiệm của tất cả các file trong vòng app
. Tuy nhiên, nếu NPROCS
lớn hơn 1, tôi nhận được nhiều dòng bị thiếu trong báo cáo của mình.
Tôi đang làm gì sai?
My .coveragerc-app
được như sau:
# Control coverage.py
[run]
branch = True
omit = */__init__*
*/test*.py
*/migrations/*
*/urls.py
app/admin.py
app/apps.py
source = app
parallel = true
[report]
precision = 1
show_missing = True
ignore_errors = True
exclude_lines =
pragma: no cover
raise NotImplementedError
except ImportError
def __repr__
if self\.logger\.debug
if __name__ == .__main__.:
tôi sẽ đoán rằng bạn không có trình con được đo đúng cách. Bạn có thể kiểm tra các tệp dữ liệu được tạo trong khi chạy. Có bao nhiêu bạn nhận được, và những gì họ đang bao gồm dòng? Bạn có thể xem tóm tắt dữ liệu với: "COVERAGE_FILE = the_data_file dữ liệu gỡ lỗi vùng phủ sóng" –
@NedBatchelder Tôi chỉ nhận được một tệp '.coverage.serval.TLD.12116.528573' chỉ chứa một phần dữ liệu. Báo cáo cuối cùng thực sự chính xác và khớp với dữ liệu trong một tệp đó. Tôi giả định rằng cần có các tệp X (= NPROCS). Tôi tự hỏi nếu nó là plugin django không hoạt động đúng không?… – Sardathrion