Dưới đây là cấu hình của tôi cho codecoverage từ xa với Codeception (Project on GitHub).
Các bước để chạy lên bộ sưu tập codecoverage xa
1. Hãy chắc chắn rằng Xdebug cài đặt và kích hoạt.
2. Định cấu hình codec.
file codeception.yml
(GitHub):
coverage:
enabled: true
c3_url: 'http://%SERVICE_HOST%/index-test.php/'
include:
- web/*
- config/*
- src/*
3. Kích hoạt tính năng bảo hiểm cho phù hợp mà bạn cần.
file acceptance.suite.yml
(GitHub):
coverage:
remote: true
Trong ví dụ của tôi kích hoạt nó chỉ cho nghiệm thu.
4. Bao gồm c3.php
tệp trong tệp khởi động ứng dụng của bạn.
Hồ sơ bootstrap index-test.php
(GitHub):
// Start the remote code coverage collection.
require_once __DIR__.'/../c3.php';
// autoloader, application running and etc
// ...
5. Run bảo hiểm.
$ vendor/bin/codecept run --coverage --coverage-html
Theo mặc định, bạn có thể tìm thấy báo cáo của mình trong thư mục tests/_output
.
Vấn đề có thể
1. Thư mục kết quả không ghi được (tests/_output
).
$ chmod 777 tests/_output
2. Bảo hành từ xa không được in trong bảng điều khiển.
Không được in. Từ tài liệu:
coverage:
remote: true
Trong trường hợp này từ xa kết quả Mã Vùng phủ sóng sẽ không được sáp nhập với những người địa phương, nếu tùy chọn này được kích hoạt. Chỉ có thể hợp nhất trong trường hợp tệp từ xa và cục bộ có cùng đường dẫn. Nhưng trong trường hợp chạy thử nghiệm trên một máy chủ từ xa, chúng tôi không chắc chắn về nó.
3. Một số lỗi khác.
Hãy thử enable debug. Nếu gỡ lỗi được kích hoạt, bạn có thể nhận được báo cáo của bạn hoặc xóa nó.
curl -o codecoverage.tar "http://localhost:8080/index-test.php/c3/report/html"
End
Đôi khi nó không phải là một nhiệm vụ tầm thường. Vì vậy, tôi hy vọng điều này sẽ giúp!
- Ok, tôi không lười vì vậy tôi đã thực hiện một thử nghiệm nhỏ với API và kiểm tra codec cho API - Thực sự không biết cách thiết lập YML đúng cách https://github.com/Horki/ remotecoverage –
bạn đã cố gắng để hiển thị lỗi xảy ra trong c3? có một hằng số bạn có thể đặt bằng "define ('C3_CODECOVERAGE_ERROR_LOG_FILE', '/path/to/c3_error.log');" trước khi bao gồm c3.php (@see https://github.com/Codeception/c3#setup) Trong tệp, bạn sẽ thấy lỗi tại sao có kết quả 500. – P0rnflake
Lỗi và sự cố tương tự có thể hữu ích: https://github.com/Codeception/Codeception/issues/655 – desc