2.3.1 Chọn kịch bản kiểm thử hiệu năng
Kiểm thử chức năng là kiểm thử tính đúng, sai của tất cả các luồng chức năng trong hệ thống. Không giống như kiểm thử chức năng, kiểm thử hiệu năng chỉ kiểm thử hiệu năng của hệ thống trên một vài kịch bản mà được sử dụng nhiều nhất. Việc chọn kịch bản kiểm thử hiệu năng ảnh hưởng tích cực đến việc đánh giá hiệu năng hệ thống [2, 5].
Lựa chọn kịch bản trong kiểm thử hiệu năng cần được phân tích và nó chỉ chiếm 20% trong tổng số kịch bản. Đó là những kịch bản mà người dùng sử dụng thường xuyên khi sử dụng hệ thống. Thực hiện kiểm thử hiệu năng cho 80% kịch bản còn lại sẽ làm tốn thời gian, công sức mà không mang lại kết quả mong đợi [5,7].
2.3.2 Viết kịch bản kiểm thử hiệu năng
Kịch bản kiểm thử được tạo ra bằng cách sử dụng phần mềm kiểm thử hiệu năng để ghi lại hành động của người dùng như trong thực tế. Tuy nhiên do hạn chế của phần mềm mà thời gian nghĩ (think time) và một số tham số khác không được ghi lại trong kịch bản. Vì vậy mà mà kiểm thử viên phải tự cài đặt lại thời gian nghĩ và tham số khác để đảm bảo kịch bản chạy đúng như trong thực tế. Kiểm thử viên nên lưu ý một số chú ý sau để tạo hoặc chỉnh sửa kịch bản [5]:
Kịch bản nên có tên để tiện cho việc thu thập và lưu lại thông tin về thời gian phản hồi, thông lượng (throughput). Cần đặt tên theo quy ước để dễ dàng tham chiếu đến giao dịch cụ thể.
Cung cấp quy ước đặt tên phù hợp cho mỗi hành động của người sử dụng để xác định thời gian phản hồi cho tất cả các giao dịch.
Cài đặt thời gian nghĩ (think time) hoặc thời gian đợi (waiting time) giữa các hành động cửa người sử dụng để mô phỏng đúng hành vi của người sử dụng cuối trong thế giới thực.
Cung cấp các biến trong kịch bản để phục vụ cho những liên kết động của dữ liệu và cho những người dùng khác nhau.
Kiểm soát giá trị động được tạo bởi máy chủ như giá trị phiên làm việc (secssion) để tạo kịch bản đủ lớn cho việc mô phỏng nhiều người sử dụng.
Có thể sửa đổi logic kịch bản để kiểm soát hành vi người sử dụng mà vẫn đảm bảo mô phỏng đúng hành vi của người dùng.
Cài đặt thời gian đợi (think time) giữa mỗi giao dịch rất quan trọng để tạo ra tải trên máy chủ như trong thực tế. Chúng ta có thể xác định thời gian nghĩ bằng các thảo luận hoặc khảo sát với nhà phân tích kinh doanh, người sử dụng cuối hoặc từ việc phân tích tập tin log trên máy chủ (nếu hệ thống đã được dưa vào sử dụng trong thực tế) . Thời gian đợi có thể đặt ngẫu nhiên khoảng 20%- 25% để phù hợp với người dùng nhanh và chậm [5].
Ví dụ giả sử rằng bạn có 2 giao dịch trong kịch bản, giao dịch đăng nhập (login) với thời gian đợi 10 giây, sau đó là giao dịch thoát (logout). Nếu thời gian nghĩ (think time) được thay là 5 giây thì yêu cầu đăng nhập và thoát được gửi tới máy chủ tăng, thì tải trên máy chủ sẽ cao. Nếu thời gian nghĩ là 20 giây tải trên máy chủ giảm. Cung cấp thời gian nghĩ lớn (think time) giảm tải máy chủ, giảm thời gian nghĩ (think time) tăng tải máy chủ. Như vậy đặt thời gian đợi khi xây dựng kịch bản là rất quan trọng. Nếu thời gian đợi (think time) được đặt không đúng thì là tải trên máy chủ trong khi thực hiện kiểm thử sẽ sai mặc dù kiểm thử được tạo.
Từ máy chủ có thể có một vài dữ liệu động được tạo ra cho mỗi người dùng và có thể là duy nhất cho mỗi người dùng. Ví dụ session id của mỗi người dùng là duy nhất. Nếu máy chủ cung cấp sesion id của người sử dụng trong khi phản hồi lại yêu cầu từ máy khách. Khi đó kịch bản không thể chạy đúng nếu chạy với id của người dùng khác. Giá trị động có thể được kiểm soát trong kịch bản bằng các cách khác nhau phụ thuộc vào công cụ kiểm thử.