Tải bản đầy đủ (.docx) (8 trang)

Kiểm thử hiệu năng của website

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (606.59 KB, 8 trang )

Nguyễn Anh Đức

Lớp: CML314

Mã đề: 2020-LHD.02
1. Tên đề tài : Tìm hiểu về kiểm thử hiệu năng và áp dụng kiểm thử hiệu năng của
website www.fithou.edu.vn
Kiểm thử hiệu năng
Mục đích: Kiểm tra lượt tải và tần suất của web.
- Các công việc bao gồm:
+ Check thời gian phản hồi của web với mỗi tốc độ kết nối mạng.
+ Check dữ liệu input.
+ Test khả năng hoạt động của website khi lượt truy cập cao; khả năng xử lý cùng lúc
nhiều yêu cầu.
2. Các loại Performance testing
Load test là gì: kiểm thử khả năng của ứng dụng để thực hiện theo tải người dùng dự
đoán. Mục tiêu là để xác định mức độ tắc nghẽn hiệu suất trước khi ứng dụng phần mềm
được phát hành trong môi trường thực tế.
Stress test là gì: Liên quan đến việc thử nghiệm một ứng dụng theo khối lượng công việc
quá lớn để xem cách nó xử lý lưu lượng truy cập cao hoặc cách mà nó xử lý dữ liệu. Mục
tiêu là để xác định được điểm giới hạn của một ứng dụng.
Capacity Test là gì: Mục tiêu để xác định có bao nhiêu user hoặc bao nhiêu giao dịch
hoặc số lượt truy cập trên một đơn vị thời gian có thể đáp ứng các SLA (Service Level
Agreement- là một thỏa thuận hay hợp đồng được thiết lập giữa khách hàng và nhà cung
cấp dịch vụ) hiệu năng của hệ thống
Endurance test là gì: Mục tiêu để đảm bảo phần mềm có thể xử lý tải dự kiến trong một
khoảng thời gian dài.
Spike test à gì: Mục tiêu để kiểm tra phản ứng của phần mềm đối với các thay đổi lớn đột
ngột trong tải do người dùng tạo.
Volume test là gì: Mục tiêu là để kiểm tra hiệu suất của ứng dụng phần mềm theo khối
lượng cơ sở dữ liệu khác nhau.




Scalability test là gì: Mục tiêu của thử nghiệm nhằm đến khả năng mở rộng của ứng
dụng, để xác định hiệu quả của ứng dụng phần mềm khi "mở rộng" để hỗ trợ tăng tải
người dùng, hỗ trợ cho việc lập kế hoạch bổ sung dung lượng cho hệ thống.
Reliability Test là gì: Là một loại kiểm thử để xác minh rằng phần mềm có khả năng thực
hiện một hoạt động khơng có lỗi trong một khoảng thời gian nhất định trong một mơi
trường được chỉ định. Nó cũng chính là việc kiểm thử độ tin cậy của hệ thống đó. Ví dụ:
Xác suất mà một máy tính trong một cửa hàng hoạt động và chạy trong tám giờ mà
không xảy ra lỗi là 99% => yếu tố này được gọi là độ tin cậy.

Quy trình test hiệu năng
Phương pháp được áp dụng để kiểm tra hiệu năng có thể khác nhau nhưng mục tiêu của
những quá trình kiểm thử hiệu năng vẫn giữ nguyên. Nó có thể giúp chứng minh rằng hệ
thống đáp ứng một số tiêu chí hiệu năng được xác định trước. Hoặc nó có thể giúp so
sánh hiệu năng của hai hay nhiều hệ thống phần mềm. Hoặc nó cũng có thể giúp xác định
các thành phần của hệ thống nào đang làm suy giảm hiệu năng của nó.
Quy trình kiểm thử hiệu năng cơ bản:


1. Xác định môi trường kiểm thử
Chuẩn bị sẵn sàng môi trường thử nghiệm vật lý, môi trường sản xuất và cơng cụ kiểm
tra sẵn có. Nắm rõ về cấu hình phần cứng, phần mềm và mạng được sử dụng trong q
trình kiểm thử trước khi bắt đầu. Nó sẽ giúp tạo ra bộ Testcase kiểm thử hiệu năng hiệu
quả hơn đồng thời nó cũng sẽ giúp xác định các khó khăn mà người thử nghiệm có thể
gặp phải trong quá trình kiểm thử hiệu năng.
2. Xác định các tiêu chí chấp nhận hiệu năng chấp nhận được của hệ thống
Bao gồm các mục tiêu và ràng buộc cho thông lượng, thời gian phản hồi và phân bổ
nguồn lực. Nó cũng cần thiết để xác định các tiêu chí thành công của dự án. Tester cần
xác định được các tiêu chí và mục tiêu hiệu năng tối thiểu cần đạt của hệ thống bởi vì

thơng thường các thơng số của dự án sẽ khơng bao gồm nhiều hoặc khơng có những tiêu
chí hiệu năng đủ lớn. Việc sử dụng một ứng dụng tương tự để so sánh là một cách hay để
thiết lập tiêu chí hiệu năng.
3. Lập kế hoạch và thiết kế kiểm thử hiệu năng
Xác định cách sử dụng có khả năng khác nhau giữa những người dùng cuối và xác định
các tình huống chính để kiểm tra tất cả các trường hợp sử dụng có thể. Nó là cần thiết để
mô phỏng một loạt các người dùng cuối, kế hoạch dữ liệu thử nghiệm hiệu suất và phác
thảo những số liệu sẽ được thu thập.
4. Cài đặt môi trường kiểm thử
Cài đặt môi trường, công cụ, tài nguyên cần thiết trước khi thực hiện test
5. Triển khai test design
Tạo testcases kiểm thử hiệu năng theo test design


6. Thực hiện test
Thực thi và theo dõi kết quả thực thi.
7. Phân tích, điều chỉnh và kiểm tra lại
Hợp nhất, phân tích và chia sẻ kết quả kiểm tra. Sau đó, tinh chỉnh và kiểm tra lại để xem
có cải thiện hay giảm hiệu suất hay khơng. Vì các cải tiến thường tăng lên nhỏ hơn với
mỗi lần kiểm tra lại, dừng lại khi bị tắc nghẽn do CPU gây ra. Sau đó, bạn có thể có tùy
chọn xem xét tăng tốc độ xử lý của CPU hay không.
Công cụ kiểm thử hiệu năng
Việc lựa chọn công cụ kiểm thử hiệu năng dựa trên nhiều yếu tố như: chi phí, phương
thức hỗ trợ, trình duyệt, ngơn ngữ phát triển phần mềm, phần cứng,...
Dưới đây là một số công cụ phổ biển phục vụ cho việc kiểm thử hiệu năng:

Chú thích:
label: tên http request
sample: số lượng request đã thực hiện
avarage: thời gian phản hồi trung bình, đơn vị ms.



median: thời gian xử lý request ở giữa
90%line: nghĩa là 90% số request sẽ có thời gian đáp ứng nhỏ hơn giá trị hiển thị trong
table.
10% số request còn lại sẽ có thời gian đáp ứng lớn hơn giá trị hiển thị trong table.
Min: thời gian phản hồi ngắn nhất.
Max: thời gian phản hồi dài nhất.
Error %: tỉ lệ % số request bị lỗi (không nhận được phản hồi từ server).
Throughtput: số request server có thể xử lý/ second/minute/hour.
Received KB/sec: thông lượng KB nhận được/giây
Sent KB/sec: thông lượng KB gửi đi/giây

Phân tích kết quả
Để phân tích Performance của Web server, ta tập trung vào hai thông
số: Throughput và Deviation.
Throughput là thơng số quan trọng nhất, nó miêu tả cho khả năng server có thể xử lý
được độ tải lớn.


Trong kết quả test thông số Throughput của máy chủ fithou.edu.vn là 3,067.014/minute.
Tức là, máy chủ fithou.edu.vn có thể xử lý 3,067.014 yêu cầu trên mỗi phút.
Deviation thể hiện sự sai lệch hiện tại so với mức trung bình, thơng số này càng nhỏ thì
càng tốt.
Deviation của fithou.edu.vn là 4928

Để có cơ sở nhận định về hiệu năng của máy chủ fithou.edu.vn, tôi đã thực hiện đo hiệu
năng của máy chủ Dân trí ( với Thread properties như trên, kết quả
thu được:



- LoadRunner: là công cụ kiểm thử hiệu năng cho phép tìm ra những lỗi về khả năng thực
thi bằng việc phát hiện nguyên nhân, chỗ làm cho phần mềm chạy chậm hoặc không
đúng yêu cầu.
Đây là công cụ mạnh với giải pháp kiểm tra tải, phát hiện và đưa ra giải pháp cải tiến.
Ứng dụng LoadRunner sẽ giúp giảm thời gian viết test script đến 80%, đó là nhờ nó cung
cấp chức năng tự động phát sinh script mơ tả lại các tình huống muốn kiểm tra.
Link download: />6. Sử dụng LoadRunner để kiểm thử hiệu năng
1. Thành phần của LoadRunner
LoadRunner chứa các thành phần sau đây:


Virtual User Generator: Tự động tạo ra VuGen script để lưu lại các thao tác
người dùng tương tác lên phần mềm. VuGen script này còn được xem là hoạt động
của một người ảo mà LoadRunner giả lập.



Controller: Tổ chức, điều chỉnh, quản lý và giám sát hoạt động kiểm tra tải.
Thành phần này có chức năng tạo ra những tình huống (scenario) kiểm tra.



Load Generator: Cho phép giả lập hàng ngàn người dùng, hoạt động của từng
người sẽ được thực hiện theo VuGen script. Kết quả thực hiện sẽ được thơng báo
cho Controller.



Analysis: Cung cấp việc xem, phân tích và so sánh các kết quả kiểm tra hiệu năng

phần mềm.



Launcher: Nơi tập trung tất cả các thành phần của LoadRunner cho người dùng.

2. Thuật ngữ dùng trong LoadRunner


Scenario: Là một file định nghĩa các sự kiện xảy ra trong mỗi lần kiểm tra dựa
trên hiệu suất yêu cầu.



Vuser: Trong Scenario, LoadRunner thay thế người sử dụng bằng người dùng ảo
hay còn gọi là Vuser. Vuser mô phỏng hành động của con người làm việc với ứng
dụng của chúng ta. Một Scenario có thể chứa hàng chục, hàng trăm và thậm chí
hàng ngàn Vuser.




Vuser Script: Các hành động mà Vuser thực thi trong Scenario được mơ tả trong
Vuser Script.



Transactions: Chúng ta định nghĩa một transactions để đo lường hiệu quả hoạt
động của Server . Một Transaction đại diện cho người sử dụng dưới vai trị EndUser thực hiện theo quy trình nghiệp vụ mà chúng ta muốn đo lường.


3. Các bước Load Test
B1: Plan Load Test
Thiết kế test case với các bước thực hiện rõ ràng, và đề ra các thông số cần đo lường cụ
thể.
B2: Create Vuser Scripts
Dùng công cụ LoadRunner chúng ta có thể lưu lại các thao tác người dùng tương tác với
hệ thống dưới dạng script.
B3: Define Scenario
Thiết kế scenario, nhằm giả lập môi trường mà phần mềm hoạt động với hiệu năng giống
trong thực tế.
B4: Run Screnario
Chạy, quản lý và giám sát việc thực hiện performance test.
B5: Analyzing the Results
Phân tích kết quả dựa trên thống kê mà công cụ LoadRunner cung cấp. Nếu kết quả thực
tế chưa đáp ứng được yêu cầu thì phần mềm được kiểm tra cần được điều chỉnh.

- Load View-Testing: là công cụ kiểm thử hiệu năng cho phép thiết lập đường cơ sở thời
gian phản hồi theo số lượng người dùng tải cụ thể, xác định điểm tắc nghẽn hiệu suất khi
số lượng người dùng đồng thời tăng lên, xác định được giới hạn trên của các hệ thống
hiện tại để lập kế hoạch cho hiệu năng trong tương lai, tăng hiệu năng lên mức cao trên
môi trường test để thấy được cách xử lý dữ liệu và điểm giới hạn hiệu năng của hệ thống.
Link download: />


×