Tải bản đầy đủ (.pdf) (25 trang)

Nghiên cứu phương pháp kiểm thử hiệu năng trong quá trình xây dựng 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 (666.25 KB, 25 trang )

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

Khả năng thiết lập
quy trình xử lý


Không

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



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

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
10


triển để biết được kết quả hiệu năng của một kiến trúc hệ thống nhất

định.
2.2.4. Phương pháp nguyên mẫu
Nguyên mẫu (prototype) là một phần thực thi của hệ thống
phần mềm mà hành vi ta quan tâm biểu lộ trong khi phân tích.
Nguyên mẫu có thể không thực thi đầy đủ hoặc chính xác các chức
năng của toàn bộ quá trình thực hiện.
Trong cùng một bối cảnh như xây dựng mô hình mô phỏng,
nhà thiết kế có thể tạo nguyên mẫu cho những phần quan trọng của
các phương án thiết kế và so sánh hiệu năng của các nguyên mẫu.
Mặc dù nguyên mẫu không có hiệu năng hoàn toàn giống như của
việc thực thi đầy đủ, nhưng vẫn xây dựng một tập hợp các nguyên
mẫu có thể cung cấp các ước tính chính xác dùng để so sánh với các
phương pháp khác.
2.2.5. Nhận xét đánh giá các phương pháp
Mặc dù mỗi phương pháp tiếp cận giai đoạn thiết kế (giai đoạn
đầu) cung cấp cái nhìn sâu sắc quá trình thiết kế phần mềm, giải pháp
nguyên mẫu cho phép nhà thiết kế nhanh chóng so sánh các giải pháp
thiết kế ít nhất là trong các tình huống mà Denaro và Kruger đã xem
xét. Hơn nữa, Denaro chỉ ra rằng các nguyên mẫu này có thể khá
chính xác (khoảng 9,3%) khi so sánh với việc thực thi đầy đủ. Trong
khi luật hiệu năng và lời khuyên chuyên gia có thể cung cấp trực giác
một cách nhanh chóng, mức độ chi tiết thực hiện đang được xem xét
dễ dàng hơn so với việc điều chỉnh các nguyên mẫu hiệu năng.
Chúng ta có thể xây dựng các nguyên mẫu khởi tạo đơn giản sau đó
11


tinh chỉnh và phát triển những cái cần thiết để tạo ra những ước tính
tốt của hiệu năng hệ thống theo các giải pháp thiết kế khác nhau. Các
mô hình được định nghĩa trừu tượng từ các chi tiết của giải pháp, xây

dựng nhiều mô hình để xử lý các mức độ chi tiết khác nhau sẽ tốn
kém hơn so với phát triển một nguyên mẫu đơn giản.
Bảng 2.1. Đánh giá các phƣơng pháp DTPT

Chi
phí
Dự đoán chi
tiết
Mức
độ chi
tiết
Tài liệu
đặc tả
Luật hiệu năng
Thấp
Dựa trên kinh
nghiệm
Cao
Không
cụ thể
Lời khuyên
chuyên gia
Cao
Dựa trên kinh
nghiệm
Cao
Rõ ràng
Mô hình
Cao
Dựa trên bằng

chứng
Cao
Rõ ràng
Nguyên mẫu
Thấp
Dựa trên bằng
chứng
Tùy
biến
Rõ ràng

2.3. Phƣơng pháp nguyên mẫu của Denaro và Kruger
2.3.1. Ý tưởng
Trong luận văn, tôi quyết định sử dụng nghiên cứu của Denaro
và Kruger dựa 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 Denaro và Kruger, nhưng mở rộng cách tiếp
cận kiến trúc của họ, phần mềm trung gian và kiến trúc hướng dịch
vụ tương ứng, với mục đích tạo mẫu chung. Tôi cũng cung cấp sự xét
duyệt tạo nguyên mẫu ước tính phù hợp với việc thực thi đầy đủ.
2.3.2. Các thành phần của quy trình kiểm thử hiệu năng
theo phương pháp Denaro và Kruger (Quy trình DTPT)
Quy trình DTPT xác định một số yếu tố đầu vào cần thiết để

tạo ra số liệu hiệu năng như trong hình 2.1. Các yếu tố đầu vào này
quan trọng để xem xét khi đưa ra so sánh hiệu năng.

Hình 2.1. Quy trình DTPT xấp xỉ so sánh các phƣơng án
thiết kế trong kịch bản sử dụng.
13


2.3.2.1. Nguyên mẫu
Thay vì thực hiện từng phương án thiết kế, nguyên mẫu được
sử dụng để ước tính các hành vi thời gian thực của việc triển khai
thực tế. Bởi vì một nguyên mẫu là sự đơn giản hóa việc thực thi đầy
đủ, một nguyên mẫu chung có thể được tạo ra nhanh hơn nhiều so
với việc thực thi gần như đầy đủ.
Nguyên mẫu được viết như các ứng dụng phần mềm có thể
được thực hiện để có được kết quả hiệu năng. Khi xây dựng nguyên
mẫu, điều quan trọng là nắm bắt được hành vi thực hiện của phương
án thiết kế gần đúng, trong khi loại bỏ các chi tiết ảnh hưởng không
đáng kể đến việc thực hiện.
2.3.2.2. Bộ kiểm tra thiết kế
2.3.2.3. Độ đo hiệu năng (performance metrics)
2.3.2.4. Môi trường
2.3.3. Quy trình thực hiện kiểm thử hiệu năng DTPT
Hình 2.2 dưới đây mô tả các pha trong quy trình DTPT. Nhà
thiết kế phần mềm có thể khai báo và nâng cao chất lượng quá trình
thiết kế của họ bằng cách sử dụng quy trình này cho việc kiểm thử
hiệu năng trong thời gian thiết kế. Khi thiết kế cần phải đưa ra quyết
định giữa các giải pháp và quan tâm đến chất lượng của những giải
pháp đó, họ có thể sử dụng quy trình này để đưa ra các quyết định
của mình.


14



Hình 2.2. Quy trình DTPT
2.4. Xây dựng các test case
Các bước thiết kế test bao gồm:
- Xác định và mô tả test case.
- Mô 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 tỉnh Bắc Giang để
minh họa và đánh giá.
3.1. Khảo sát hiện trạng tại Trung tâm CNTT&TT
3.1.1. Dự án xây dựng website tại trung tâm
Trung tâm CNTT & TT Bắc Giang là đơn vị sự nghiệp có thu
trực thuộc Sở Thông tin và Truyền thông tỉnh Bắc Giang. Nhiệm vụ
chính của trung tâm là: Xây dựng, duy trì, vận hành cổng giao tiếp
điện tử; tư vấn, quản trị, phát triển mạng cho các đơn vị; nghiên cứu
phát triển phần mềm và các ứng dụng CNTT. Việc ứng dụng phần
mềm nguồn mở (PMNM) được đội ngũ cán bộ công chức của trung

tâm 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 Trung tâm
Trung tâm gồm có 15 cán bộ viên chức và lao động làm việc.
Trong mỗi dự án có sự phân chia về trách nhiệm cho từng thành viên
tham gia. Công việc kiểm thử chưa mang tính chuyên nghiệp, test
chủ yếu về chức năng, hiệu năng phần mềm và dựa trên kinh nghiệm
của người test (có thể có sự tham khảo thêm các thành viên khác). Có
thể là một nhóm hay chỉ một thành viên thực hiện việc kiểm thử phần
mềm/website, tùy thuộc vào tính chất, độ phức tạp của đối tượng 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:

Hệ thống Cổng thông tin được xây dựng trên nền tảng lõi
Drupal 6.28 và các modul chính sau: Core, CCK, Ckeditor,
Wysiwyg, Couter, Filefield, Views, Panels, Prints, Work flow,
Videofield.

18


3.2.2. Xác định mục đích, yêu cầu kiểm thử
3.2.3. Môi trường, phạm vi kiểm thử
* Tiêu chí kiểm thử hiệu năng: trong luận văn này NVLV lựa
chọn các giá trị thời gian đáp ứng là tiêu chí đánh giá.
3.2.4. Các giải pháp thiết kế
- Trường hợp 1: Xây dựng website trên nền tảng Drupal, với
các lựa chọn hệ quản trị cơ sở dữ liệu khác nhau, cụ thể ở đây là:
mySQL và SQLite.
- Trường hợp 2: Đánh giá hiệu năng website với các giải pháp
tăng hiệu năng: no-cache, cache.
3.3. Xây dựng nguyên mẫu
Ở đây, NVLV chỉ xây dựng một nguyên mẫu đơn giản của
cổng thông tin điện tử bằng Drupal. Về bản chất, các nguyên mẫu

website của từng phương án thiết kế đều là một, với hệ thống
module, menu, view, block, node giống nhau. Cụ thể hệ thống Cổng
thông tin được xây dựng trên nền tảng lõi Drupal 7.23 và các modul
chính, các kiểu nội dung, menu như sau:
Bảng 3.1. Các modul chính của nguyên mẫu Cổng thông
tin điện tử
TT
Modul
Tính năng
1
Core
Drupal 7.23
2
CCK
Định nghĩa các kiểu nội dung: Tin bài,
3
Ckeditor
Wysiwyg
Trình soạn thảo bài viết
4
Ctools
Ctools là một tập các API và các công cụ để
hỗ trợ xây dựng trang Drupal, quản lý trang,
panel, CSS, cache, content
5
Views
Thiết kế View Data, lọc và trình bày nội dung
19



Bảng 3.2. Các kiểu nội dung
TT
Tên
Các trƣờng
1
Bài viết
Tiêu đề, nội dung, tags, Image, loại
tin
2
Văn bản chỉ đạo
Ký hiệu, Cơ quan ban hành, ngày,
File, Trích yếu

Bảng 3.3. Các menu, views
TT
Menu
Views
1
TIN TỨC, SỰ
KIỆN
Tin trong ngành, tin trong tỉnh, tin
tổng hợp
2
VĂN BẢN CHỈ
ĐẠO
Văn bản pháp luật

Ngoài ra, đối với từng trường hợp thiết kế, ta có thêm sự khác
biệt về nguyên mẫu tương ứng:
- Trường hợp thiết kế 1: Xây dựng hệ quản trị cơ sở dữ liệu

tương ứng với hai giải pháp thiết kế. Cơ sở dữ liệu MySQL: tintuc.
SQLite lưu trữ cơ sở dữ liệu trong một
file:.\sites\default\files\.ht.sqlite.
- Trường hợp thiết kế 2:
Sử dụng hệ quản trị cơ sở dữ liệu MySQL.
Để kích hoạt tính năng cache của Drupal thực hiện theo các
bước sau:
+ Đăng nhập vào website với quyền quản trị web.
+ Chọn tab “Configuration”, sau đó chọn “Performance” trong
mục “Development”. Chọn vào các mục caching, và các tùy chọn
thời gian cache, có thể chọn thêm tối ưu băng thông.
20


3.4. Xây dựng test case
Nội dung của đề tài này là đánh giá hiệu năng trong quá trình
xây dựng website. Vì vậy, các bài test không đạt đến điểm “cổ chai”
mà chỉ dừng lại ở trước đó, vị trí mà hệ thống vẫn đáp ứng tốt các
truy cập, để đo đạc giá trị thời gian đáp ứng khi lựa chọn các giải
pháp thiết kế khác nhau.
Bảng 3.4. Danh sách các test case
Tên
Mô tả
Thủ tục test
Kết quả
mong đợi
Test
1
100 yêu cầu
giống nhau được

gửi đồng thời đến
một trang của
website
- Xây dựng các Test
script lấy thông tin
trên trang (node) 3
của website.
- Tạo kịch bản test
với 100 Vuser đồng
thời gửi yêu cầu trên
công cụ
LoadRunner. Cấu
hình, cài đặt các
tham số cần đo hiệu
năng và chạy các
kịch bản.
Đưa ra được
bảng so sánh
dựa trên các
tiêu chí đánh
giá
Test
2
Tăng dần số
người dùng (2
người/s) gửi yêu
- Sử dụng Test script
lấy thông tin trên
node 3 (ở trên).
Đưa ra được

bảng so sánh
dựa trên các
21


cầu đến một trang
của website.
Tổng số: 100
người dùng.
- Tạo kịch bản test từ
2 đến 100 Vuser yêu
cầu tới server (tăng
lần lượt 2 người/s).
tiêu chí đánh
giá

Test Script: Việc tạo các script sẽ tương ứng với nội dung
từng bài test. Đây là chức năng của thành phần Virtual User
Generator hay VuGen trong công cụ Loadrunner.
3.5. Thực hiện kiểm thử, phân tích và đánh giá kết quả
Sau khi tạo xong các script cho việc kiểm thử tự động, quá
trình kiểm thử được tự động hóa bởi Controller.
Controller là một trong ba thành phần của công cụ Loadrunner
được sử dụng để tạo môi trường và tiến hành các bài kiểm thử hiệu
năng.
3.5.1. Trường hợp thiết kế 1
Ta nhận thấy rằng do cơ sở dữ liệu SQLite lưu trữ toàn bộ cơ
sở dữ liệu vào một tập tin duy nhất còn MySQL là hệ Quản trị Cơ sở
dữ liệu quan hệ sử dụng ngôn ngữ truy vấn có cấu trúc (SQL) nên
thời gian đáp ứng (số lượng yêu cầu nhỏ) của SQLite nhanh hơn so

với MySQL. Nhưng giới hạn SQLite là 2TB nên có thể không hiệu
quả cho các tập tin vô cùng lớn.
3.5.2. Trường hợp thiết kế 2
Có thể thấy rằng khi cấu hình cache cho trang web Drupal
hiệu quả đem lại rõ rệt. Thời gian đáp ứng của server nhỏ hơn, độ ổn
định cũng tốt hơn, đặc biệt là không có hay hạn chế ít lỗi hơn trong
quá trình giao dịch.
22


CHƢƠNG 4: KẾT LUẬN VÀ KIẾN NGHỊ
A. Kết luận
Luận văn của tác giả với đề 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” đã 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 phổ biến 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 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 đó đưa ra
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 & TT của Sở thông tin và truyền thông tỉnh Bắc Giang. Ở đây
có sự minh họa chi tiết, lần lượt theo từng bước từ khi lập kế hoạch
đến khi thực thi, và đánh giá kết quả thu được 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 tìm hiểu công nghệ để xây dựng nguyên
mẫu, các giải pháp thiết kế, các test case.

24


* Kiến nghị
- Trong phương pháp nguyên mẫu, điều khó khăn nhất là xây
dựng nguyên mẫu. Do đó, cần thiết có sự tham gia, phối hợp của
người thực hiện kiểm thử với người thiết kế phần mềm/website.
- Việc đưa ra các giải pháp thiết kế do phía người xây
dựng/thiết kế website vì vậy việc kiểm thử và thiết kế cần có sự hỗ
trợ lẫn nhau.
C. Hƣớng phát triển của đề tài
Do điều kiện cá nhân còn những hạn chế, nên 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
trên các mặt: Kiểm thử chức năng, kiểm thử tính dùng được, kiểm
thử giao diện, kiểm thử phía phục vụ, kiểm thử phía khách hàng và
kiểm thử an ninh.
-

×