Mu Test hôm nay ở đâu?Cách tham gia test game Mu cực nhanh.

Chào mọi người, hôm nay mình sẽ chia sẻ với các bạn về quá trình mình thử nghiệm với MU test nhé. Nghe tên có vẻ “nguy hiểm” nhưng thực ra cũng không có gì ghê gớm lắm đâu.

Mu Test hôm nay ở đâu?Cách tham gia test game Mu cực nhanh.

Đầu tiên, mình tìm hiểu xem MU test là cái gì đã. Lên mạng vài dòng, đọc qua loa mấy bài viết. Đại khái là một kiểu kiểm thử phần mềm, tập trung vào việc kiểm tra các đột biến (mutation) trong code. Nghe cũng hơi lạ tai, nhưng kệ, cứ thử xem sao.

Tiếp theo, mình chọn một project nhỏ nhỏ để thử nghiệm. Không nên lấy cái gì quá to tát, lỡ có sai sót gì thì còn sửa được. Mình lôi cái project tính toán đơn giản hồi trước ra, thấy cũng hợp lý.

Cài đặt công cụ hỗ trợ MU test. Mình chọn dùng Stryker, thấy bảo cũng phổ biến. Mất một lúc loay hoay cài đặt, cấu hình các kiểu, cuối cùng cũng xong.

Bắt đầu chạy thử. Stryker nó tự động tạo ra một đống các phiên bản “đột biến” của code mình. Ví dụ, nó đổi dấu “+” thành “-“, hoặc thay điều kiện “>” thành “<=". Nghe cũng hơi ghê ghê.

  • Chạy test suite trên từng phiên bản đột biến.
  • Xem kết quả. Nếu test case nào đó fail trên bản đột biến, thì coi như mutation đó bị “killed”.
  • Tính toán điểm số mutation. Tỷ lệ mutation bị killed càng cao, thì chất lượng test suite càng tốt.

Kết quả là, ôi thôi, điểm số của mình thấp tè. Hóa ra test case của mình còn nhiều lỗ hổng, chưa cover hết các trường hợp. Cũng hơi buồn, nhưng mà nhờ vậy mình mới biết để mà sửa.

Tổng kết lại

Mình thấy MU test cũng khá hay ho. Nó giúp mình nhìn ra những chỗ mình còn thiếu sót trong quá trình viết test case. Tuy nhiên, chạy MU test cũng khá tốn thời gian, nên chắc chỉ áp dụng cho những project quan trọng thôi.

Đó là kinh nghiệm thử nghiệm của mình với MU test. Bạn nào có hứng thú thì cứ thử xem nhé, biết đâu lại học hỏi được nhiều điều hay ho!