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

Báo cáo "Nghiên cứu kiểm thử các ứng dụng web và xây dựng công cụ hỗ trợ " ppt

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 (158.48 KB, 4 trang )

Nghiên cứu kiểm thử các ứng dụng web và
xây dựng công cụ hỗ trợ

Tạ Vũ Nhân

Trường Đại học Công nghệ
Luận văn Thạc sĩ ngành: Công Nghệ Phần Mềm; Mã số: 60 48 10
Người hướng dẫn: TS.Trương Ninh Thuận
Năm bảo vệ: 2010

Abstract: Đưa ra một số kỹ thuật kiểm thử phần mềm, tìm hiểu một số ưu nhược
điểm của mỗi kỹ thuật kiểm thử. Lựa chọn các kỹ thuật kiểm thử phần mềm. Đưa ra
cái nhìn tổng quát về công nghệ Web Service, tìm hiểu về các thành phần chuẩn được
sử dụng trong công nghệ Web Service, kiến trúc Web Service và quy trình hoạt động
của một Web Service. Tìm hiểu về ứng dụng web và xu hướng phát triển các ứng
dụng. Đưa ra một số vấn đề và cách giải quyết các vấn đề trong việc viết một công cụ
hỗ trợ kiểm thử trong .Net của các ứng dụng web. Nghiên cứu các phương pháp kiểm
thử web services. Giới thiệu một bài toán Travel-Agent, mục tiêu, yêu cầu của bài
toán. Xây dựng công cụ hỗ trợ kiểm thử cho bài toán.

Keywords: Công nghệ phần mềm; Kỹ thuật kiểm thử phần mềm; Trang Web; Web
Service

Content
MỞ ĐẦU
Vào khoảng đầu những năm 60 nhu cầu sử dụng các hệ thống phần mềm, giải phóng sức
lao động trí tuệ trong các hoạt động kinh doanh, quản lý, giải trí và một số lĩnh vực khoa học
xã hội tăng cao. Tuy nhiên các yêu cầu về nghiệp vụ phức tạp trong các hệ thống này dẫn đến
các hệ thống phần mềm tương ứng cũng ngày càng trở nên phức tạp, cồng kềnh và khó kiểm
soát. Rất nhiều yêu cầu nghiệp vụ đòi hỏi xử lý các vấn đề liên quan đến dữ liệu phân tán, xử
lý các thông tin khác nhau do nhiều tổ chức nắm giữ. Đã có nhiều kiến trúc phần mềm được


đưa ra nhưng chưa đủ mạnh để đáp ứng được nhu cầu thực tế dẫn đến sự khủng hoảng phần
mềm.
Trong thời kỳ này, một số dự án phần mềm điển hình đã thất bại như: Hệ thống điều
khiển hàng không; Các hệ thống phần mềm phục vụ cho ngành viễn thông, y tế, Theo sự
phân tích thực tế, các hệ thống phần mềm rơi vào tình trạng này bởi các nguyên nhân khác
nhau như[19]:

2
 Khả năng xây dựng phần mềm cho phần cứng không theo kịp sự phát triển của
phần cứng.
 Khả năng xây dựng phần mềm chưa đáp ứng được nhu cầu thực tế.
 Sự cạnh tranh giữa các hệ thống phần mềm về chất lượng và độ tin cậy ngày
càng cao.
 Nguồn nhân lực không đủ so với nhu cầu thực tế.
Ngoài những nguyên nhân cơ bản trên, còn có những nguyên nhân xuất phát từ điểm
yếu của hệ thống phầm mềm như:
 Không có đơn vị dữ liệu chuẩn để đánh giá hệ thống.
 Không xác định chính xác được chi phí xây dựng hệ thống.
 Các công cụ hỗ trợ lập kế hoạch và đánh giá tự động không phù hợp.
 Kế hoạch phát triển hệ thống không hợp lý tạo sức ép lớn cho người thực hiện
 Quá trình quản lý tiến trình thực hiện và sự cố phát sinh không phù hợp.
 Thiếu khả năng kiểm duyệt thiết kế và quản lý mã lệnh của hệ thống phần
mềm.
Để khắc phục và hạn chế được những điểm yếu này đòi hỏi dự án phần mềm phải có
những quy trình nhất định, giúp chúng ta kiểm soát được tiến trình thực hiện dự án cũng như
hiệu quả công việc, kết quả và hướng phát triển của dự án. Sau khi hoàn thành hệ thống phần
mềm của dự án và trước khi đưa vào ứng dụng trong thực tế, hệ thống này cần phải được
kiểm tra, đánh giá tính chính xác và khả năng đáp ứng yêu cầu thực tế - thuật ngữ “Kiểm thử
phần mềm” bắt nguồn từ đây[9,18].
Kiểm thử phần mềm là một phương pháp kiểm soát quá trình thử nghiệm, thực hiện các

chức năng trong hệ thống phần mềm theo một tập hợp các điều kiện đặt ra với mục đích tìm
ra lỗi của hệ thống. Kết quả của kiểm thử phần mềm là tư liệu chứng minh hệ thống có thể
đáp ứng được các yêu cầu đặt ra và ứng dụng được trong thực tế hay không?
Kiểm thử phần mềm có thể nói là một phần không thể thiếu trong việc xây dựng và phát
triển phần mềm. Nó cho chúng ta biết một phần mềm khi xây dựng và sử dụng có đúng với
các yêu cầu mà chúng ta đặt ra hay không.

3
Ở nước ta hiện nay ngành Công nghệ phần mềm đang phát triển mạnh mẽ, việc kiểm thử
phần mềm chưa thực sự được quan tâm nhiều hoặc quan tâm nhưng không đúng cách. Việc áp
dụng các công cụ tự động cho việc kiểm thử hầu như không có. Trong khi đó theo thống kê
chúng ta có thể tốn 40% đến 60% thời gian dành cho việc kiểm thử.
Phần lớn các công ty thường không có các tester thực sự, một số công ty có những
người chuyên về kiểm thử nhưng thường làm thủ công. Vì vậy việc xây dựng các công cụ hỗ
trợ kiểm thử cho chúng ta các lợi ích sau.
 Mất ít thời gian hơn.
 Chính xác hơn.
 Hiệu quả hơn.
 Tránh được các lỗi do con người gây ra do kiểm thử thủ công
Với thực tế và các lợi ích trên tôi nhận thấy việc nghiên cứu và xây dựng đề tài này là
cần thiết, phù hợp với tình hình hiện tại.
Cấu trúc của luận văn bao gồm:
Chương 1 Đưa ra một số kỹ thuật kiểm thử phần mềm, tìm hiểu một số ưu nhược điểm
của mỗi kỹ thuật kiểm thử. Lựa chọn các kỹ thuật kiểm thử phần mềm.
Chương 2 Đưa ra cái nhìn tổng quát về công nghệ Web Service, tìm hiểu về các thành
phần chuẩn được sử dụng trong công nghệ Web Service, kiến trúc Web Service và quy trình
hoạt động của một Web Service. Tìm hiểu về ứng dụng web và xu hướng phát triển các ứng
dụng.
Chương 3 Đưa ra một số vấn đề và cách giải quyết các vấn đề trong việc viết một công
cụ hỗ trợ kiểm thử trong .Net của các ứng dụng web. Nghiên cứu các phương pháp kiểm thử

web services.
Chương 4 Giới thiệu một bài toán Travel-Agent, mục tiêu, yêu cầu của bài toán. Xây
dựng công cụ hỗ trợ kiểm thử cho bài toán.

References
[1] Doug Tidwell, James Snell, Paval Kulchelko. Programing Web Services With Soap. O’
reilly, january 2002.

4
[2] Prentice Hall PTR. Web Service Platform Architechture: SOAP, WSDL, WS-Policy, WS-
Addressing, WS-BPEL, WS-Reliable Messaging, and More. Prentice Hall, Apr 2005.
[3] Robert Englander. Java and Soap. O’ reilly, May 2002.
[4] Ethan Cerami. Web Service Essentials Distributed Application with RPC, SOAP, UDDI
&WSDL. O’ reilly, Feb 2002.
[5] Gerhard Wiehler. Web Service and Service Oriented Architecture. John wiley & Son, Feb
2004.
[6] James D. McCaffrey. .NET Test Automation Recipes, A Problem - Solution Approach.
Apress, 2006
[7] Hmark Feuster, Dorothy Graham - Software Test Automation, Effective use of test
execution tools. Addison wesley, 1999.
[8] William E Perry - Effective Methods of Software Testing. John Wiley& Sons, 2000.
[9] Roger Pressman - Software Engineering A Practitioners Approach. Wiley, 2005.
[10] Dustin, Elfriede, Jeff Rashka, and John Paul. Automated Software Testing: Introduction,
Management, and Performance. Addison-Wesley, 1999.
[11] Dustin, Elfriede. Effective Software Testing: 50 Specific Ways to Improve Your Testing.
Addison-Wesley , 2002.
[12] Kaner, Cem. Testing Computer Software, 2nd ed. John Wiley & Sons, 1999.
[13] Kit, Edward. Software Testing in the Real World: Improving the Process. Addison-
Wesley, 1995.
[14] Myers, Glenford, et al. The Art of Software Testing, 2nd ed. John Wiley & Sons, 2004.

[15] Sweeney, Mary Romero. Visual Basic for Testers. Apress, 2001.
[16] B. Beizer. Black Box Testing. John Wiley & Sons, 1995
[17] B. Beizer. Software Testing Techniques. Computer Press, 1990.
[18] R. Pressman. Software Engineering: A Practitioner's Approach. Boston: McGraw Hill,
2001.
[19] Software Engineering Body of Knowledge.
[20] Software Testing Guide Book.

×