Nếu bạn đã từng sử dụng Stryker, bạn sẽ biết rằng nó tạo ra một báo cáo tuyệt đẹp mà bạn có thể xem trong trình duyệt. Nó hoạt động bằng cách tạo các tệp HTML dựa trên các sự kiện do Stryker đưa ra. Trong quá trình phát triển Stryker4s và Stryker. NET, chúng tôi nhận ra rằng việc tạo ra cùng một báo cáo sẽ tốn rất nhiều công sức
Thay vì triển khai trình báo cáo HTML mới cho từng khung Stryker, chúng tôi đã quyết định chuyển logic trình bày báo cáo sang trình duyệt của bạn. Theo cách đó, bất kỳ khung nào cũng có thể hỗ trợ báo cáo HTML chỉ bằng cách tạo tệp JSON
Chúng tôi gọi đó là các yếu tố thử nghiệm đột biến và nó được triển khai bằng cách sử dụng bộ tính năng của các thành phần web trưởng thành. Bây giờ bạn có thể sử dụng nó trong Stryker, Stryker. NET và Stryker4s
👷 Cách sử dụng
Để bật trình báo cáo HTML mới, chỉ cần cập nhật lên bản phát hành Stryker mới nhất và bật trình báo cáo HTML trong quá trình triển khai mà bạn chọn
- Stryker [kể từ v1. 2]
Bật bằng cách thêm'html'
vàoreporters
trong tệpstryker.conf.js
của bạn. - Stryker4s [kể từ v0. 3. 1]
Bật bằng cách thêm"html"
vàoreporters
trong tệp
0 của bạn.document.querySelector['mutation-test-report-app'].report = {
/*.. report data ...*/
}; - Stryker. NET [kể từ v0. 9]
Cho phép"html"
làm người báo cáo trong tệp
2 của bạn.document.querySelector['mutation-test-report-app'].report = {
/*.. report data ...*/
};
Nâng cấp nên không gây đau đớn
💸 Cho tôi xem tiền
Xem hai ảnh chụp màn hình được lấy từ báo cáo thử nghiệm đột biến của chính Stryker 🎉
Các yếu tố kiểm tra đột biến đi kèm với pin đi kèm
📊 Tính toán và hiển thị điểm đột biến cũng như các chỉ số khác
📁 Nhóm kết quả vào các thư mục
👓 Hiển thị trực tiếp các đột biến trong mã nguồn của bạn
😎 Highlight code with embedded highlightjs
🧙 Filter mutants based on the outcome
🔗 Deep linking using anchors [uses fragment, so path will not be contaminated]
✨ A nice [yet basic] UI with embedded bootstrap css
🎓 Adheres to custom element best practices
💭 Cách thức hoạt động
Sử dụng các yếu tố kiểm tra đột biến đơn giản như tải gói JavaScript và thêm
document.querySelector['mutation-test-report-app'].report = {
/*.. report data ...*/
};
0 vào trang của bạn, trỏ document.querySelector['mutation-test-report-app'].report = {
/*.. report data ...*/
};
1 vào tệp json chứa kết quả kiểm tra đột biến sẽ được hiển thị
Your browser does not support custom elements. Please use a modern browser.
Tải từ nguồn bên ngoài [sử dụng
document.querySelector['mutation-test-report-app'].report = {
/*.. report data ...*/
};
2] chỉ hoạt động nếu bạn cung cấp tệp HTML từ máy chủ. Sử dụng liên kết thuộc tính để hỗ trợ mở trực tiếp báo cáo HTML của bạn từ đĩadocument.querySelector['mutation-test-report-app'].report = {
/*.. report data ...*/
};
Tệp json của báo cáo phải tuân thủ lược đồ json của báo cáo thử nghiệm đột biến, chúng tôi đã lưu ý đến mục tiêu cụ thể này khi thiết kế nó
Để biết thêm thông tin về cách sử dụng, cũng như nơi triển khai JavaScript, vui lòng xem phần đọc về các yếu tố kiểm tra đột biến trên github. Bạn muốn đóng góp hoặc đề xuất thay đổi?
💪 Kêu gọi hành động
Các yếu tố thử nghiệm đột biến ở đây để trợ giúp tất cả các khuôn khổ thử nghiệm đột biến. Chúng tôi đã liên hệ với những người ở Infection [PHP] và họ sẽ hỗ trợ nó trong tương lai
Nếu khung thử nghiệm đột biến của bạn không được hỗ trợ, tại sao không mở một vấn đề ở bên họ. Hoặc tốt hơn nữa, thực hiện nó trong một yêu cầu kéo. Rốt cuộc thì hầu hết chúng đều là mã nguồn mở. Truyền bá 💖 để giúp chúng tôi phát triển 🌳
🔮 Tiếp theo là gì?
Chúng tôi đang lên kế hoạch nâng cấp bảng điều khiển Stryker. Ngay bây giờ, nó đã hỗ trợ hiển thị huy hiệu điểm đột biến. Trong tương lai, bạn sẽ có thể lưu trữ toàn bộ báo cáo thử nghiệm đột biến của mình ở đó. Giữ nguyên