Thông tin tài liệu
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
LA THỊ THÀNH
NGHIÊN CỨU PHƯƠNG PHÁP KIỂM THỬ HIỆU NĂNG
TRONG QUÁ TRÌNH XÂY DỰNG WEBSITE
Chuyên ngành: Khoa học máy tính
Mã số: 60.48.01.01
Người hướng dẫn khoa học: PGS.TS HUỲNH QUYẾT THẮNG
TÓM TẮT LUẬN VĂN THẠC SĨ
HÀ NỘI – 2013
1
MỞ ĐẦU
Kiểm thử hiệu năng website để tìm ra điểm “thắt cổ chai” của
hệ thống trước khi chúng xảy ra trong môi trường sử dụng thực. Nó
có thể giúp giải quyết các vấn đề chẳng hạn như sự sẵn sàng của máy
chủ web cho số lượng ngày càng cao người sử dụng, khả năng sống
sót trong lưu lượng truy cập của người dùng.Việc bỏ qua các vấn đề
kiểm thử hiệu năng website trước khi chuyển giao cho người sử dụng
có thể dẫn đến số người truy cập website thấp và sự tồn tại của
website khó được đảm bảo. Kiểm thử hiệu năng website càng diễn ra
sớm bao nhiêu thì việc tìm ra các lỗi càng sớm bấy nhiêu, qua đó kịp
thời có những thay đổi thích hợp để tăng khả năng thực thi của
website.
Nhận thấy tầm quan trọng của kiểm thử hiệu năng website
trong quá trình xây dựng và phát triển web, em quyết định chọn đề
tài: “Nghiên cứu phương pháp kiểm thử hiệu năng trong quá trình
xây dựng website”.
Nội dung của luận văn bao gồm ba chương:
Chương 1: Tổng quan về kiểm thử hiệu năng
Chương 2: Phương pháp kiểm thử hiệu năng trong quá trình
xây dựng website
Chương 3: Áp dụng kiểm thử hiệu năng trong quá trình xây
dựng website trung tâm công nghệ thông tin và truyền thông (CNTT
&TT) của Sở thông tin và truyền thông tỉnh Bắc Giang.
2
CHƢƠNG 1: TỔNG QUAN VỀ KIỂM THỬ HIỆU NĂNG
Kiểm thử hiệu năng (Performance testing) là một khái niệm
phức tạp, là hoạt động công nghệ trả lời cho các câu hỏi liên quan
tới hiệu năng của hệ thống. Trong chương này, chúng ta sẽ xem xét
các khái niệm liên quan tới kiểm thử hiệu năng, lý thuyết về kiểm thử
hiệu năng, đặc biệt là quy trình kiểm thử hiệu năng.
1.1. Các khái niệm
1.1.1. Kiểm thử hiệu năng
Gao và cộng sự định nghĩa kiểm thử hiệu năng như là hành
động để xác nhận hiệu năng hệ thống và đo công suất hệ thống. Có
ba mục tiêu chính được đề cập tới. Đầu tiên là để xác nhận khả năng
hệ thống đáp ứng các yêu cầu hiệu năng. Mục tiêu thứ hai là tìm
kiếm thông tin về công suất và giới hạn biên. Mục tiêu cuối cùng là
để hỗ trợ những người thiết kế và phát triển hệ thống trong việc tìm
kiếm các vấn đề hiệu năng, nút cổ chai và/hoặc để tiếp tục điều
chỉnh, cải thiện hiệu năng hệ thống.
Kiểm thử hiệu năng là tiến trình thu thập và phân tích thông
tin mà trong đó dữ liệu đo lường được tập hợp để dự đoán khi nào
các mức tải sẽ vượt quá khả năng chịu đựng của nguồn tài nguyên hệ
thống.
1.1.2. Thời gian đáp ứng, độ trễ
Thời gian đáp ứng là thời gian trôi qua giữa sự kết thúc của
một yêu cầu trên một máy tính và bắt đầu của sự đáp ứng.
Độ trễ (latency) là thời gian cần thiết để hoàn thành một yêu
cầu. Thời gian cần để dữ liệu truyền từ một máy tính đến một máy
3
tính khác được gọi là độ trễ mạng (network latency). Thời gian để
một trình chủ hoàn thành xử lý một yêu cầu được gọi là độ trễ trình
chủ (server latency).
1.1.3. Sức tải công việc
Sức tải công việc (workload) là lượng xử lý và quản lý lưu
thông được yêu cầu của một hệ thống. Để đánh giá sức tải của một hệ
thống, ba yếu tố cần được xem xét là người sử dụng, ứng dụng và
nguồn tài nguyên.
1.1.4. Độ đo hiệu năng
Các độ đo phổ biến thường dùng là: giao tác trên mỗi giây, số
yêu cầu trên mỗi giây, kết nối đồng thời, thông lượng.
1.1.5. Use-case và Kịch bản
Use – case mô tả các kiểu hành vi của một cá nhân người
dùng.
Một kịch bản test được xác định như một luồng thông điệp
giữa các thành phần tương tác. Nó mô tả một sự tương tác được xác
định bởi hành vi của người dùng và các nhân tố khác của hệ thống.
1.1.6.Test case, test script
* Một trường hợp kiểm thử (Test case -TC) là một tình huống
kiểm tra, được thiết kế để kiểm tra một đối tượng có thỏa mãn yêu
cầu đặt ra hay không. Một test case thường bao gồm 3 phần cơ bản:
- Điều kiện: đặc tả các điều kiện cần có để tiến hành kiểm
tra.
- Đầu vào: đặc tả đối tượng hay dữ liệu cần thiết, được sử
dụng làm đầu vào để thực hiện việc kiểm tra.
4
- Kết quả mong chờ: kết quả mong đợi trả về từ đối tượng
kiểm tra.
* Một kịch bản (Test Script) là một nhóm mã lệnh dạng đặc tả
kịch bản dùng để tự động hóa một trình tự kiểm tra, giúp cho việc
kiểm tra nhanh hơn, hoặc cho những trường hợp mà kiểm tra bằng
tay sẽ rất khó khăn hoặc không khả thi. Các Test Script có thể tạo thủ
công hoặc tạo tự động dùng công cụ kiểm tra tự động. Test Script
được thực hiện khi kiểm thử tự động.
1.2.Vai trò của kiểm thử hiệu năng
Kiểm thử hiệu năng giúp: Đoán trước được những lỗi có thể
xảy ra khi triển khai phần mềm vào thực tế trong môi trường có nhiều
người dùng, tìm ra hiệu năng thực thi tối đa của phần mềm và tìm ra
nơi cần cải tiến cho phần mềm.
Kiểm thử hiệu năng mang các đặc tính ưu việt của kiểm thử tự
động.
Kiểm thử hiệu năng là phương pháp đánh giá một cách hiệu
quả hiệu suất của hệ thống, tự động kiểm tra quá trình giúp tạo ra
thêm những thông tin xác thực, ngăn chặn thời gian chết của hệ thống
và các vấn đề khác.
1.3. Các kiểu kiểm thử hiệu năng
1.3.1. Kiểm thử tải
1.3.2. Kiểm thử sự căng thẳng
1.3.3. Kiểm thử khối lượng
1.4. Quy trình kiểm thử hiệu năng
Hình 1.1 minh họa tổng quan quy trình kiểm thử hiệu năng.
5
Hình 1.1. Quy trình kiểm thử hiệu năng
1.5. Một số công nghệ xây dựng website
Hiện nay có rất nhiều công nghệ được sử dụng để phát triển
website như PHP, Joomla, Drupal, ASP, ASP.NET, JSP, EJB 3.0
Sau đây sẽ đưa ra một vài so sánh cơ bản về các công nghệ này:
6
Bảng 1.1. Bảng so sánh các giải pháp .Net, Java, Joomla,
Drupal
.NET
Java
Joomla
Drupal
Khả năng xây dựng
hệ quản trị nội dung
(CMS)
Tốt
Tốt
Tốt
Tốt
Khả năng tạo lập
kiểu nội dung nhanh
chóng trên nền web
Không
có sẵn
Không
có sẵn
Không
có sẵn
Có
Khả năng thiết lập
quy trình xử lý
Có
Có
Không
Có
Khả năng xây dựng
ứng dụng web
Rất tốt
Rất tốt
Kém
Rất tốt
Khả năng phát triển
nhanh ứng dụng
Cần môi
trường
IDE
Cần môi
trường
IDE
Các
modul
có sẵn
Đơn
giản
Các nền tảng phần
mềm đi kèm miễn
phí
Không
Có
Có
Có
Hỗ trợ kết nối cơ sở
dữ liệu Sql server
Sẵn có
Ko
Ko
Ko
Phát triển ứng dụng
linh hoạt
Tốt
Tốt
Khá
Tốt
Hosting phổ biến và
dễ dàng
TB
Kém
Rất tốt
Rất tốt
7
Chi phí bản quyền
Có
Không
Không
Không
Dễ dàng bảo trì phát
triển hệ thống
Khá
Khá
Khá
Tốt
Yêu cầu trình độ lập
trình
Cao
Cao
TB
Khá
Tốc độ xử lý
Tốt
TB
Tốt
Tốt
Yêu cầu cấu hình
máy chủ
Cao
TB
TB
TB
An ninh bảo mật
Tốt
Rất tốt
tốt
Rất tốt
8
CHƢƠNG 2: PHƢƠNG PHÁP KIỂM THỬ HIỆU NĂNG
TRONG QUÁ TRÌNH XÂY DỰNG WEBSITE
Chương này nghiên cứu quá trình kiểm tra hiệu năng trong
giai đoạn thiết kế, xây dựng website. Ở đây, xem xét những kết quả
khác nhau khi sử dụng các thiết kế khác nhau, người thiết kế có thể
sớm phát hiện ra nút “thắt cổ chai” và quyết định làm thế nào để hạn
chế tác động của sự thỏa hiệp về hiệu năng trong dự án phần mềm.
Thực hiện kiểm thử hiệu năng trong quá trình thiết kế giúp cho người
phát triển phần mềm tránh đưa ra quyết định thiết kế ban đầu mà
mang lại hiệu suất kém khi triển khai phần mềm sau này.
2.1. Giới thiệu
Thành công của kiểm thử hiệu năng trong quá trình thiết kế
phần mềm (design-time performance testing - DTPT) dựa vào khả
năng xác định nhanh chóng và chính xác những kết quả hiệu năng
của các giải pháp tùy chọn cho một bài toán thiết kế. Có hai điều
quan trọng của DTPT: tốc độ, độ chính xác.
Thông qua thiết kế bộ kiểm thử hiệu năng, người thiết kế có
thể xem lại và thay đổi quyết định thiết kế khi dự án yêu cầu thay đổi.
Điều này giúp cho các thiết kế thích ứng với các thay đổi trong khi
giảm số việc cần làm lại để thu thập các ước tính khi đối mặt với các
yêu cầu thay đổi.
2.2. Một số phƣơng pháp DTPT
Có một số phương pháp để tính toán hiệu năng phần mềm
trong thời gian thiết kế. Trong chương này, người viết luận văn
(NVLV) trình bày bốn phương pháp tiếp cận cơ bản: thực hiện theo
9
luật hiệu năng chung, tìm kiếm lời khuyên của các chuyên gia hiệu
năng, sử dụng mô phỏng hoặc các mô hình phân tích, và xây dựng
một nguyên mẫu cho kiểm thử hiệu năng.
2.2.1. Phương pháp luật hiệu năng
Luật hiệu năng thường là những chính sách và thông lệ chung.
Tính toán được tạo bởi luật hiệu năng được dựa trên kinh nghiệm của
những người khác và mặc dù một vài kinh nghiệm này được ghi chép
lại cẩn thận, các tài liệu cung cấp có một lượng độc giả lớn nhưng
không phải đều đặc trưng với các dự án.
2.2.2. Phương pháp lấy ý kiến chuyên gia
Các chuyên gia có kinh nghiệm thực hiện tối ưu hóa hiệu năng
cho các ứng dụng tương tự như đang thiết kế hệ thống. Dựa vào kinh
nghiệm của họ, các chuyên gia hiệu năng có thể giúp nhà thiết kế
hiểu được hậu quả của việc lựa chọn các giải pháp khác khau.
Mỗi lần ứng dụng được thực thi, chuyên gia hiệu năng sử dụng
công cụ ghi hình và giám sát để tối ưu hiệu năng của ứng dụng. Với
kinh nghiệm ghi hình, giám sát và tối ưu của họ, các chuyên gia có
thể đưa ra dự đoán về việc thực hiện các quyết định thiết kế. Với
những dự đoán của chuyên gia, nhà thiết kế có thể đưa ra nhiều hơn
thông tin cho việc thực hiện quyết định.
2.2.3. Phương pháp sử dụng mô hình phân tích
Mô hình phân tích mô tả các thành phần chính của một ứng
dụng và trừu tượng hóa những chi tiết không quan trọng. Thường các
mô hình này bao gồm các thành phần gửi thông điệp qua mạng xếp
hàng, và có thể được sử dụng vào giai đoạn đầu của quá trình phát
[...]... vấn đề nghiên cứu về "Nghiên cứu phương pháp kiểm thử hiệu năng trong quá trình xây dựng website" trong khuôn khổ của luận văn này chỉ dừng lại ở những nghiên cứu ban đầu Vì vậy, những nghiên cứu tiếp theo về vấn đề này có thể tập trung triển khai theo các hướng như sau: - Nghiên cứu chi tiết hơn việc xây dựng nguyên mẫu cho quá trình DTPT - Nghiên cứu các phương pháp để kiểm thử toàn diện website. .. kiểm thử hiệu năng trong quá trình xây dựng phần mềm như: luật hiệu năng, lấy ý kiến chuyên gia, sử dụng mô hình phân tích, phương pháp nguyên mẫu Trong đó, với mỗi phương pháp đều đưa ra những nghiên cứu, ứng dụng điển hình Cuối cùng NVLV đã đưa ra nhận xét đánh giá các phương pháp, để lựa chọn được phương pháp tốt hơn cả đó là phương pháp nguyên mẫu 5 Xây dựng và triển khai phương pháp kiểm thử hiệu. .. tả các bước chi tiết để kiểm tra (thủ tục kiểm thử) - Xem xét và khảo sát độ bao phủ của việc kiểm tra - Xem xét test case và các bước kiểm tra 15 CHƢƠNG 3: ÁP DỤNG KIỂM THỬ HIỆU NĂNG TRONG QUÁ TRÌNH XÂY DỰNG WEBSITE TRUNG TÂM CNTT BẮC GIANG Trong chương này, sẽ áp dụng phương pháp kiểm thử hiệu năng website trong giai đoạn thiết kế ở trên (phương pháp nguyên mẫu) vào một số website của trung tâm CNTT&TT... nhận xét, đánh giá và chọn lựa phương pháp (phương pháp nguyên mẫu) - Dựa trên những tìm hiểu về phương pháp nguyên mẫu của Denaro và Kruger, NVLV đã đưa ra quy trình thực hiện kiểm thử hiệu năng DTPT tổng quát - NVLV cũng đã trình bày các bước xây dựng test case cho việc kiểm thử - Để minh họa cho quy trình DTPT tổng quát, NVLV đã áp dụng quy trình đó vào quá trình xây dựng website của trung tâm CNTT... kiểm thử hiệu năng trong giai đoạn xây dựng website (DTPT) Từ đó, sớm phát hiện ra lỗi và kịp thời có những thay đổi để nâng cao chất lượng website ngay từ lúc xây dựng, thiết kế Các kết quả chính đạt đƣợc trong đề tài: - Luận văn đã tổng hợp được những nội dung lý thuyết cơ bản của kiểm thử hiệu năng Đưa ra một số phương pháp kiểm thử hiệu 23 năng trong quá trình xây dựng phần mềm (website) , sau đó... chịu test 3.1.3 Đề xuất giải pháp DTPT khi xây dựng Website tại trung tâm Dựa trên quy trình DTPT đã nghiên cứu ở chương 2, tôi đề xuất quy trình triển khai kiểm thử hiệu năng trong quá trình thiết kế website được chọn trong chương này như sau: Hình 3.1 Minh họa quy trình DTPT đƣợc đề xuất áp dụng 17 3.2 Lập kế hoạch kiểm thử 3.2.1 Thông tin chung Hình 3.2 Các chức năng của website: http://stttt.bacgiang.gov.vn/... trong quá trình xây dựng website đã cơ bản hoàn thành Đề tài đã giải quyết được các vấn đề sau: 1 Tìm hiểu vai trò, những khái niệm cơ bản, sự phân loại của kiểm thử hiệu năng 2 Trình bày chi tiết quy trình kiểm thử hiệu năng 3 Tìm hiểu, so sánh các mô hình, công nghệ lập trình web phổ biến Trong đó có đưa ra một vài nét cơ bản về hiệu năng của một số công nghệ 4 Luận văn đã đưa ra một số phương pháp. .. trên phương pháp nguyên mẫu có thể được xây dựng để biết được hoạt động của hệ thống trong trường hợp chung, không cần phần mềm trung gian, các thành phần thực hiện Trong luận văn của mình, tôi áp dụng quy trình kiểm thử hiệu năng theo phương 12 pháp Denaro và Kruger để tạo điều kiện cho sự hiểu biết ban đầu về chất lượng hiệu năng trong quá trình phát triển phần mềm Việc này dựa trên nghiên cứu của... tập trung nghiên cứu, phát triển bước đầu có kết quả đã đáp ứng yêu cầu công tác quản lý nhà nước phục vụ cải cách hành chính Quy trình chung khi xây dựng website của trung tâm là: 1- Thiết kế 2- Lựa chọn modul, thiết kế thử, đánh giá tính năng, hiệu năng 3- Hiệu chỉnh modul theo yêu cầu cụ thể 4- Test 5- Chuyển giao 6- Bảo trì 16 3.1.2 Hiện trạng kiểm thử hiệu năng trong Dự án xây dựng Website tại... với giải pháp được đề xuất áp dụng B Kiến nghị * Trong quá trình thực hiện đề tài, tác giả gặp một số khó khăn sau: - Tài liệu nghiên cứu chủ yếu bằng tiếng Anh khi dịch sang tiếng Việt nhiều đoạn, câu sẽ khó tránh khỏi không đúng, không sát với ý đồ của tác giả - Khi áp dụng quy trình DTPT vào ứng dụng kiểm thử hiệu năng trong quá trình xây dựng website của trung tâm CNTT&TT, gặp khó khăn trong việc . hiệu năng
Chương 2: Phương pháp kiểm thử hiệu năng trong quá trình
xây dựng website
Chương 3: Áp dụng kiểm thử hiệu năng trong quá trình xây
dựng website. PHƢƠNG PHÁP KIỂM THỬ HIỆU NĂNG
TRONG QUÁ TRÌNH XÂY DỰNG WEBSITE
Chương này nghiên cứu quá trình kiểm tra hiệu năng trong
giai đoạn thiết kế, xây dựng website.
Ngày đăng: 17/02/2014, 08:46
Xem thêm: Nghiên cứu phương pháp kiểm thử hiệu năng trong quá trình xây dựng website, Nghiên cứu phương pháp kiểm thử hiệu năng trong quá trình xây dựng website