Quá trình xây dựng kế hoạch cho việc kiểm thử hiệu năng (What to include in a performance test plan) Phần 2
Trong phần đầu của bài viết, mình đã giới thiệu tổng quan các yêu cầu đối với một kế hoạch kiểm thử hiệu năng và phân tích chi tiết một số bước bên trong quá trình kiểm thử hiệu năng. Trong bài viết này, mình sẽ tiếp tục phân tích các bước còn lại của ...
Trong phần đầu của bài viết, mình đã giới thiệu tổng quan các yêu cầu đối với một kế hoạch kiểm thử hiệu năng và phân tích chi tiết một số bước bên trong quá trình kiểm thử hiệu năng. Trong bài viết này, mình sẽ tiếp tục phân tích các bước còn lại của một quá trình kiểm thử hiệu năng và đưa ra kết luận cho bài viết.
3.6. Những chức năng hệ thống liên quan trực tiếp đến công việc (In-scope business processes)
Phần này sẽ xác định rõ những chức năng, hoạt động nào sẽ được đánh giá là quan trọng và chắc chắn cần được bao hàm bên trong một quá trình kiểm thử hiệu năng đối với một phần mềm hoặc một hệ thống, các chức năng, hoạt động này có thể bao gồm những hoạt động như:
- Quá trình đăng ký người dùng đối với phần mềm hoặc hệ thống.
- Quá trình đăng nhập và truy cập phần mềm hoặc hệ thống.
- Quá trình những người dùng thực hiện duyệt qua dữ liệu của mình trong hệ thống.
- Quá trình xử lý đơn hàng và tạo hóa đơn đối với các hệ thống hỗ trợ thanh toán và chi trả.
Chúng ta có thể dễ dàng nhận thấy những chức năng, hoạt động này là quan trọng vì liên quan trực tiếp đến quá trình người dùng trải nghiệm và sử dụng các chức năng của hệ thống cũng như phần mềm.
3.7. Những chức năng hệ thống không liên quan trực tiếp đến công việc (Out-of-scope business processes)
Phần này sẽ xác định rõ những chức năng, hoạt động sẽ không được bao hàm trong một kế hoạch test thực thi. Những chức năng, hoạt động này về bản chất sẽ phụ thuộc và được quản lý bởi các yếu tố khác nên không thể tiến hành đánh giá chính xác hoạt động của chức năng. Các chức năng này có thể như một số chức năng được thống kê bên dưới:
- Chức năng kiểm tra tài khoản của phần mềm hoặc hệ thống. Thông thường, chức năng này sẽ được liên kết đến một server khác và được quản lý bởi một bên thứ 3. Do đó việc kiểm tra thực thi là không cần thiết.
- Tất cả những chức năng được thực hiện nhưng không bao hàm bên trong các chức năng chính đã được xác định trước đó, bởi về bản chất, chúng sẽ không có nguy cơ ảnh hưởng đến việc thực thi của các chức năng chính.
3.8. Kịch bản kiểm thử hiệu năng (Performance testing scenarios)
Sự tồn tại của phần này trong quá trình kiểm thử hiệu năng phụ thuộc vào mức độ quen thuộc hoặc mức độ kinh nghiệm của mỗi tổ chức, công ty với quá trình kiểm thử hiệu năng. Nếu tổ chức hoặc công ty có rất ít hoặc không có kinh nghiệm đối với phần này thì có thể coi như như một phần phụ có thể thực hiện sau hoặc bỏ qua.
Có 4 yếu tố được coi tiêu chuẩn được đưa ra để xây dựng các kịch bản kiểm thử hiệu năng:
- Kịch bản công việc.
- Thông lượng mong đợi.
- Tiêu chuẩn thực thi có thể chấp nhận (Thời gian đáp ứng được đánh giá là chấp nhận được dưới sự thay đổi của tải)
- Những yêu cầu dữ liệu.
Việc xây dựng kịch bản kiểm thử hiệu năng dựa trên công việc thường phụ thuộc nhiều vào các kỹ sư IT có kinh nghiệm và các đầu vào mang tính chất công việc thực tế, và thường đi theo các bước sau:
- Kịch bản kiểm thử hiệu năng thường được bắt đầu với một dãy cách công việc cơ bản được thực hiện khi sử dụng một hệ thống hay phần mềm nào đó.
- Kịch bản sau đó được mở rộng đến một dãy các công việc xác định cụ thể đi kèm với những dữ liệu đầu vào được xác định chi tiết.
- Kịch bản kiểm thử hiệu năng được xác định là đạt yêu cầu hoặc hoàn chỉnh một khi những kỹ sư IT có kinh nghiệm xác định được tất cả các dữ liệu cần được đưa vào để đánh giá đầy đủ hiệu năng và thực thi của hệ thống phần mềm ở các trạng thái khác nhau.
Việc xây dựng kịch bản kiểm thử hiệu năng dựa trên thông lượng mong đợi được bắt đầu bằng việc đánh giá có bao nhiêu người sẽ sử dụng phần mềm hoặc chức năng không giờ cao điểm hoặc thấp điểm, sau đó hệ thống sẽ mở rộng dưới một chuỗi những sự thao tác khác nhau phía người dùng cuối và cuối cùng, kịch bản kiểm thử hiệu năng dựa trên thông lượng mong đợi được đánh giá là hoàn thành khi các kỹ sư IT đánh giá được các hệ thống nào được thêm vào sẽ ảnh hưởng đến sự cân bằng của hệ thống.
Việc xây dựng kịch bản kiểm thử dựa trên tiệu chuẩn thực thi có thể chấp nhận (Thời gian đáp ứng được đánh giá là chấp nhận được dưới sự thay đổi của tải) thường được bắt đầu với việc đánh giá thời gian đáp ứng của hệ thống dưới các điều kiện tải hệ thống ở các mức nhẹ, bình thường và nặng. Điều này có thể được mô phỏng bới các kịch bản khác nhau. Sau đó đội kiểm thử hiệu năng hệ thống sẽ tiến hành đưa ra những tiêu chuẩn chấp nhận được của hệ thống dưới thuật ngữ những sự kiện hệ thống có thể đo lường được. Việc xây dựng kịch bản kiểm thử dựa trên tiêu chuẩn thực thi có thể chấp nhận này được coi là hoàn thành khi những kỹ sư IT xác định được làm thế nào để quản lý thực thi của hệ thống. Điều này sẽ bao gồm những thước đo từ đội kiểm thử thực thi.
Việc xây dựng kịch bản thực thi dựa trên những yêu cầu dữ liệu được bắt đầu với việc xác định những thành phần dữ liệu quan trọng sẽ ảnh hưởng đến người dùng. Sau đó quá trình kiểm thử sẽ mở rộng ra những hệ số mà người dùng sẽ không nhìn thấy nhưng ảnh hưởng đến thực thi hệ thống, như bộ nhớ cache. Cuối cùng, team kiểm thử thực thi và các kỹ sư IT thực hiện sáng tạo bộ dữ liệu cần thiết để hỗ trợ kiểm thử thực thi.
3.9. Thực hiện quá trình kiểm thử hiệu năng (Performance test execution)
Sự tồn tại của phần này trong quá trình kiểm thử hiệu năng cũng giống như phần trước, phụ thuộc vào mức độ quen thuộc hoặc mức độ kinh nghiệm của mỗi tổ chức, công ty với quá trình kiểm thử hiệu năng. Nếu tổ chức, công ty có nhiều kinh nghiệm trong quá trình kiểm thử hiệu năng thì phần này sẽ trở thành một mục mang tính chất hỗ trợ và có giá trị lớn.
Về cơ bản, quá trình thực hiện kiểm thử hiệu năng đi theo một con đường tuyến tính của những sự kiện:
- Xác định kịch bản kiểm thử hiệu năng.
- Định nghĩa những tải hàng ngày của hệ thống dựa trên các kịch bản đã được định nghĩa.
- Thực hiện những bài kiểm thử thực thi như những bài kiểm thử độc lập để tìm ra những vấn đề bên trong mỗi chu trình làm việc riêng.
- Thực hiện kịch bản kiểm thử hiệu năng như một gói để mô phỏng những hoạt động hàng ngày để đánh giá với các tiêu chuẩn thực thi đã được đặt ra.
- Báo cáo những kết quả kiểm thử thực thi.
- Căn chỉnh hệ thống theo những kết quả thu được.
- Lặp lại quá trình kiểm thử nếu được yêu cầu.
3.10. Những thước đo quá trình kiểm thử hiệu năng (Performance test metrics)
Những thước đo của quá trình kiểm thử hiệu năng thường dựa trên các tiêu chuẩn thực thi chấp nhận được của hệ thống và những kịch bản kiểm thử thực thi xác định. Nếu công ty, tổ chức có tầm nhìn để kết nối những thước đó này như những yêu cầu thực thi thì một mục những yêu cầu thực thi nên được đưa ra nhưng một thuật ngữ của quá trình kiểm thử thực thi. Hầu hết những thước đo kiểm thử thực thi cơ bản nhất bao gồm đo lường thời gian đáp ứng và mức độ xuất hiện lỗi so với một tải cố định được đưa ra để kiểm tra quá trình thực thi.
4. Kết luận:
Bài viết hiện chỉ nêu ra những tổng quan của quá trình kiểm thử hiệu năng, những phân tích chi tiết hơn phụ thuộc vào hệ thống và những điều kiện kiểm thử. Đôi khi những hoạt động kiểm thử không mang tính chất kiểm thử thực thi cũng được nhắc đến như kiểm thử thực thi, cái mà chúng ta thường gọi là kiểm thử thực thi ấm hoặc mở (warm-and-fuzzy performance testing). Một điều dễ phân biệt là nếu bạn đang không cố gắng tạo ra những tải hệ thống được mong đợi trong các chế độ hoạt động thông thường của hệ thống thì bạn đang không thực hiện việc kiểm thử thực thi.