xây dựng được muội hệ Kiểm thử hiệu năng cho mét img dung dé đưa ra kết luận là ứng dung có thể phục vụ được tôi đa bao nhiêu người sử dụng đồng thời, thời giấu phân hồi một yêu cầu của
Trang 1
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
PITAM TIIỊ THƯƠNG
KIEM THU HIEU NĂNG DỊCH VỤ PHAN MEM QUAN LY TRUONG HOC
LUAN VAN THAC Si CONG NGHE THONG TLN
Hả Nội — 2012
Trang 2
TRƯỜNG ĐẠI HỌC CÔNG NGITỆ
PHẠM THỊ THƯƠNG
KIEM THU WEU NANG DỊCH VỤ
PHAN MEM QUAN LY TRUONG HOC
Ngành: Công nghệ thông tin
Chuyên ngành: Công nghệ phần mềm
Mã số: 60 48 10
LUẬN VĂN THẠC SĨ CÔNG NGHE THONG TLN
NGƯỜI HƯỚNG DẪN KHOA HỌC: TS Trương Anh Hoàng
Hã Nội — 2012
Trang 3LOT CAM Øi
1.3 Tâm quan trọng của kiểm thứ hiệu nắng sexy sexy se f
1.2 Các thuật ngữ trong kiểm thử hiệu năng §
1.4 Tính lĩnh động trong kiểm thử hiệu năng 11
1.5 Liiễu lắm về kiểm thứ hiệu năng sexy sexy s11
1.7.2 Tiêu chuẩn để chọn một công cụ kiểm thứ hiệu năng 14
CHƯƠNG 2CÁC KỸ THUẬT TRONG KIEM THU HIỆU NANG
2.1 Xác định tái công việc của hệ thông (workload of system) ¬-
2.1.2 Kiểu tái công việc "— "— "— TỔ
2.1.3 Thân lích tâi công việc của hệ thông 17 2.1.4 Mô hình hóa tải công việc (workload) ¬— ve dB
2.2.1 Môi trường kiểm thử sexy sexy sexy ses dD
2.2.3 Tao tii (Load Generaters) ¬— ¬— veo dD
Trang 42.3 Xây dựng kịch bản kiểm thứ hiệu năng sexy sexy `
2.3.2 Viết kịch bản kiểm thử hiệu năng sexy sexy se 20
3.4 Thực hiện kiểm thữ hiệu năng (Performance test execution) 21
2.4.2 Phương pháp thực hiện kiểu thử hiệu năng 21
2.4.3 Lời khuyên khi thực hiện kiểm thử tải và kiểm thử áp lục 22
3.5 Báo cáo kiểm thô hiệu năng (Performance test reporting) 33
2.5.1 Bao cáo kiểm thứ hiệu năng, "— "— cee BB
2.5.3 Lời khuyên vả ví dụ khi tạo bảo cáo ¬— ¬— -ea.24
CHUONG 3KIEM THU HIEU NĂNG DỊCH VỤ PHAN MEM QUAN LY
3.3.1 8ố người truy cập lớn nhật trong 1 tháng/1 tuần /1 ngày/T giò 27
3.4 Môi trưởng kiểm thứ sexy sexy sexy + 30
3.6 Chiến lược kiểm thử nen nen hung re 3
3.7 Tạo và cài đặt kịch bản kiểm thứ sử đụng phần mềm Tmeter 32
3.8 Kết quá kiểm thủ sexy sexy sexy e 33
3.82 Kịch bản kiểm thử Bảo cáo ¬— ¬— se IT
3.9.1 Thời gian phản hỏi sexy sexy sexy + AO
3.9.3 Sử dung Disk /O trên máy chủ — "¬ see AS
Trang 53.10 Kết lận hiệu nắng hệ thống trên máy chủ thử nghiệm 47
CHƯƠNG 4 TRIÊN KIIAI DỊCH VỤ QUẦN LÝ TRƯỜNG HỌC TRÊN DIỆN
4.1 Vấn để ảnh hướng hiệu năng của hệ thống 48
4.2 Triển khai hệ thông trên diện rộng "— "— cee AB
KẾT LUẬN
TÀI LIỆU THAM KHẢO
Trang 6DANH MỤC BẢNG Bang 1 1: So sánh hiểu lâm và thực tế về kiểm thử hiệu năng [5]
lắng 2.1: Ví dụ về mô hình tải sau khi xây dựng [5] sexy
Bằng 2 2: So sánh thời gian phân hồi [5]
Bang 2.3: Thời gian phản hải theo số người đừng [5]
Bằng 3 1: Thời gian nghĩ (think time) trên các trang,
Bang 3.2: Cấu hình máy chủ triển khai trang web và máy chủ đữ liệu
Bang 3.3: Miễu tả kịch bản kiểm thử
lắng 3.4: Số lượng người kiểm thứ trong kịch bắn sexy
Bang 3.5: Kết quả kiếm thử cho 100 người đùng với kích bản NHẬT ĐIỂM
Bang 3.6: Kết quả kiểm thử cho 100 người ding với kịch bản BẢO CÁO
Bang 3.7: So sánh 90% thời gian phân hỗi trong các kịch ban kiểm thử
Bang 3.8: So sánh mức sử dụng CPU với kịch bản NHẬP DIỄM & BẢO CÁO
Bang 3.9: So sánh múo sử dụng CPU với 2 nức tải SỐ & 100 người
Bang 3.10: So sánh số đĩa doc/ghi véi kich ban NILAP DIEM & BAO CAO
Bang 3.11: So sảnh sử đụng bộ nhớ với kịch ban NHAP DIEM & BẢO CÁO
Trang 7Nổ lực kiêm thứ [5] ¬— ¬— ¬—
Tải công việc ẳn định [5]
Tài công việc sườn đốc [5]
Tai céng vide bung nd [5]
Tải cổng việc theo thi gian [5]
Vi dụ chiến lược kiểm thử lãi |5]
liễu đồ sự thay đổi thời gian phản hỗi [5| sexy
Biểu dé về số người sử dụng theo thắng Biểu đồ vẻ số người sử dụng theo tuẫn sexy Biểu để về số người sử dụng theo ngày
Biéu dé vẻ số người sử đụng theo giờ sexy Biểu đồ luồng chức năng,
'Thông tin các trang trong luỗng chúc năng sexy
Thông lin thời gian Irung bình duyệt trên từng (rang
Cải đặt kịch bản kiểm thứ ¬— ¬—
Kết quả kiếm thứ cơ sở với kich bản NHẬP ĐIỂM
'Thời gian phản hẻi với kịch bán kiểm thử NHẬP ĐIỂM Thời gian phân hồi và thông lượng với kịch bản NHẬP ĐIỂM
Sử dụng CPU trên máy chủ với kịch bán NHẬP ĐIỂM
Số đĩa đọc/ghi trên máy chủ với kịch bản NHẬP ĐIỂM
Sử dụng bộ nhớ trên máy chủ với kịch bản NIẬP DIỄM
Kết quả kiếm thứ cơ sở với kịch bản BẢO CÁO
'Thời gian phản hẻi với kịch ban BAO CAO sexy Thông lượng và thời gian phân hồi với kịch bản BẢO CÁO
Sứ dụng CPU trên nảy chủ với kịch bán BẢO CÁO
Sử dụng bộ nhớ trên máy chữ với kịch bản BẢO CÁO
Sỏ dia đọc/ghi với kịch bản BẢO CÁO
So sánh 90% thời gian phân hồi kịch bản kiếm thủ NHẬP ĐIỂM
Trang 8So sánh 90% thởi gian phán hồi kịch bán kiểm thứ BẢO CÁO,
So sánh sử dung CPU trong kịch bản BẢO CÁO & NHẬP ĐIỂM
Sử dụng CPU với tắt 50 và 100 người đúng với kịch bán BẢO CÁO,
So sánh số đĩa đọc/ghì với kịch bản NHẬP ĐIỂM & BẢO CÁO
Trang 9MS DAU
Quy mỗ của các phần métmn va trang web ngay cing lon để có thể phục vụ được nhiều người đùng hoặc xử lý nhiều nghiệp vụ củng một lúc Điều này mớ ra một thách
thức cho người phát triển là làm thé nao xảy dựng được một hệ thống đán ứng được
yéu cau nay ma van dam bảo chất lượng địch vụ Để có th
thống như vậy thi người phảt triển phải phân tich yêu cầu vẻ hiệu năng vả thiết kế hệ thống để đặt được hiệu năng mong đợi Sau đó kiểm thử viên sẽ thục hiện kiểm thứ
hiệu năng để đảm bảo hệ thẳng đã đạt hiệu năng yêu câu
xây dựng được muội hệ
Kiểm thử hiệu năng cho mét img dung dé đưa ra kết luận là ứng dung có thể phục vụ được tôi đa bao nhiêu người sử dụng đồng thời, thời giấu phân hồi một yêu cầu của người sử dụng, thông lượng, máy chủ sử dụng bao nhiều CPU, bộ nhớ, lối
hoặc những vẫn để ảnh hưởng đến hiệu nắng (nếu có) Tù những thẳng tin này giúp người phát triển đưa ra gải pháp cải liển ứng dựng để đặt được hiệu năng yêu cầu Nếu không thực hiện kiểm thứ hiệu năng cho hệ thống thì dự án gặp một rủi ro cao là
không đáp ứng yêu câu người sử đụng trong thực tế Khi đó hệ thông có thể xảy ra lỗi hoặc không phân hải khi có nhiều yêu cầu của người dừng gửi đến đồng thời
Như vậy kiếm thủ hiệu nàng cho hệ thẳng rat quan trong và lá hoạt động góp phan để đem lại thành công cho dy an Chỉnh vì vậy mà luận văn tập trưng nghiên cứu
lý thuyết, kỹ thuật và công cụ trong kiểm thứ hiệu năng, Đồng thời áp dụng kiểm thứ hiện năng vào hệ thống đang được triển khai thử nghiệm trong thực tế Từ kết quả
kiêm thữ và vận dụng lý thuyết luận văn phân tích đua ra các chú ý kin triển khai hệ
thống trên diện rộng
Cấu trủe của luận văn như sau:
Chương 1 trình bẩy khái niệm cơ bản kiểm thể hiệu năng, các hoạt đông Irong, kiểm thử hiện năng, cac kiểu kiểm thứ biệu năng, một vải công cụ kiểm thử hiệu năng, trên thị trường Từ chương này chúng ta có cái nhìn tống quát về kiếm thử hiệu nắng,
hình người sử dụng vẻ mồ hình tải, luỗng chức năng hay được sứ dụng, thời gian nghĩ (think time), chọn kịch bản kiếm thử, ghỉ và cài đặt kịch bản kiểm thử tải sử dụng phan mdm Imeter, thực hiện kiểm thử, phứ
phân tích đưa ra kết luận vẻ hiệu năng vả vẫn để ảnh hưởng chính đến hiệu năng hệ
thống khi triển khai mở rộng
tích và bảo cáo kết quả Từ kết quả tôi
Trang 10Chương 4 từ kết quả kiểm thứ tải ở Chương 3, vận dụng lý thuyết kiểm thứ hiệu
năng và kinh nghiệm bản thân trong thực tế tôi đã phân tích đưa ra chú ý giúp đội phát
triển và kiểm thứ viên tham khảo để cãi thiện và đăm bảo hệ thông đại được hiệu năng yêu cầu khi triển khai trên diện rộng
‘Tom tắt kết quá dã dạt dược, trình bảy những hạn chế và hưởng nghiên cứu phát triển trong tương lai sẽ được trình bày trong phân kết luận
Trang 11Không giống như kiểm thử chức năng người sử dựng cuối cũng có thế tìm ra lỗi
chức năng của hệ thông Kiếm thứ hiệu năng là một hoạt động rất nhúc tạp không phải
ai cũng để đàng thực hiện kiểm thứ và đưa ra kết luận về hiệu năng cho một hệ thống
Dé thu hiện kiểm thử đỏi hỏi kiểm thử viên phải có hiểu biết về lý thuyết, kỹ thuật và phan mém hé tro kiém thử hiệu năng Trong kiểm thứ hiệu năng có nhiều khái niệm, thật ngữ riêng đỏi mà kiểm thú viên phải hiểu rõ ý nghĩa của nó Dễng thời các kỳ thuật cải đặt môi trường, lựa chọn và xây đựng kịch bản, thực hiện kiểm thử rất đặc thủ không giống như các loại kiểm thữ khác Phải hiểu rõ bản chất và kỹ thuật trong,
kiểm thử hiệu năng Ilì kiểm thứ viên mới có thế đưa ra cách tiến hành và chiến lược
khảo
1⁄2 Khái niệm kiểm thủ hiệu năng
Có nhiều định nghĩa về kiểm thứ hiệu năng Theo [5], kiêm thứ hiệu năng là hành động kiểm định, đánh giá phân mềm, một thành phân hoặc phần củng có đúng với yêu câu vẻ hiểu năng vả tốt ưu hỏa hiệu năng cua ne
Một cách định nghĩa khác của kiểm thử hiệu năng theo [1], kiểm thử hiệu năng là kiêm thử xác định thời gian phản hồi (repsonsiveness), théng luong (throughput), mtte
6 tin cay (reliability) hoặc khả năng mở rộng (scalability) của hệ thống theo khối
lugng céng vige (workload)
Trước kia để tăng hiệu năng của ứng đụng các tế chức thường mua phần cửng, đung lượng cao mặc đủ nó không phải là cách để giải quyết triệt để vấn đề hiệu năng, Ngày nay các tổ chức đã nhận ra phải phân tích thiết kế hệ thông dé dat được yêu cầu
vẻ hiệu năng và thực hiện kiểm thử hiệu năng để xác nhận hệ thống đã đạt được hiệu năng yêu câu chưa Và nhiều người nghĩ rằng kiểm thứ hiệu năng là việc sử dụng một công cụ mô phỏng nhiều người sử đụng và xác dịnh thời gian phản hỏi, thông lượng, của hệ thông khi thực hiện các chức năng khác nhau Nhưng thực sự làm thé nao dé
Trang 12mô phỏng được nhiều người sử dụng giống như trong thục tế để có thể đánh giá ding hiệu năng thực của hệ thống không thực sự đơn giản
1.3 TÂm quan trọng của kiểm thứ hiệu năng
Kiểm thử hiệu năng là hoạt động cân thiết cho việc phát triển những giới pháp tối tưu hỏa hiệu năng cho phân mềm Kiểm thứ hiệu năng giúp chủng ta tránh được các
tỉnh huồng không lường trước khi Iriểu khai ứng đụng trong môi uường thực 12 Ví dụ khi ứng đụng chạy đúng nhưng quá chậm thì sân phẩm số không được người dùng hải
lòng Ngoài ra chúng ta có thê thấy môi số lý đo của việc cần kiểm thử hiệu năng như
sau
e So sánh hiệu năng hiện tại của hệ thông với hiệu nàng của hệ tháng khác mà
đã làm hải lòng người sử dựng
e Kiểm định hiệu năng của hệ thông đã đúng yêu cầu của khách hàng chưa
« Phân tích hành vi của hệ thông ở những mức tái khác nhau Việc phân tích
nảy giúp ta đảnh giá về hiệu năng của hệ thống một cách toàn diện hơn
«© Tìm nguyên nhân ánh hưởng đến hiệu năng của hệ thông vả nguyên nhân cúa
nút nghẽn cổ chai Vỉ dụ một vải nguyên nhân như rõ rí (thất thoát) bộ nhớ Gnemory leaks), thoi gian phan hổi chậm
* Xac dịnh khả năng của các thiết bị và đưa ra yêu câu vẻ tài nguyên trong, tương lại để ứng dụng đạt được hiện răng sở đụng
© So sánh với hệ thông đã thành công khác tìm được một giải pháp tối cho ứng
dụng để đáp ứng được vấn để hương mại
1.3 Các thuật ngữ trong kiểm thử hiệu năng
Theo [5] tôi đã chọn lọc và đưa ra một thuật ngữ hay được sử dụng trong kiếm thử hiệu năng
Thai gian nghĩ (think time): là khoảng thỏi gian người sử dụng mim bat nội dung của trang web hoặc là thời gian người dủng thực hiện một hành động tương tác
với hệ thống như nhấp vào ruột đường đần, múi, v.v
Người dùng ảo (virtual user): công cụ kiểm thứ hiệu năng mõ phóng nhiều người dùng hệ thông như trong thực tế bằng cách tạo ra người sử dụng ảo trong quá trình kiểm thứ
Tải nguời sử dụng đồng thời (sìmultaneous user load): là tải nhiều người đồng, thời cùng sử dựng ứng dụng, tại cùng một thời điểm bất kỳ mỗi người thục hiện một
tương tác khác nhau Ví dụ cỏ 100 người đang sử dụng hệ thống, sẽ cỏ 100 phiên làm việc khác nhau & máy chú.
Trang 13load): là tải nhiều người đổng thời củng sứ dụng ứng dụng va thực hiện cùng một
hoạt đông tại bat ky thời diễm mio Vi du, tắt cả 100 người dùng sẽ dăng nhập trang, web vào cùng thời điểm Một trang web ngân hàng trực tuyển có thể có 10.000 - 20.000 người đồng thời sử dụng bệ thông, nhưng 1000 dến 1500 người củng thực hiện mệt giao địch với ứng đựng
Yéu cdu/muc dich higu ning (performance requircments/goals): là định lượng dưa ra tiêu chí cho rằng hiệu năng của hệ thống là tốt Yêu cầu hiệu năng của một ứng dụng dược thể hiện trong thời gian phản hỏi, số lượt truy cập trong 1 giảy (hits), 36 giao dich trong 1 gry, vv
Hit: Ia yéu cau ga này chữ để truy cập vào một trang web hoặc một tập ti
chủ web Ví dụ, riều một trang web có 5 ảnh, người sử dựng vào
trang đó thì sẽ có 6 hit trên máy chữ web (5 hít cho mỗi ảnh vả | hit cho tai wang
web) Với một trang web, yêu cầu về hiệu năng là số hít trong một đơn vì thời gian như 'hệ thống hỗ chợ l0 hit / giấy với thời gian phản hồi là dưới 5 giây
Thai gian phần hỗi (resnonse time): là thời gian phục vụ hoặc xử lý đề phan
hồi lại yêu cầu Thời gian phản hồi được tính từ khi trình đuyệt web gửi yêu câu tới máy chủ web cho tới khi trình đuyện web nhận được những byte phản hồi đầu tiên từ máy chủ Ví dụ thời gian phản hỏi của một giao địch: đăng nhập vào hệ thống là thời
gian máy chủ xứ lý việc đăng nhập thánh công và hiển thị trang chú của web (nó bao
gdm thời gian mảy chú xứ lý, thời gian ứng dụng xứ lý, thời gian máy chủ dữ liệu xứ
lý và độ trễ của mạng)
Thông lượng (throughput): là tổng dữ liệu (bytes) được chuyển từ máy chủ tới máy khách để phục vụ yêu cầu người đừng, Nó lá chí số đánh giá hiệu năng của máy chủ, nó nói lên số lượng công việc được thực hiện trên máy chú Thông lượng cũng được hiểu như lá số yêu câu hoặc số phiên giao địch được xứ lý bởi máy chủ tại
một thời điểm bết kỷ Ví dụ, thòng lượng của máy chủ là 2.5Mbps hoặc 35hits/giây or
8 giao địch (ransaction)/giây
Nat nghén cé chai (performance bottleneck): là rrất mà các giao dịch của hệ
thống được thực hiện rất chậm Nó là tình trạng/khu vực không cho phép ứng đụng thực hiện nhu mong doi Vi dụ, thời gian phản hổi tăng lên khi 100 người sử dụng, đồng thời do tham só kết nổi HLTP không thích hợp trong máy chủ H5, máy chủ sử
dung CPU lên đến 95% trung 100% Máy chủ bị quá tải sử dụng, đỏ là một kiểu nút
nghén e6 chai Géu biểu Một nút cỗ chai sẽ làm cho hệ thống thất bại nếu không có
giải pháp
Trang 141⁄3 Các hoạt động trong kiểm thử hiệu năng
Hình 1.1: Các giai đoạn trong kiểm thie higu nang [5]
Dựa vào Hình 1.1 ta thấy có 4 giai đoạn chính trong thực hiện kiểm thử hiệu năng và lần lượt thứ tự thực hiện lả: lên kế hoạch kiểm thử, tạo kịch bản, thực hiện vả
phân tích, bảo cáo kết quả Trong mỗi giai đoạn này có các hoạt động khác nhau
Lập kế hoạch kiểm thử
Trước khi đưa ra bản hoạch kiêm thử kiêm thử viên nên thực hiện những việc
sa €
e Hieu hé thong: hiéu nghiép vụ hay các luồng chức năng của hệ thông
©— Xác định mục tiêu/yêu cầu hiệu năng: xác định mục tiêu/yêu cảu hiệu năng,
dua vao yêu câu khách hàng và đặc thủ của ứng dụng
© Mô hình người sử dụng: từ việc hiểu hệ thống và phân tích đối tượng sử
dụng hệ thông kiêm thử viên phải đưa ra mö hình về người sử dụng hệ thông
© — Mô hình tải công việc: kiểm thử viên phải phân tích đưa ra được mô hình vẻ
các yêu câu người sử dụng gửi đến máy chủ như: đặc điểm các yêu câu, thời
gian, số lượng yêu cầu, v.v
Từ việc hiểu hệ thông, yêu cầu hiệu năng cân kiểm thử, mô hình người sử dụng
và tải công việc kiếm thử viên sẽ lập ra kẻ hoạch cho việc kiểm thử hiệu năng Trong, bản kế hoạch kiểm thử kiểm thử viên phải chỉ ra: công cụ sử dụng đề kiểm thử (tools), loại kiêm thử cần thực hiện, các kịch bản cản kiểm thử, thời gian thực hiện, chuẩn đâu
Trang 15vào, đầu ra để xây dựng ca kiểm thử Kế hoạch kiểm thứ được tái liệu hóa và gửi cho các bên liên quan: các kiểm thứ viên, khách hảng, đội phát triển hệ thông,
iện kiểm thử & phân tích kếtquä
Thực
Những công việc cân thực hiện trong giai đoạn này lá:
© Cai dit moi trường kiếm thử
« Thực hiện kiếm thử: sử đụng công cụ kiếm thứ và kịch ban da duoc tao ra dé
chạy kịch bản kiểm thứ
ø Phân tích và đưa ra kết luận về hiệu năng của hệ thống tại thời điểm kiếm thử
và nguyên nhân ánh hưỡng đến hiệu năng của hệ thông (nếu có)
Trước khi thực hiện kiểm thử hiệu năng của hệ thống, nên thực hiện kiểm thứ cơ
sở (baseline test) và kiểm thử chuẩn Kiếm thứ cơ sở là kiểm thử che một người dùng,
âo đề kiểm tra tính hợp lệ của kịch bản kiếm thử Nêu kết quả kiếm thử cơ sở có lỗi thì cần được phân tích là do hệ thống hay do kịch bản kiểm thử Lỗi này cân phải được sửa trước khi thực hiện kiểm thử chuẩn Kết quả của kiểm thứ chuẩn (benchamark 1ost) là hiệu năng tốt nhất của hệ thông tại thời diễm kiểm thủ Các kết quả của kiểm thử cơ sở và chuẩn sẽ được lưu lại trong tải liệu dễ so sảnh với các kết quả kiểm thử
khác Sau dõ hệ thống sẽ được thực hiện các kiểm thử khác như kiểm thử tải, kiểm thử
áp lực, v.v phụ thuộc vào chiến lược được đưa ra trong kế hoạch kiểm thử
Phân tích kết quả kiểm thử hiệu năng là phân tỉch hiệu năng của hệ thống hiện tại
đã dạt được yêu câu dua ra nhu thé nao Phân tich các vận dễ và nguyên nhân lắm ảnh hướng đến hiệu năng Với các van đẻ khỏ như tim nguyên nhân nút nghẽn cô chai của
hệ théng edn siz tham gia phân tích của một nhóm người gốm kiểm thủ viên, người
quân Irị hệ thống, chuyên gia kỹ thuật và nguời quân lý dữ liệu
'Thực hiện và phân tích kết quá kiểm thứ là sự tuần hoàn Nếu kết quá kiểm thứ hiệu năng chỉ ra rằng hệ théng chua đạt được vêu câu hiệu năng thi đội phát triển sẽ điều chỉnh hệ thống, Khi đó kiểm thử viên sẽ thực hiện kiểm thử hiệu năng đẻ đánh giá lại hiệu năng hệ thống sau khi được diễu chỉnh |2, 4, 5|
Báo cáo kết quả kiểm thử: sau khi phân tích kết quả kiểm thử hiệu năng, kiểm thử viên đưa ra kết luận vẻ hiệu năng hiện tại của hệ thống, các yếu tô và nguyễn nhân
Trang 16ảnh hưởng đến hiệu năng của hệ thông và những lời giải thích Kết quả này được bảo
cáo trong tài liệu theo một định dạng dễ hiểu và gửi cho các bên liên quan
Khi thục kiểm thử hiệu năng thực nghiệm cho phan mêm quản lý trường học được xây dựng trên nên web như trình bảy chỉ tiết trong Chương 3, tôi cũng trải qua 4
giai đoạn này và thực hiện các hoạt động trong từng giai đoạn như trong Hình 1.1
Hiện tại trang hệ thống nảy đang được triển khai thử nghiệm và cỏ cải đặt Google
Analytics nén khi phân tích mô hình người sử dụng va mô hình tải hệ thông tôi đã dựa
vào số liệu, biêu đồ Google Analytics cung cáp Cũng dựa vào thong kê của Google Analytics về luỗng chức năng mà người sử dụng thực hiện tôi lựa chọn các kịch bản được sử dụng nhiều nhật để thực hiện kiểm thử Trong kiểm thử thực nghiệm nảy tôi
chỉ thực hiện kiểm thử tải cho hệ thông với 2 mức tải là 50 người và 100 người sử
dụng đồng thời Đề tạo kịch bản va thực hiện kiểm thử tôi sử dụng phần mềm mã nguồn mở Imeter Từ kết quả kiềm thử tôi cũng phân tích và dưa ra bảo cáo chỉ tiết về tỉnh trạng và những vẫn đề ảnh hưởng đến hiệu năng của hệ thông khi muốn triển khai
mở rộng
1.4 Tính linh động trong kiểm thử hiệu năng
Tỉnh linh động trong kiểm thử hiệu năng rất cao Scott Barber đã từng so sánh:
“kiểm thử hiệu năng như điều tra tội phạm” Vì nó là hoạt động có thể điều tra theo
bắt kỳ hướng nào Rất khó đẻ ước tỉnh được nỗ lực bỏ ra đẻ kiểm thử hiệu năng [5]
Hau hét cac t6 chue str dung ROM (Rough Order of Magnitude) để ước tính nỗ lực bỏ ra kiêm thử hiệu năng dựa vào dữ liệu trong quá khứ và yếu tổ rủi ro kỹ thuật,
Với họ nỗ lực kiểm thử được chia ra như sau:
"Báo cáo kiềm thử
Trang 17chiếm 5% trong tổng thời gian Điều quan trọng các hoạt động trong mỗi giai đoạn phụ thuộc vào dự án Trong hấu hết các dự án, phải lập lại kế hoạch kiểm thử trong giai đoạn thực hiện kiểm thử [5]
1.6 Hiểu lầm về kiểm thử hiệu năng
Sau khi thất bại trong một số dự án do hệ thông khi triển khai trong thực tế không phục vụ được nhiều người sử dụng đồng thời thì các tổ chức dân nhận ra tắm quan của kiểm thử hiệu năng và những ảnh hưởng của nỏ đến sự thành công của dự án Nhưng hau hết trong số họ lại đều lên kế hoạch kiểm thử hiệu năng cho ứng dụng vào giai đoạn cuỗi cùng của dự án Điều nảy mang lại rủi ro rất lớn cho đự án vi có thẻ những vân đề vẻ hiệu năng của hệ thông sẽ không được giải quyết trước ngay img dung được đưa ra sử dụng Tại sao biết tắm quan trọng của hiệu năng mà các dự án vẫn gặp rủi ro cao về điều này? Phải chăng là chúng ta chưa thực sự hiểu đúng về hiệu năng của ứng dụng So sánh bản chất thực tế vả những quan điểm sai làm mả mọi người hay nhằm tưởng vẻ kiêm thử hiệu năng sẽ giúp chủng ta cỏ cải nhìn đúng đẳn hơn và làm thé nao
để một dự án đạt được yêu câu hiệu năng trước khi đưa ra triển khai trong thục tế
Bãng 1.1: So sánh hiểu lầm và thực tế về kiểm thừ hiệu năng [5J
1 | Kiểm thử hiệu năng là hoạt
động thực hiện sau củng nêu
thoi gian phát triển du an
đang còn
Kiểm thử hiệu năng rât quan trọng và nên được xem xét ngay từ giai đoạn tìm hiểu yêu cau va ap dụng công nghệ vào thiết kế hiệu năng cho ứng dụng cần được thực hiện trong các giai đoạn phát triển dự án
ie) Thực hiện kiểm thử hiệu năng
làm tăng hiệu năng của hệ
thong,
Xây dựng kiểm thử hiệu năng sẽ không làm tăng hiệu năng của hệ thống Nó giúp xác nhận hệ thông đã đạt được yêu cầu hiệu năng chưa va tim ra các vấn đẻ về hiệu năng nêu
có
Kiem thử hiệu năng cản phải
thực hiện tất cả chức năng của
ứng dụng để xác định các vân
đề vẻ hiệu năng,
Những chức năng được sử dụng thường xuyên
trong hê thông, chức năng quan trọng, chức năng đề bị lôi th kiểm thử viên phải tiên hãnh kiểm thử hiệu năng
Thời gian phản hỏi (response
time) của một hệ thông theo
một chuẩn Không có một chuẩn nao cho thời gian phan
Hồi Thời gian phải hỗi được đảnn rà đứa tiêu
khả năng của phân cứng, phần mềm
Trang 18
¬ Kiểm thử hiệu năng cho một | Kiểm thử hiệu năng cần thực hiện lại bất cứ
ứng dụng thực hiện một lần | khi nảo có sự thay đổi phần mêm hoặc phần trong thời gian phát triển | cứng,
không quan tâm khi có nhiều
mô-đun của ứng dụng đã được
thiết kế lại
6 |Kiểm thử hiệu nắng cô thể | Kiểm thử hiệu năng cần thực hiệu trong một
thục hiện song sơng trong khi | hệ thẳng đáng lin cậy chỉ sau khi hoàn thành
kiểm thử chức năng giai đoạn kiểm thử hệ thông
1.6 Kiểu kiểm thử hiệu năng
hi thực hiện kiểm thử liệu năng cho một ứng dựng chúng 12 có thể thực hiện
nội hoặc một vải loại kiểm thử hiệu răng phụ thuộc vào đặc thà và yên cầu của
ứng dụng dỏ Một vài kiểu kiểm thử hay dược sử đụng trong kiểm thử hiệu năng là
Kiểm thử cơ sở (bascline test)
Kiểm thử cơ sở là kiểm thử được xây dựng đánh giá hiệu năng ứng dụng với tải
một người sử dụng [5, 6] Kiếm thử cơ sở được thực hiện để kiếm tra tỉnh đứng của kich bản kiểm thử được phát triển cho kiếm thử hiệu năng Kịch bản kiểm thử có thé được tạo ra với thời gian nghi (think time) trong thực tế và những cài đặt khác giống
sử dụng trong thởi gian thục Thông tỉ về thời gian phản hồi, các số liệu sử dụng tài
nguyên máy chủ được thu thập và lưu lại trong tài liệu Những thông tin này là cơ sở
dược dùng sơ sánh với hiệu năng của hệ thông ở điều kiện tải khác nhau [5]
Kiểm thử chuẩn (benchmark test}
Kiểm thử chuẩn là kiểm thử dược tiến hành dễ do lường, hiệu năng của ứng dụng, trơng một điểu kiện tãi thấp Thông thường kiểm thử chuẩn chiếm 15-20% mức lãi
Thời gian phân hỏi của hệ thống và số hiệu về mức sử dụng lài nguyên máy chú
sẽ giúp chứng ta phân tích hệ thống có thể đứng vững với kiểm thử lãi người sử dụng,
cao Cáo số liệu thu thập trong kiểm thử chuẩn sẽ được xem như là kết quả hiệu năng,
tất nhất của hệ thông Chúng ta cẻ thể đánh giá sự giảm sút hiệu năng của hệ thống,
‘bang cách so sánh với hiệu năng hệ thống trong kiểm thử chuẩn
'iễm thir (ai (load test}
Trang 19Kiểm thử tái được thực hiện xác định hiệu năng hệ thông với điều kiện tải nhiều người sử dụng đồng hệ thống như trong thực tể Nó được xây dụng với mục dich tim
ra hiệu năng hệ thông trong diễu kiện tải mục tiêu Ngoài ra kiểm thử tải giúp dánh giá hiệu năng hệ thông trong những diều kiện tài khác nhau như trong điều kiện tải bình thường và tâi cao điểm |2, 5, 6|
Kịch bản kiểm thử tải được tạo ra với thời gian nghĩ (think time) tương tự như
thời gian chờ của người sử dụng cuối trong thực tế Kiểm thử nên tạo được sự kết hợp các giao dịch như trong thé giới thực Kiểm thứ tải giúp chúng †a xác dịnh thời gian phan hỏi, thông lượng (throughput) ciia hệ thông, những vẫn dé về phần cứng, của máy
chú triển khai ứng dụng và máy chủ đặt đữ liệu trong, điều kiện lãi bình thường và tấi
cao điểm Đông thời kiểm thử lãi côn giúp chúng la xác định lỗi của ứng dụng xây ra trong các điều kiện tải kháe nhau
Vi du: Tãi mục tiểu (tái tối đa) của một ứng dụng web là 1000 người dùng đồng,
thời Yêu câu kiểm tra khả năng chịu lâi của trang web khi hoạt động trong mức tối cao nhất trong 2 ngày
- Dùng một công cụ kiểm thử hiệu năng tạo mô phỏng ban đầu là 800 người
dùng, cử L phút tăng 2 người, cho đến khi đặt mức tải 1000 người dùng, để ứng
dụng chạy liên tục trong 2 ngây với mức tải tdi da
- Quan sát ứng đụng sử đựng tài nguyên trên máy chủ RAM, CPU, thời gian phan héi của hệ thông, thông lượng (throughput),
Kiém thir ap hye (stress test)
Kiểm thử áp lực là kiểm thử được tiền hành bằng cách kiểm thử hệ thống trong điều kiện tải bất hợp lý để xác định điểm đừng (breakpoint) ctia hé théng [2, 5] Kiém thử này được coi là kiểm thử tiều cục vi hệ thông phải chịu một tải không thực tế Nó thường duợc tiến hành dễ biết táo hại tiền năng tạo ra trong quả trình hệ thông phối chịu tải không thực tế, Kết quả của kiếm thử áp lực đôi khi giúp chủ sở hữu web site
thông báo người sử dụng về khả năng mỗ rộng của ứng đụng,
Về cơ bản kiếm thử áp lực tập trung vào đảnh giá hệ thẳng oó thể tản tại bao lâu
với mức tải lớn hơn mức tải mục tiêu Đồng thời nó cũng giúp xác định những vẫn đề
về phần cửng của máy chủ triển khai ứng dụng vẻ lên kế hoạch nâng cấp máy chú
Kịch bản được lạo ra cho kiểm thữ áp lực là không thực tổ Kịch bân được tao ra
không có thời gián nghĩ (ink time) và lưu trữ (cach) dược ấn đi dé nbanh chong tao
được múc tải cao cho máy chủ Khi đó hành vì của mảy chỗ nhanh chóng được xác định, đánh giá
‘Vi đụ một ứng dụng web có thể đáp ứng tối đa là 1000 người sử dụng, đồng thời Yêu cầu kiểm tra hành vi của ửng đụng khi yêu cầu gửi về máy chỗ lớn hơn 1000
người sử dụng đồng thời.
Trang 20- Dũng một công cụ kiểm thứ hiệu năng mô phóng có 1100 người đang đẳng thời sứ dụng ứng dụng Không tiếp tục tăng tái cho máy chú
-_ Quan sát: Kết quả xử fia may chủ với 1000 yêu câu đầu, TÚ yêu cầu sau
đó bị từ chối như thẻ nào, máy chủ có hành vi như thẻ nào (khởi động lại hoặc bị
treo)
~_ Từ đó dưa ra kết luận lình trạng cũ
ứng đựng khi dược dạt ở trức tải mnục tiêu
(âi đối đa) và trong điều kiên quả tải
Kiém thi Spike (spike test)
thờ
trong tải cực cao rong một thời gian gian ngắn |3, 5| Kiểm thử giúp xác nhận liệu
Kiểm thử nảy rất giống ki áp lực (sIress tcsl) nhưng hệ thống được đặt
năng hệ théng trong điển kiện tải cao đột ngột trong giờ giao dich cao điểm của ứng, đụng Kịch bản kiếm thử được tạo ra cha kiếm thử nảy khỏng thực tế Thời gian đợi
(Think time) được lờ đi và lưu trữ (cache) được ân đi trong kịch bản
Kiểm thử chịu đựng (endurance test)
Kiểm thử chịu đựng tập trung vào đánh giá hiệu năng của hệ thống với mức tải
sử dụng được định trước trong khoảng thời gian kéo dải Kiểm thử này còn gi
vấn dẻ liên quan dẫn bộ nhở vả trản bộ dệm xảy ra néu tiếp tục sử dụng hệ thống,
tìm
Ngoài ra nó còn giúp đánh giá tính sẵn sảng của hệ thống dựa vào khoảng thời gian
thực hiện kiếm thứ Kiểm thử chịu đựng chạy với 70%- 80% của tãi mục tiêu, trong, kịch bân có cái đặt thời gian nghĩ giống như Irong thực tế
Kiểm thử cô lập nghẽn cỗ chai (bottlencck isolation test)
Kiểm thử cô lập nghẽn cố chai là kiểm thử được thực hiện trên hệ thông hoặc một thành phân cu thé dé tim ra các vẫn dé va nguyên nhân ảnh hưởng đến hiện năng của hệ thêng [5] Nó thường được xây đựng sau kiếm thử tải (load test) để đã đảng hơn trong việc tìm ra các vẫn để cụ thể của hiệu năng Kiểm thứ nảy được thục hiện linh động để gỡ rồi (debng) những vẫn để của hiệu năng
Kiểm thử khối lượng (volume test)
Kiểm thứ khối lượng là kiểm thứ hiệu năng cho hệ thống khi nó phái thao tác với một lượng dữ liệu nhất định Số lượng này có thể là kích thước bản ghi di liệu
hoặc nó cũng có thể là kích thước của Ï tập tín
‘Vi dy néu bạn muốn kiểm thử hiệu năng cho một ủng dựng mã dữ liệu của ứng đụng có khối lượng ban ghi cy thé thi bạn phải tạo một đữ liệu có số lượng ban ghi như vậy rồi thực hiện kiếm thủ hiệu năng TIoặc nếu ứng dụng của bản phải doo/ghi
trên một tập thụ, bạn sẽ phải tạo một tập tin mẫu cỏ kích thước như yêu cầu trong hệ
thống rẻi thục hiện kiểm thử hiệu nắng
Trang 21Khi thực hiện kiểm thử hiệu năng cho phần mém quản lý trưởng học được xây dựng trên nên web (tình bảy chỉ tiết rong Chương 3), tôi cũng đã thực hiện các loại kiểm thử sau: kiểm thử cơ sở, kiểm thử tiêu chuẩn và kiểm thứ tải Trải nghiệm trong, thực tế che tôi thấy thực hiện kiểm thử cơ sở là rất cần thiết, Không phải cứ sử dụng, phần mềm kiểm thử hiệu năng dễ ghi lại kích bản kiểm thử thì kịch bản luôn chạy đúng Do giới hạn của phân mềm kiếm thử mà nhiêu khí kiểm thử viên phải tồn thời gian để chỉnh sửa cài đặt các tham số, biến đữ liệu động như Ceokie, Section ld, v.v cho kịch bản để dam bảo chạy đúng như trong thực tế Trong khi kiểm thử tải cho hệ thống này tôi nhận thảy thời gian phản hỏi, thông lượng trong kết quả kiểm thử nhận được chịu ảnh huởng từ cấu hnh may ch ay kịch ban kiểm thủ và băng thông mạng
trong khi thực hiện
1.7 Công cụ kiểm thử hiệu năng
1.71 Công cụ kiểm thũ hiệu năng
Gó rất nhiều phan mềm kiếm thử hiệu năng trên thị trường Nó có thể được chỉa thành hai loại chính: phần mềm mã nguồn mở và phần mềm có bản quyền Phản mềm
có bản quyên thường hễ trợ nhiều chúc năng, kết quả kiểm thử hiệu năng được thé hiện trực quan trong các biểu để giúp ta dé đảng phân tích đánh giá hiệu năng, và kết quá nảy có độ tin cậy cao Con các phản mềm mã nguồn mỡ thì thưởng hạn chế về chức năng, ít dạng biểu đỏ biêu diễn kết quả kiểm thở và đôi khi khó sử dụng Những,
tổ chức có tiêu chuan vẻ hiệu năng cho các ứng dụng và họ mong muốn kết quả kiểm
thử có độ chính xác, tin cây cao thị thích sử dụng những phân mềm có bản quyền như
HP Load Rurmer, HP performance Center, Segue's SilkPerformer, Empirix F-Test, Radview Webload, Compuware QA-Load, v.v Còn với những tổ chức nhỏ do lợi nhuận thì phân mềm mã nguễn mỡ là lựa chọn duy nhất Một vài phần mềm mã người
mở hay được các công ty nay hra chon str dung 14 Jmeter, OpenSTA
Một số gông cụ kiểm thử hiệu năng thông dụng,
© AP's Load Runner/Performance Center (cd ban quyén)
Radview’s Webload (cd ban quyển) Compuware’s QAlead (eó bàn quyền)
Borland’s SiIkPerformer (có bản quyền)
Tmpirx°s e-Load (có bản quyền)
Open STA (nã nguồn mở) Treter (mã nguễn mở)
Grinder (ma ngnén mé)
Trang 22172 Tiéu chudn dé chon mét công cụ kiểm tu hiệu năng
Để chẹn được một công cu kiểm thử hiệu năng phù hợp với ứng dụng thì chúng
ta nên làm những bước sau [5]
1 Xem xét những siao thức mả công cụ hồ trợ Công cụ có hồ trợ cho ứng, dụng,
Web và ứng dụng khách mày -chủ máy,
ie Kiểm tra xem công cụ có cung cấp chức năng tạo kịch bản kiếm thứ
w Kiém tra công cụ cỏ cung cấp những thudc tinh dé xae dinh những phiên giao
Tiêu, thao tác với mm
kieh bản được thực hiện trên trang ứng dụng
4, Kiểm tra công cụ có lựa chọn thiết lập trạng thái tăng, giảm và én định trong khi thực hiện kiểm thi
tra công cụ có chức năng để quản lý tài nguyên hệ thống trong khi kiểm
thử
6 Kiểm tra có thể giám sót thông qua hệ thông tích hợp khác
7 Kiếm tra công cụ có cung cấp kết quả kiểm thử theo một định dang dé doc
(dinh dang html or doc)
8 Kid
(pindn giao dich’gia
tra công cụ có cung cáp đây đủ thang tin về Hits/giây, dụng lượng
và bytes/giây), mô phòng, nhiều người đừng giầy, giám
sal lải nguyên hệ thống và thông tím chỉ tiết về lỗi (giây
we Công cụ không nên chiếm nhiễu tải nguyên trên máy khách nó làm cho kết quả kiểm thữ lãi không thực tế
Chọn một phân mêm kiểm thủ hiệu năng tốt phủ hợp với đặc thủ của ứng dụng cần kiểm thứ không phải là việc quá khó với kiểm thứ viên Phần mềm kiểm thử sẽ mô phóng người sử dụng cuối đúng như kịch bản kiểm thứ vả tính toán đưa ra các thông
tì chỉ tiết về hiệu năng của hệ thông Từ kết quả đó kiểm thử viên phải phân tích đưa
ra kết luận về hiệu năng hiểu tại của hệ tông Kết luận dó bao gdm hiệu năng hiện tại, các yếu tố ảnh hưởng dến hiệu nắng của hệ thông và nguyên nhân cdc van dé Nhu vay
kết luận của
im thử viên về hiệu nắng của hệ thông mới là công cụ tốt nhất phân
tích, đánh giả hiện năng của hệ thông [5]
Trong phan ap dung thực nghiệm, đễ thực hiện kiểm thứ tải cho phần mềm quản
lý trường học dược xảy dựng trên nên web tôi cũng đã tìm hiểu một số công cụ và cuối
cùng chon phản mềm mấ nguồn mỗ Ineter Công cự có đầu đủ chức năng giúp tôi có
thể thực hiện được kiếm thử cổ sở, kiểm thử liêu chuẩn và kiểm thử lãi Trong thực tế
có nhiễu công ty đã sử đụng sông cụ này để kiểm thử hiệu năng do phần mềm này có
nhiều tài liệu hướng dẫn sử dụng và không mắt phí khi sử đựng Ngoài ra công đồng,
Trang 23mã nguồn mở cũng đã xây dụng thêm một số thu viện mà có thể tích hợp với Imeter
để kiểm thử viên có thể thu thập thêm nhiều số liệu khác nhau cho hiệu năng hệ thống Trong phần thực hiện kiểm thử tải tôi cũng sử đụng một thư viên mở rông của Jmeter
để thu thập các số liêu về mức dò sử dụng CPU, đoo/ghi và bộ nhớ trên máy chủ
Trang 24CHƯƠNG 2 CÁC KỸ THUẬT TRONG KIEM THU HIEU NANG
2.1 Xác định tải công việc của hệ thống (workload of system)
2.1.1 Dinh nghia
Tải công việc (workload) là sẻ lượng yêu câu, giao dịch người đủng gửi về máy
chủ xử lý trong thời gian người sử dụng truy cập hệ thống hoặc trong khi thực hiện
kiểm thử hiệu năng Như G.Kotis từng nói, “tài công việc có thẻ được xác định như một tập các đầu vào từ những người sử dụng gửi tới hệ thông * [Š]
Tải công việc có thể là tự nhiên hoặc nhân tạo Tải công việc tự nhiên hay là tải
công việc thực tế mả máy chủ nhận được khi ứng dụng được triển khai sử dụng trong thực tế Tải công việc nhân tạo được tạo ra bằng cách sử dụng phân mẻm kiểm thử
hiệu năng mô phỏng hành vì của người sử dụng trong thể giới thực khi ho tương tác
với hệ thông và nó giỏng với mô hình tải công việc tự nhiên Đặc điểm của tải nhân tạo là có thẻ điều khiển được
Tai công việc được tạo ra khi kiêm thử giống phải giông tải công việc trong thực
tế của hệ thông Nều có nhiều sự chêch lệch giữa tải kiểm thử vả tải công việc trong, thực tế thì kết quả kiểm thử sẽ không thực sự là hiệu năng của hệ thống khi được đưa
vảo sử dụng trong thực te
21.2 Kiểu tải công việc
Tải công việc của hệ thông cân được phân tich và thiết kể Điều đó sẽ giúp chúng
ta hiểu được người sử dụng cuối vả mô hình sử dụng [5] Nếu tải công việc của máy chủ không được phân tích một cách đúng đắn vả cặn kẽ thi kiểm thử hiệu năng có thể
tạo một tải công việc khác với tải trên máy chủ trong thực tế Một vải loại tải công, việc: tải ôn dinh (Steady-State Workload), tải bậc thang (Inclined Workload), tai bing
nổ (Bursty Workload) và tải tai théi gian cu thé (Time Specific Workload)
Tai céng viée 6n dinh
‘Tai ôn định là một tải không đổi theo số người sử dụng hệ thông cùng lúc hoặc củng một hảnh động, Số người sử dụng ứng dụng ở bất kỷ thời điểm nảo là một hằng,
số, Nó không mô tả tải sử dụng trong thời gian thực, tải ôn định được sử dụng kiểm thử tính ồn định của hệ thông
Trang 25Tải công việc sườn dốc (inelined workload)
Tải công việc sườn đốc tăng theo số lượng người đang sử dụng hoặc số người củng thực hiện một hãnh động trên hệ thông Kiểm thứ bắt đâu với số người sử dụng, nhỏ nhất vả số người dụng ảo tăng định kỷ từng bước một Kiểm thứ tải sử dụng mô hình tải sườn đốc đề xác định số người dùng lớn nhất mà hẻ thông hỗ trợ
Hình 2.2: Tải công việc sườn dốc [S}
Tai công việc bùng nỗ (bursty workload)
Tai bung né miéu tả truy cập cao điểm đột ngột của hệ thống trong một khoảng thời gian ngắn Tải này được tạo ra khi kiểm tra hiệu năng của hệ thông trong điều kiện tải tăng đột ngột Thỉnh thoảng trong khi kiểm thử ức chẻ, tải bủng nỗ được sử dụng để xác định hiệu năng hệ thông khi truy cập lên đến đỉnh điểm
Hình 2.3: Tai cong viée bing né [5]
Tai cong viée theo thai gian
'Với một ứng dụng được truy cập bởi nhiều người dùng ở những vùng địa lý khác
nhau, ở những múi giờ khác nhau thi tải công việc thực tế sẽ rất khác nhau theo thời
gian Mô hình người sử dụng sẽ có mức cao vả thấp lặp lai trong ngay va tai lớn nhất
của ứng dụng trong khoảng thời gian chồng chéo múi giờ Khi đó tải công việc của
ứng dụng nên được mõ tả theo thời gian.
Trang 26
Hình 2.4: Tải công việc theo thời gian [5]
313 Phân tích tãi công việc của hệ thông
Phân tích tải công việc trước khi tiền hành kiểm thử hiệu năng lả việc cần thiết phải làm để đảm bảo tải công việc tạo ra trong kiểm thử giỏng tải công việc của hệ thống khi triên khai trong thực tẻ [5, 7] Phân tích tải công việc lả: xác định tổng tải công việc của hệ thông phải xử lý, loại yêu cầu mả người dùng gửi đến máy chủ, luồng,
chức năng được sử dụng thường xuyên, chu kỳ sử dụng của người đủng, thời gian
người dùng cuối sử dụng mỗi lần vào hệ thông, thời gian giữa các giao dịch, phân loại người sử dụng, số người sử dụng ứng dung, khi nao may chu chiu tai cao nhat [5] Dé phân tích tải công việc của hệ thông chúng ta cỏ thẻ dựa vào mỏ hình hành ví khách hàng hoặc phân tích tập tin web log (nếu trang web đã được đưa vào sử dụng), v.v
Dựa vào mô hình hành ví khách hàng chúng ta có thể xác định được khoảng thời
gian giữa các phiên giao dịch, số lượng người dùng, luong su kiện được sử dụng,
thường xuyên và chu kỳ sử dụng cửa người sử dụng,
Phân tích tap tin log trên máy chủ của trang web cỏ thể xác định: số người sử
dung trang web, tong số yêu cảu gửi vẻ máy chti (vi du: hinh anh, trang html), s6 trang
được hiển thị (number of page views), ngày nhiều người sử dụng nhất, giờ nhiều người đồng thời sử dụng, số byte được truyền từ máy chủ tới máy khách ở bắt kỷ thời điểm nao (throughput/Bytes transferred)
2.14 M6 hinh héa tai cong viée (workload)
“Tuân tư các bước dé mô hình hóa tải công việc của ứng dụng:
Bước 1: Dựa vào yêu cầu về hiệu năng để xây dựng mô hình tải công việc Chủng ta dựa vào yêu càu hiệu năng đẻ mỏ hình hóa tải công việc cho hệ thông, cân kiểm thử Với các yêu cầu hiệu năng khác nhau thì mô hình tải công việc để xác
định trước khi kiểm thử cũng khác nhau Ví dụ, nêu chúng ta xác định tài công việc
của máy chủ đẻ xác nhận hệ thông có thẻ xử lý giao dịch tăng 10% vào cuối năm, khi
đó tải công việc can được tiên hảnh đánh giá số lượng khách hàng, số giao dịch xử lý trong 1 giây, tình trang sử dụng CPU và IO, tỷ lệ yêu câu gửi đến vả thời gian nghĩ
(think time) của người sử dụng Nếu mục tiêu của kiếm thử hiệu năng lả ước tinh thời
Trang 27gian phản hỏi (response time) cho dy bao kinh doanh ting 20% người sử dụng, khi đo
tải công việc đuợc thiết lập dựa vào các thông số của kiểm thử trước đây Một số chính sửa trong các thông số trước dây được thực hiện trước khi thực hiện kiểm thữ
Tước 2: Phân tích tải công việc và xác định mô hình yêu cầu
Nếu chủng ta không hiểu khối lượng công việc cúa ứng dụng thì mô hình tối
công việc không thễ dược xây dựng Các luồng chúc năng, kiển khách hàng truy cập, Trục đích của người sử dụng cuốt, tổng số người sử dụng ứng dụng phải dược kiểm thử
viên tìm hiểu rõ Ngoài ra kiếm thử viên phải tìm các tỉnh huống ảnh hướng lớn đến tãi công việc của hệ thống Đặt mình vào ví trí người sử dụng cuối của ứng dung dé đưa
ra các thêng tin như cáo chức năng hay được sử dụng, thời gian phản hồi mong muốn của người dùng, số giao dịch trong giờ cao điểm và giờ nghị, v.v Phân tích hệ
trong nhiéu tinh huéng vá theo mục đích sử dụng khác nhau sẽ giúp chúng ta hiểu rõ hơn về tái công việc hệ thống Nếu ứng dụng đã được triển khai sứ dụng trong thực tế
thì tập tim log trên nuáy chủ chứa nhiều thông hữu ích để phân tích tải, mô bình yêu câu nhận được trén may chit [5]
hình phân bề thống kẻ cho tải của hệ thống sẽ cho ta biết tải lớn nhất của hệ thống cần thực hiện kiểm thử
Bước 4: Thu thập số Hiện về sự tiêu thụ tài nguyên phẫn cứng
Theo tập tin lòg trên mảy chủ chủng ta biết được các giao dich dién ra giữa may khách và máy chủ của hệ thống, Đặt hệ thông trong diễu kiện tái thấp và thực hiện các
giao địch từ đó xác đình được số liệu về việo sử đụng CPU và HO của hệ thống
ước 5: Xây dựng mô hình tải
Chung ta di xác dịnh được các giao dịch trên máy chủ và yêu câu vẻ sử dụng tài
Trang 28Bang 2.1; Vi duvé mé hinh tai sau khi xay dung [5]
2.21 Môi trường kiểm thie
Kiểm thử viên phải tìm hiểu môi trường sản phẩm hay là môi trường triển khai
hệ thống trong thực tế Ngoài ra kiểm thử viên nên biết kiến trúc triển khai ứng dụng,
trọng môi trường sản phẩm va yêu cau đội phát triển cải đặt môi trường kiêm thử
giỏng với sản phâm đẻ thực hiện kiểm thử hiệu năng [5]
Nếu môi trường sản phẩm và môi trưởng kiểm thử có sự khác nhau vẻ phân cứng, triển khai ứng dụng thì sẽ mang lại rủi ro cao lả hiệu năng sau khi kiêm thử không phải
lả hiệu năng thực tế của hệ thông trong thực tế Vỉ vậy môi trường kiểm thử nên được cải đặt giống với môi trường sản phẩm
Vi dụ nếu một ứng dụng ba tầng triển khai trong môi trường kiêm thử lại được triển khai hai tầng trong môi trường sản phẩm thì hiệu năng của hệ thông trong thực tế
sẽ khác rất nhiều hiệu năng đã được kiểm thử
Hầu hết kiểm thử hiệu năng được xây dưng trong môi trường có câu hình thấp hơn câu hình máy chủ trong thực tế do vân đề về tải chỉnh Mặc đủ vậy chủng ta nên xây dựng kiểm thử hiệu năng trong môi trường giỏng như câu hình máy chủ của sản
phẩm Nếu môi trường sản phẩm vả môi trường kiểm thử có sự khác nhau về phân
cửng triển ứng dụng thì sẽ mang lại rủi ro cao là hiệu năng sau khi kiếm thử không,
phải là hiệu năng thực tế của hẻ thống trong thực tế Kỹ sư kiểm thử hiệu năng cần phải tìm hiểu môi trường, kiến trúc triển khai ứng dụng vả đảm bảo đúng phiên bản phần mềm (phiên bân ứng dụng, phiên bản máy chủ, hệ điều hành, thư viện nếu cỏ )
được sử dụng triên khai trong môi trường kiểm thử giống như mi trường sản phẩm Phan mem (máy chủ web, máy chủ ứng dụng hoặc phiên bản phan mém may chi co
sở dữ liệu, điều kiện bản quyền, mức độ log, những quy trình khác ), phan cimg
(CPU, bộ nhớ và câu hình đĩa), mạng (lưu lượng và chỉ tiết băng thông mạng) khác
nhau trong hai môi trường kiểm thử vả sản phim can được xác định vả lưu lại để tra
cửu trong tương lai
Trang 29
Kiểm thử hiệu năng nên được xây dựng trong môi trường riêng biệt tránh tãi không cần thiết dé đánh giá chính xác và những vận để ảnh hưởng đến hiệu năng,
Ngoài ra nêu kiểm thủ trong củng môi trường nó sẽ lâm ảnh hưởng đến những, hoạt động khác trong quả trình phát triển dự án nếu trong quả trình kiếm thử tải máy chủ bị
lỗi
Nếu mục tiêu của kiếm thủ lá xác định yêu câu về tăng thông hỗ trợ người dụng
thì cân kiểm thử hiệu năng trong một mạng riêng biệt Xêu mạng trong quá trình kiếm thử có giao địch khác thì tổng đữ liệu được gửi qua lại giữa máy chủ và máy khách
khéng dam bao độ chính xác cao Trong trường hợp này cách tốt nhất là xây đựng một mạng LAN riêng biệt và chỉ có máy chủ va máy kiểm thử đặt trong mạng LAN đó
223 Tav tai (Load Generatars)
Tổ tạo tãi nhiền người sử dụng hệ théng nhu trong thực tế chứng †a sử đụng phản
mềm kiểm thử hiệu năng, Hầu hết các phẩn mềm kiểm thứ hiệu năng đều có chức
năng tạo tái được sợi là Load Generator Khi ching ta cai đặt mô phóng 10 người sứ
dụng hé théng thi phan mém kiểm thứ tạo 10 luỗng hoặc tiến trình gửi yêu câu từ máy
khách đến máy chủ theo thời gian nghĩ (thìnk Hune) đã được cải đặt trong kịch bản
kịch bản theo lịch đặt trước Việc lên lịch kiểm thử giúp chứng Ta có thế điển khiển tãi theo thời gian, vừng địa lý khác nhau, v.v Theo thời gian đã cái đặt thi phan mém tự
động tao người sử dụng áo sử dụng hệ thống theo kịch bán kiểm thử Như vậy các phần mềm kiểm thứ hiệu năng giúp ta tạo và cải đặt tái cho hệ thống theo đúng kịch băn kiểm thữ
224 Tạo dữ liệu kiểm thử (Test dafa generator)
‘Trong kiểm thử hiệu năng, hấu hết thời gian kiểm thứ diễn ra trên máy cả nhân
do dó số bản ghí đữ liệu trong kiểm thử sẽ íL hơn dữ liệu của hệ thông trong thực tế Số lượng bãn ghi của lệ thống trong thực tế phải được nghiên cửu (lựa ra một con số cụ thể và chính xác Khi dé chúng ta cd thé tao được số bản ghi đữ liệu giống như lrong, thực tế để thực hiện kiếm thử
Thực hiện kiểm thử hiệu năng với dữ liệu như trong thực tế giúp ta đánh: giả dúng, hiệu năng của hệ thống và tìm được những vẫn dễ tìm ấn trong truy vẫn dữ liệu (nều có) Thật vậy chúng ta có thể thấy thời gian truy van đỡ liệu có thể không đáng kế với
Trang 301000 bản ghỉ nhưng khi dữ liệu có 10 000 bản ghỉ thì thời gian truy vấn sẽ ánh hướng
nhiều phụ thuộc vào các sắp xếp bản ghi, các chí mục hoặc câu truy vẫn dữ liệu
2.3 Xây đựng kịch bản kiểm thử hiện năng
23.1 Chọn kịch bũm kiểm thí hiệu năng
Kiểm thử chúc năng là kiếm thử tính đímg, 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]
Tuy chọn kich bản Irong kiểm thử Ì 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 đùng sử dụng thường, xuyên khi sử đự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 rang lại kết quà mong đợi [5,7]
23.2 Vide hich ban kidm tut higu ning
Kịch bản kiểm thử được tạo ra bằng cách sử đụng phân mềm kiểm thử hiệu năng
để ghỉ lại hành động của người ding như trong thục tế Tưy nhiên do hạn chế của phần mềm mã thời gian ngbi (think time) va một số tham số kháảe không dược ghi lại trong, kịch bản Vi 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 niê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 tước để dé dàng tham chiêu đến giao địch cụ thể
© Cũng cấp quy mớc đặt tên phù hợp chơ 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
© Cai dit théi gion nght (think time) hofc thoi gian doi (waiting time) gitta oie
lành động cửa người sử dụng dễ mồ phỏng dùng hành vị 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 dộng của đữ
liệu và cho những người dùng khác nhau
œ Kiếm soát giá trị dông dược lao bởi máy chủ như giá trí phiên lu việc
(eessien) để tạo kịch bản đủ lớn cha việc mô phỏng nhiễu người sử đựng
«- Có thể sửa đối logio kịch bản để kiểm soát hành vi người sử dụng mã vẫn dam
bảo mô phỏng đứng hành vi của người đùng,
Trang 31Cải đặt thời gian đợi (think từne) giữa mỗi giao dịch rất quan trọng để tạo ra tái trên may chủ như trong thực tế Chúng †a 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 da được đưa vào sử dụng trong thực tế) Thời gian đợi có thẻ dặt ngẫu nhiên khoảng 209⁄4- 25% đề phủ hợp với người dùng,
cấp thời gim nghĩ lớn (túnk Lưne) giảm tải mảy chỗ, giảm thời gian nghĩ (think time)
tải trên máy chủ số cao Nếu thời gian nghĩ
lai trên máy chủ giảm Cung
tăng tải máy chủ Như vậy đặt thời gian đợi khi xây đựng kịch bãn là rất quan trọng, Nếu thời gian đợi ((hink tìme) đượ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
ó thể
Tử máy chủ õ môi vải dữ liệu động được lạo rø cho mỗi người đừng và
có thể là duy nhất cho mỗi người dùng, Ví dụ session iđ của mỗi người đứng là duy
nhật Nếu máy chủ cung cap sesion id cda người sử đụ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 iđ 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ử
2.4 Thục hiện kiểm tha higu nding (Performance test execution)
241 Những chuẩu bị trước khi kiểm thứ hiệu năng
Bước 1: Hiểu mô hình người su ding (workload model) cia hé thing thông qua
việc phân tích mõ hình người sử dựng hoặc từ tập tin lop trên máy chủ
Bước 2: Thiết kế ca kiểm thử củng với các tham số như chiến lược ting (ramp
up), théi gian kiểm thữ, cải đặt thời gian đợi (think time), kịch băn kiểm thử dược thực
tiện, các điều kiện tải, các luại kiểm thữ được tiến hành cùng với chuẩn qua/lỗi, Dựa
chức năng của phần mềm Sử dụng phan mẫm đã lựa chọn và phát
triển kịch bản kiểm thử mô phỏng người sử dụng truy cập thực tế Tạo dũ dữ liệu kiểm thử trong kịch ban đề giả lập nhiều người ding khác nhan sử đụng đữ liệu khác nhau
Bước 4: Đâm bảo môi tường kiểm thử dã sẵn sảng, không có người sử dụng truy
cập ứng dụng trong khi thực hiện kiểm thử vả máy chủ được cách ly với bất kỳ sử
dụng khác.
Trang 3224.2 Phuong phdp thc hién kiém thie higu nang
Sử dụng phân mềm kiểm thử và kịch bản đã tạo sẵn chủng ta thực hiện kiểm thir hiệu năng cho hệ thông Trong thời gian thực hiện kiểm thử hiệu năng, đặt máy chủ trong một tải ôn định khoảng 15- 30 phút phụ thuộc vào mô hình sử dụng Kiểm tra hiệu năng của hệ thông với n
đó đưa ra số
u tỉnh huồng trong các điều kiên tải khác nhau vả sau
hiệu năng về thời gian phản hỏi, thông lượng vả sử dụng tải nguyên
của máy chủ Kịch bản kiểm thử nên được cải đặt có đủ thời gian cho việc tăng số
người sử dụng trước khi đặt hệ thống trong tải mong đợi trong một khoảng thời gian
Tất cả các đánh giá vẻ hiệu năng máy chủ chỉ được thực hiện trong khoảng thời gian
tải ôn định [Š]
'Ví dụ: Đánh giá hiệu năng của ứng dụng với 100 người dùng thực hiện 3 kịch bản:
(1) Kịch ban giao dich A — 60% tải mục tiêu
(2) Kịch bản giao dịch B — 30% tải mục tiêu
(3) Kịch bản giao dịch C — 10 % tải mục tiêu
‘Theo phan tích kịch bản A được thực hiện 6 lan trong 1 giờ, kịch bản B thực hiện
2 lần trong 1 giờ và kịch bản C được thực hiện 1 lần trong 1 giờ Biết rằng tải cao điểm trên máy chủ là 200 yêu cảu/] giây trong giờ cao điểm Chúng ta có một chiến lược kiểm thử như sau:
[Scenarios (10 minutes) Stable Load Duration 40 minutes) (10 minutes)
Ví dụ chiến lược kiểm thử tải [5]
Dựa vào Hinh 2.5 ta thây chiến lược kiểm thử tải là: đặt hệ thông trong tải mục
tiêu 100 người truy cập hệ thông trong khoảng thời gian tải ôn định là 40 phút Trong,
thời gian tải ổn định khi cả 3 kích bản giao dịch đang thực hiện trong 10 phút (từ
40:00 đền 50:00 mm:ss), tải máy chủ được tăng lên với 200 yêu câu/giây
Kich bản kiểm thử ở trên đã đạt yêu cầu kiểm thử hiệu năng của ứng dụng và nó cung cấp hiệu năng hệ thống khi sử dụng hệ thống thực Nhưng kịch bản ở trên đã bỏ qua là mực độ tin tưởng của máy chủ khi thao tác 200 yêu câu/1 giây Nó mới chỉ đưa
ra một trường hợp trong khoảng thời gian 10 phút cả 3 kịch bản đang được thực hiện
Do đỏ chúng ta cỏ thé thực hiện một kiểm thử khác là chạy cả 3 kịch bản giao dịch cùng nhau it nhất 20 — 30 phút và tăng tải máy chủ lên 200 yêu cảu/] giây đề thu thập thêm thông tin về số liệu, thời gian phân hỏi, sử dụng tài nguyên máy chủ
Trang 33Khi thực hiện kiểm thứ tài nên tập trung đánh giá hiệu năng máy chủ trong mồ hình sử dụng thực Dễ tạo độ tín tướng cao khi phân tích hiệu năng thì nên thực hiện 3 dén 4 mẫu kiểm thử và thu thập các số liều vẻ thời gian phản hỏi, thông lượng, mức dộ
sử dụng CPU, Từ dỏ so sánh, đánh giá và dựa ra kết luận chính xác về hiệu năng của
Hệ thông
243 Lời khuyên khi thực hiện kiểm thứ tải và kiễm thứ úp lực
Kiểm thử tải (load test)
Thực hiện ít nhất 3 vòng kiếm thử tãi cần lên kế hoạch trước khi đặt hệ thông trong tải mục tiêu Kiểm thứ tải thấp cho hệ thống chiếm 30 % tải mục tiêu, kiểm thử tải trung bình chiếm 60% trong tải mục tiêu và còn lại là kiểm thữ tải cao chiếm 100%
n thử
dẫn giảm trong một khoảng thời gian và nó cũng được củi đặt trong kịch bản k
Trong vùng tải ốn định thì sẽ người sử dựng hệ thống là không đối khi đó tải trên máy chủ tải trên máy chủ cũng không đối Chúng ta thu thập số liệu về hiệu năng máy chủ
trong khoảng thời gian tải ốn định [5]
Kiém thir 4p lure (stress test)
Không giống nh kiểm thử tải, kiểm thử áp lực (stress test) được xây đựng với mục dich gây áp lực cho hệ thống để tìm ra điểm đừng (breakpoint) va nguyén nhân
ảnh hưởng dến hiệu năng của hệ thống (néu có) [5] Hành vị của hệ thông dược xác
định khi nỗ được đặt ở mức tái cao Thông thường khoảng 10% - 20 % tái dược cộng,
thêm vào mức tải lỗi đa của hệ thống được đạt làm mức tải cho kiểm thử áp lực Khi thực hiện kiểm thử áp lục chứng ta tiên lăng chậm tải cho hệ thống cho đến hi xuất
tiện điểm đừng Œareak point) Kiểm thử này có thể thực hiện một vải
hành vị của hệ thông và nâng cao độ tin cậy khi phân tích hành vỉ này
an thu thập
Sau khi kiểm thứ tâi vả áp lực (stress test), phụ thuộc vào yên cầu hiệu năng của
hệ thống mà các kiểm thử khác như kiểm thử cliu đựng (endurance), Spike test cd
thể thực hiện đẻ xác nhận thêm bánh vĩ và hiệu năng của hệ thống
2.5 Bao cho kiém thir higu ning (Performance test reporting)
Phương pháp viết bản báo cáo kết quả kiểm th hiệu năng thì hoàn toàn khác báo cáo kết quả kiểm thử chức nắng Trong kiểm thứ hiệu năng không dễ dàng đưa ra kết
hiận đứng/đỗi như trong báo cáo kiểm thử chức nấng Bao cao kiểm thử hiệu năng dua
Trang 34các kết luận về hiệu năng, các yêu tế và nguyễn nhân ảnh hướng đến hiệu năng cửa hệ thống (néu có)
251 Béo cdo kiếm thử hiệu năng
'Thông tin viết trong bao cáo gốm: yêu cầu hiệu năng cần kiểm thứ, tổng quan về
hệ thống, các kịch bản kiểm thử, mô hinh phân bố người sứ dụng vả kết quá kiểm thứ Mặc đù một số thông tin dã được nẻu chỉ tiết rong Wi hiệu kế hoạch kiểm hổ nhưng trong khi việt báo cáo chúng ta nên cùng cấp đễ người đọc báo cáo dễ đàng hiểu được
kết quả kiếm thử [S]
Théng tin quan trong nhất trong bao cáo là chỉ tiết thời gian phản hỏi, thông lượng trong các giao dịch, cáơ chỉ só về mức dộ sử dụng tải nguyên phản cứng, lỗi ứng, dụng hoặc những lỗi phát sinh trong khi kiểm thủ Trong báo cáo nên có một vài biểu
dễ kết quả kiểm thử và guải thích cho kết quả kiểm thử cho mỗi biểu đổ Các kết luận
về yếu tổ, nguyên nhân ảnh hướng đến hiệu năng của hệ thông cẩn được rêu rõ và giải
thích Kết quả báo cáo riên có sự mm gia phân tích
Bao cao kiểm thử hiệu năng sẽ có nhiều người đọc khác nhau như người làm
kinh doanh (busiress people), người phản tích , người quán lý máy chủ va người quán
lý dữ liệu Vi vậy để tất c mọi người đều hiểu kết quả thi cáo kết luận và giải thích trong báo cáo cần có thông tin chỉ tiết về kỹ thuật nhưng cũng dỗ thông tín cho người Jam kink doanh liểu dược Một cách khải quát báo cáo kiểm thử hiệu năng nên có thông tin sau
1 Mục đích của kiểm thủ hiệu năng (cam kết mức độ dịch vụ cung cấp)
3 Môi trường kiểm thử và câu hình máy chủ
Kịch bản kiểm thử (theo bản kế hoạch)
6 Truc quan hóa vẫn đề, nguyên nhân ảnh hưởng đến hiệu năng Giêu có)
7, Kết luận về hiệu năng vả giải pháp để cái thiện hiệu năng,
Kiểm thủ viên nên hiểu trực quan trong báo cdo gdm những phan sau:
iéu dé (Kiéu dé thi, trục X và Y, tiêu đề và màn phù hợp),
ø Biên hiệu răng (rấL I và phần nội bật rãi xã
e_ Thuật ngữ (hỗ trợ cho biếu đỏ)