Tài liệu Báo cáo "Nghiên cứu về kiểm thử cho mô hình ứng dụng Web " pot - Pdf 10

Nghiên cứu về kiểm thử cho mô hình ứng dụng Web
Nguyễn Việt Anh
Trường Đại học Quốc gia Hà Nội; Trường Đại học Công nghệ
Chuyên ngành: Công nghệ phần mềm; Mã số: 60 48 10
Cán bộ hướng dẫn khoa học: PGS.TS Nguyễn Việt Hà
Năm bảo vệ: 2012

Abstract. Giới thiệu về khái niệm kiểm thử và các kỹ thuật kiểm thử thông thường, và cụ thể là
kiểm thử hộp trắng, và kiểm thử hộp đen, dựa trên các kỹ thuật kiểm thử sẽ tập trung tìm hiểu về
ứng dụng Web, thành phần ứng dụng Web và các kiểm thử đối với ứng dụng Web như: kiểm thử
giao diện, kiểm thử chức năng, kiểm thử cơ sở dữ liệu, kiểm thử hiệu năng và kiểm thử với các
thiết bị di động. Nghiên cứu yêu cầu bài toán về việc xây dựng công cụ kiểm thử tự động các
ứng dụng Web; Thông qua việc thực hiện trường hợp kiểm thử đăng nhập vào ứng dụng Web;
Công cụ kiểm thử tự động sẽ thực hiện việc đọc các trường hợp đầu vào từ tệp tin Excel, sau khi
thực hiện việc kiểm thử chương trình ghi kết quả quá trình kiểm thử ra tệp tin Excel, XML và
chụp ảnh màn hình để xem việc kiểm thử là thành công hay thất bại; Và để xây dựng công cụ
trên giải pháp đưa ra đó là sử dụng các hàm API được cung cấp bởi công cụ Selenium và
WebDriver. Thực hiện cài đặt ứng dụng Web và xây dựng các hàm API để thực hiện việc kiểm
thử, sau khi thực hiện chương trình đưa ra những kết quả đạt được trong quá trình xây dựng công
cụ kiểm thử ứng dụng Web tự động.

Keywords: Kiểm thử phần mềm; Công nghệ thông tin; Web; Phần mềm mã nguồn mở

Content.
CHƢƠNG 1 ĐẶT VẤN ĐỀ

CHƢƠNG 2 CƠ SỞ LÝ THUYẾT
2.1. Các kỹ thuật kiểm thử
2.1.1. Khái niệm kiểm thử
Có rất nhiều các khái niệm khác nhau về thế nào là kiểm thử, tuy nhiên có một khái niệm về kiểm
thử của (Glen Myers) được cho là tổng quát nhất: “Việc kiểm thử là quá trình thực thi một chương trình
với mục đích là tìm ra lỗi.” [5]
2.1.2. Vòng đời và quy trình kiểm của việc kiểm thử
Mục đích chính của việc kiểm thử đó là thiết kết một chuỗi các trường hợp kiểm thử mà có khả
năng phát hiện được lỗi cao. Và để cho việc kiểm thử đạt được kết quả tốt nhất thì cần phải có sự chuẩn bị
về kế hoạch kiểm thử, trải qua các công đoạn khác nhau đồng thời phải có những biện pháp để khắc phục
khi phát hiện ra lỗi.
2.1.3. Kiểm thử hộp trắng
Kiểm thử hộp trắng (White-Box Testing) hay còn gọi là kiểm thử logic, cho phép kiểm tra cấu
trúc bên trúc bên trong của ứng dụng với mục đích đảm bảo rằng tất cả các câu lệnh và điều kiện sẽ được
thực thi ít nhất một lần.
Kiểm thử hộp trắng đúng nghĩa là kiểm thử hộp trong suốt, vì vậy mà kiểm thử hộp trắng còn
được gọi bằng một số tên khác đó là kiểm thử hộp thủy tinh (Glass-Box Testing) hay kiểm thử trong suốt
(Clear-Box Testing). Người kiểm thử truy cập vào mã nguồn chương trình để kiểm tra và lấy nó làm cơ
sở cho việc kiểm thử. Và việc kiểm thử này dựa trên quá trình thực hiện xây dựng chương trình ứng dụng.
Kiểm thử hộp trắng còn là phương pháp kiểm thử dựa vào cấu trúc/mã lệnh của chương trình.
Phương pháp này cho phép kiểm thử một chương trình (một phần chương trình, hay một hệ thống, một
phần của hệ thống) đáp ứng tất cả các giá trị đầu vào bao gồm cả các giá trị không đúng hay không theo
dự kiến của chương trình.
Khi nói đến vần đề kiểm thử hộp trắng cần quan tâm đến vấn đề đường dẫn lệnh trong kỹ thuật
hay phương pháp này. Nếu phải thực hiện tất cả các đường dẫn của đồ thị điều khiển trong chương trình
thông quan việc chạy tất cả các trường hợp kiểm thử thì có thể nói rằng chương trình đã được kiểm thử
một cách triệt để. Tuy nhiên, điều đó là không thể thực hiện được vì số đường dẫn logic khác nhau trong
một chương trình là rất lớn.
2.1.4. Kiểm thử hộp đen
Kiểm thử hộp đen (Black – Box Testing) hay còn gọi là kiểm thử chức năng, việc thực hiện kiểm

Khi thực hiện kiểm thử các ứng dụng Web chúng ta cần quan tâm đến các phương pháp phân tích
và kiểm thử lỗi mới. Giả sử như chúng ta đã nắm được hết các kỹ thuật kiểm thử thông thường, vấn đề đặt
ra lúc này là áp dụng các phương pháp hay kỹ thuật đó vào việc kiểm thử ứng dụng Web. Và để thực hiện
điều này một cách hiệu quả thì bạn cần hiểu được sự khác nhau giữa kiểm thử ứng dụng Web và kiểm thử
truyền thống thông thường.
a) Mô hình ứng dụng
Đầu tiên chúng ta cần xem xét qua mô hình ứng dụng của hệ thống máy tính so với hệ thống
Client – Server dựa trên hệ thông Web.
b) Các ứng dụng phía Client
Trình khách của hệ thống máy khách chủ truyền thống chỉ được thực thi trên các nên tảng chuyên
biệt như hệ điều hành Windows, Linux,…
c) Các ứng dụng phía Server
Các ứng dụng được phát triển phía trình chủ khác với ứng dụng trên trình khách ở hai điểm chính
sau: Thứ nhất là, các ứng dụng trên trình chủ là các chương trình không có giao diện để người dùng cuối
của hệ thống tương tác, người dùng cuối chỉ tương tác với các ứng dụng phía trình khách. Thứ hai, các
ứng dụng trên trình chủ được thực thi liên tục, nghĩa là khi các ứng dụng trên trình chủ được khởi động
thì nó luôn thường trực để cung cấp dịch vụ cho các ứng dụng phía trình khách.
2.2.4. Các kiểm thử cho ứng dụng Web
Như các mục đã phân tích ở trên thì chúng ta đã nắm được thế nào là một ứng dụng Web, các
thành phần của một ứng dụng Web là gì, và đã có sự so sánh giữa kiểm thử thông thường và kiểm thử
ứng dụng Web. Vấn đề đặt ra lúc này là để kiểm thử một ứng dụng Web chúng ta cần quan đến những
vấn đề gì?
a) Kiểm thử Giao diện ngƣời dùng
Vấn đề đầu tiên trong kiểm thử ứng dụng Web chúng ta cần xem xét đến đó là “Kiểm thử Giao
diện người dùng”. Khi xây dựng một giao diện ứng dụng Web chúng ta phải quan tâm đến tư tưởng của
người thiết kế xem mục tiêu thiết kế giao diện đó áp dụng cho lĩnh vực gì, và tư tưởng của người phát
triển xem sử dụng công nghệ gì để xây dựng giao diện.
b) Kiểm thử Chức năng
Kiểm tra chức năng cũng giống các trường hợp kiểm thử khác là tìm ra lỗi, tuy nhiên kiểm thử
chức năng cho phép kiểm thử cho tất cả các liên kết trong trang Web, kết nối cơ sở dữ liệu, cách thức sử

của chương trình sẽ là một ứng dụng web với tập hợp các trang web, dữ liệu có liên kết với nhau. Dựa
vào sự liên kết đó, tôi sẽ đưa ra một bảng các liên kết chi tiết các trạng thái sẽ xảy ra đối với từng chức
năng, và sẽ được coi đó là một tệp đầu vào cho một ca kiểm thử cụ thể của chức năng đó.
Phần tiếp theo của chương trình là quá trình thực thi của ca kiểm thử trên. Quá trình thực thi được
mô tả tại hình 3.2 và được cài trên môi trường WebDriver.
Trong phần kết quả, tôi sẽ đưa ra được các chức năng của ứng dụng web đã được kiểm thử thông
qua liên kết cụ thể. Phần kết quả sẽ chỉ ra được tính chặt chẽ của liên kết, liên kết nào xảy ra lỗi so với
đặc tả ca kiểm thử. Hình 3.1. Mô hình giải
quyết bài toán
Hình 3.2. Quá trình thực thi
3.2.1 Đầu vào cho ứng dụng kiểm thử
Thực hiện xây dựng Ứng dụng Web hoặc sử dụng một ứng dụng Web đã tồn tại và thực hiện kiểm
thử tự động ứng dụng Web đó. Để đơn giản có thể xây dựng một ứng dụng Web mã nguồn mở sử dụng
Joomla hoặc các ứng dụng Web là các trang HTML đơn giản.

Hình 3.3: Kiểm thử chức năng tạo bài viết

3.2.2 WebDriver
WebDriver được thiết kế để cung cấp một giao diện lập trình đơn giản ngăn ngọn hơn cùng với
việc giải quyết những hạn chế trong API của Selenium RC.
3.2.3 Giải pháp ghi lại kết quả đầu ra
a) Chụp hình lại kết quả kiểm thử
b) Ghi kết quả ra tệp tin XML
c) Ghi kết quả ra tệp tin Excel
CHƢƠNG 4 THỰC NGHIỆM
4.1. Cài đặt môi trƣờng kiểm thử
4.2. Xây dựng chƣơng trình kiểm thử tự động đăng nhập ứng dụng Web

4.4. Kết quả thực nghiệm
Sau khi thực chạy chương trình duyệt tất cả các trường hợp kiểm thử khi thực hiện đăng nhập, kết
quả thu được cụ thể:
Kết quả ghi ra Excel:
Kết quả được ghi vào tệp tin Excel, ghi lại các trường hợp kiểm thử và trạng thái là thành công
hay thất bại.

Hình 4.7. Kết quả ghi ra kiểm thử Login ghi ra tệp tin Excel.
Trường hợp 1 với việc nhập User name là anhnv, Password là anhnvpwd123, Ngôn ngữ là
Vietnamese-VN => Ở cột Results thông báo là đăng nhập thành công.
Kết quả ghi ra XML:
Kết quả được ghi nhận vào tệp tin XML, liệt kê tất cả các trường hợp kiểm thử.
Hình 4.8. Trường hợp đăng nhập không thành công
4.5. Ý nghĩa chƣơng trình kiểm thử tự động
Chương trình kiểm thử tự động ứng dụng Web đã được thực nghiệm với hơn 10 Website khác
nhau thỏa mãn cấu trúc của bài toán. Và kết quả đạt được đáp ứng với yêu cầu của bài toán. Với việc
kiểm thử thành công với các ứng dụng Web khác nhau, cho thấy ý nghĩa quan trọng trong việc thực hiện
kiểm thử tự động, đồng thời giải quyết được các vấn đề mà kiểm thử thủ công gặp phải như một số kiểm
thử bị bỏ qua, không thể ghi nhận được lỗi phát sinh. Với việc xây dựng và thực nghiệm thành công
chương trình kiểm thử tự động đăng nhập ứng dụng Web, sẽ làm nền tảng để có thể phát hiển một chương
trình hoản chỉnh đảm bảo có thể kiểm thử toàn bộ ứng dụng một ứng dụng Web cụ thể.

CHƢƠNG 5 KẾT LUẬN

Ngày này với cơ sở hạ tầng về mạng Internet phát triển rất mạnh mẽ, cùng với đó là sự ra đời của
hàng hoạt các ứng dụng Web để đáp ứng nhu cầu của người sử trong mọi lĩnh vực của cuộc sống. Cùng
với sự đa dạng và phức tạp của các ứng dụng Web là đòi hỏi của người dùng ngày một cao hơn như ứng


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status