Thứ Hai, 5 tháng 3, 2018

Monkey Testing trong kiểm thử phần mềm

Monkey Testing là khái niệm mới tinh với mình. Đã thực hiện kiểm thử khá nhiều ứng dụng và nhiều lần phải kiểm thử không có kịch bản mà giờ mới biết đến kiểm thử có tên như này. Sau đây mình sẽ san sẻ những gì mình tìm hiểu được về Monkey Testing.

 

                                             

ảnh minh họa - nghề tester là gì

Monkey Testing là một kỹ thuật trong kiểm tra phần mềm khi đó, người dùng kiểm tra ứng dụng bằng cách đưa giá trị đầu vào bất kỳ và kiểm tra xem vận dụng xử lý ra sao (hoặc núm phá hủy chương trình).

Hầu hết kĩ thuật này được làm 1 cách tự động, người dùng nhập giá trị không hợp thức bất kỳ và kiểm tra xử lý. Với monkey test, không có qui tắc, kĩ thuật này không theo testcase hay chiến lược xác định trước. Nó làm việc theo tâm cảnh và cảm tính của người kiểm thử.

Kỹ thuật này được tự động hóa hay nói đúng hơn là bạn có thể viết chương trình/ kịch bản để tạo ra đầu vào ngẫu nhiên rồi đưa vào ứng dụng và phân tích xử lý. Kĩ thuật này làm việc khá tốt khi thực hành load/stress testing hay khi bạn cố phá hủy chương trình bằng cách đưa không ngừng giá trị tình cờ vào.

Các loại Monkey:

Có 2 loại Monkey:

1. Monkey mau lẹ:

1 con khỉ mau lẹ được định nghĩa bởi các đặc tính bên dưới:

-Có ý tưởng ngắn gọn về vận dụng

-Biết các trang của vận dụng sẽ dẫn đến đâu

-Biết giá trị đầu vào là hợp thức hay không hợp lệ

-Làm việc hoặc tụ tập để phá hỏng hệ thống

-Khi tìm thấy 1 lỗi, chúng đủ thông minh để bắt lỗi

-Nhận thức được các menu và button

-Khá cừ với stress và load test

2. Monkey chậm chạp:

1 con khỉ chậm chạp được định nghĩa bởi các đặc tính bên dưới:

-Không có ý tưởng gì về vận dụng

-Không biết giá trị đầu vào là hợp lệ hay không hợp thức

-kiểm tra áp dụng 1 cách tình cờ và không nhận thức được điểm bắt đầu của áp dụng hay điểm kết thúc của luồng

-mặc dầu không nhận thức được ứng dụng nhưng chúng vẫn có thể định nghĩa lỗi như lỗi môi trường hay lỗi phần cứng

-Không có ý kiến gì nhiều về UI và chức năng

Kết quả:

Lỗi ít từ Monkey test đòi hỏi phân tích chi tiết. Vì không rõ các bước tái hiện lỗi (hầu như là vậy) nên việc khôi phục bug sẽ khó.

Tôi nghĩ kĩ thuật này nên làm ở tuổi sau của việc kiểm thử khi toàn bộ chức năng đã được kiểm thử và đã có một tí đang tin về hiệu quả của ứng dụng. Nếu làm nó ở tuổi đầu của kiểm thử, chừng độ hiểm nguy sẽ cao hơn. Nếu chúng ta đang dùng 1 chương trình hay kịch bản để tạo ra đầu vào hợp lệ và không hợp lệ tình cờ thì phân tích sẽ trở lên dễ dàng hơn.

Lợi thế của Monkey Testing:

-Dễ dàng cài đặt và thực hiện

-Có thể thực hiện bởi những người “không quá lão luyện”

-1 kĩ thuật tốt để rà độ tin tức của phần mềm

-Có thể phát hiện bug có ảnh hưởng lớn hơn

-Không tốn tiền

Bất lợi của Monkey Test:

-Có thể phải mất nhiều ngày mới phát hiện ra 1 lỗi

-Số lượng lỗi ít hơn

-Việc tái hiện 1 lỗi(nếu xảy ra) trở thành 1 thử thách

-Một số lỗi có thể có đầu ra không mong muốn của kịch bản test, vì vậy việc phân tách trở nên khó khăn và mất thời kì

Lời kết

dù rằng nói Test Monkeys hay Monkey Testing là sứ nhưng vẫn khuyến khích lên kế hoạch cho nó và tiến hành vào thời đoạn sau này. dù rằng ở giai đoạn đầu của kĩ thuật này có thể không tìm được lỗi tốt nhưng nó thậm chí vẫn có thế phát hiện ra những lỗi đích thực tốt như rò rỉ bộ nhớ hay phá hỏng phần cứng.

Với tri thức kiểm thử cơ bản, ta thường bỏ qua nhiều trường hợp do nghĩ rằng kịch bản này sẽ không bao giờ xảy ra tuy nhiên nếu xảy ra , chúng có thể dẫn đến ảnh hưởng nghiêm trọng (ví dụ bug độ ưu tiên thấp và mức độ nghiêm trọng cao ). Việc làm monkey test tất nhiên có thể tìm thấy những kịch bản này. thỉnh thoảng do tình cờ mà ta lại gặp được tình huống như vậy và khi đó ta sẽ phân tách nó và chũm tìm ra giải pháp.

Theo quan điểm của tôi, cách tốt nhất là có cả “Horse” và “Monkey”. Với Horse, ta có thể đi theo phương pháp test với kế hoạch tốt, định nghĩa tốt và phương pháp tinh sảo. Với Monkey, ta bí mật bao quát được những tình huống thực tại khó chịu. Và nếu kết hợp với nhau, chúng sẽ góp phần tạo nên một phần mềm chất lượng và tin hơn.

Không có nhận xét nào:

Đăng nhận xét