#2 Performance testing – Nó là cái quái gì mà lại dùng nó để vọc phá spiderum

#2 Performance testing – Nó là cái quái gì mà lại dùng nó để vọc phá spiderum

October 30, 2020 6 By Nam Vu

Trước khi bắt đầu vào chiến dịch vọc phá spiderum thì bài viết này nhằm tổng hợp và định nghĩa một số khái niệm về testing cho những anh chị em ngoại đạo hiểu được hay mường tượng được về Performance testing mà mình nói ở bài viết giới thiệu trước nhé

Các phương pháp test được phân chia dựa vào blackbox testing và whitebox testing. Hai phương pháp tiếp cận này được chú ý trong lúc thiết kế testcase.

Test Case hay còn gọi là trường hợp thử nghiệm, là một tài liệu có một tập hợp các điều kiện hay hành động được thực hiện trên ứng dụng phần mềm để xác minh chức năng dự kiến của tính năng.

Black box testing

Là phương pháp test mà không biết bên trong code có những gì, thực hiện như thế nào. 
Phương pháp test này bao gồm:
– Equivalence partitioning
– Boundary value analysis
– All-pairs testing
– Fuzz testing
– Model-based testing
– Traceability matrix
– Exploratory testing
– Specification-based testing

White box testing

Phương pháp này ngược với black box testing, tester có thể thấy được cấu trúc và thuật toán bên trong phần mềm
Các loại test được dùng trong whitebox testing:
– Api testing – Kiểm tra ứng dụng sử dụng các Public API và Private API
(API là các phương thức, giao thức kết nối với các thư viện và ứng dụng khác. Nó là viết tắt của Application Programming Interface – giao diện lập trình ứng dụng. API cung cấp khả năng cung cấp khả năng truy xuất đến một tập các hàm hay dùng. Và từ đó có thể trao đổi dữ liệu giữa các ứng dụng).
– Code coverage – Kiểm tra các điều kiện bao phủ các câu lệnh
– Fault injection. 
– Mutation testing. 
– Static testing – Bao gồm tất cả các phương pháp test tĩnh.
– Code completeness evaluation

Grey Box Testing

Vài năm gần đây thuật ngữ grey box mới được dùng phổ biến. phương pháp này cho phép sử dụng cấu trúc và thuật toán bên trong chương trình để thiết kế testcase. Nhưng khi test thì tester thực hiện như blackbox.

Kiểm thử phần mềm thôi mà coi bộ như đang bày binh bố trận thiên la địa võng vợt mấy chú dev ý nhỉ

Bài viết trước mình có đề cập đến Unit test, đây cũng là 1 kỹ thuật nhưng dành cho dev kiểm thử function và thuộc phương pháp White Box Testing nhé.

Để hiểu rõ hơn bạn có thể nhìn hình dưới

Testing chia thành 3 (4) loại testing, khác với bên trên nhé! bên trên là phương pháp testing.
– Functional (Kiểm thử về chức năng)
– Non-Functional (Kiểm thử ngoài chức năng)
– Maintenance (Loại kiểm thử vào giai đoạn bảo trì) – Có những nơi thì tách cái này thành Confirmantion và Regression testing

Bạn thấy đó cả 4 loại trên đều nằm trong phương pháp test Black box testing mình nói ban đầu.Đối với quá trình phát triển thì khâu kiểm thử này chia thành nhiều tầng theo từng giai đoạn nữa

Đến đây bạn thấy đó, Performance testing  mà mình đề cập chỉ là 1 góc nhỏ xíu trong thế giới kiểm thử phần mềm. Và nó nằm trong loại kiểm thử Non-Functional. Thường thì nó không trực tiếp tạo ra giá trị cho sản phẩm nhưng mà khi nghiệm thu sản phẩm thì khách hàng lại rất rất quan tâm có khi còn bắt buộc đối với hệ thống lớn nữa

Rồi chưa dừng ở đó, trong Performance testing lại còn chi thành nhiều phần nhỏ bên trong nữa cơ. 

Ngoài lề một chút là mức lương của các chị gái kiểm thử sẽ tăng dần theo các cấp độ khó nhé
Manual testing – Kiểm thử bằng tay: Lương bạc trăm
Automation testing – Kiểm thử tự động: Lương bạc vạn
Performance tesing – Kiểm thử hiệu năng: Lương bạc triệu
Security testing – Kiểm thử hệ thống bảo mật: Lương bạc tỷ

Tất nhiên là cấp độ testing dưới thì dường như phải bao hàm và biết cấp độ testing trên nên lương mới tăng như vậy rồi!
Ai muốn tìm hiểu thêm về kiểm thử phần mềm thì mình để link ở dưới nhé! Nhắc lại lần nữa là mình không phải chuyên về testing
https://www.guru99.com/non-functional-testing.html

Quay về spiderum nhé, tại sao mình lại test thử spriderum với kỹ thuật performance testing. 
Haha, chẳng tại sao cả vì mình thích vọc vạch kiến thức mới ngoài code và mình muốn tổng hợp kiến thức sau quá trình tham gia dự án của mình với vai trò làm performance testing. Trước mình đã thử vai trò Automation testing rồi, có cơ hội mình sẽ chia sẻ ở loạt bài viết khác nhé.

Bài viết hơi dài! Mình xin hẹn các bạn bài viết sau về chiến lược testing spiderum của mình nhé! Làm gì cũng phải có hoạch định chiến lược chứ!