Kiểm thử phần mềm với công cụ JUnit để tìm hiểu thêm quy trình kiểm thử phần mềm cũng như công cụ kiểm thử tự động JUnit cho

52 836 5
Kiểm thử phần mềm với công cụ JUnit để tìm hiểu thêm quy trình kiểm thử phần mềm cũng như công cụ kiểm thử tự động JUnit cho

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

LỜI CẢM ƠN Lời đầu tiên, em xin gửi lời cảm ơn chân thành đến T.S Vũ Vinh Quang người tận tình hướng dẫn, giúp đỡ em suốt thời gian thực đề tài Em xin gửi lời biết ơn sâu sắc đến tất thầy giáo, cô giáo trường Đại học Công nghệ thông tin Truyền thông – Đại học Thái Nguyên dìu dắt giảng dạy, trang bị cho em vốn kiến thức sở, kinh nghiệm quý báu suốt trình học tập nghiên cứu trường Cuối cùng, em xin gửi lời cảm ơn tới gia đình, bạn bè người ln động viên, khuyến khích tạo điều kiện cho em vươn lên học tập sống Em xin chân thành cảm ơn! Thái nguyên, tháng 06 năm 2017 Sinh viên Nguyễn Thanh Huyền MỤC LỤC LỜI CẢM ƠN MỤC LỤC DANH MỤC HÌNH ẢNH LỜI NÓI ĐẦU CHƯƠNG I TỔNG QUAN VỀ KIỂM THỬ PHẦN MỀM 1.1 Giới thiệu kiểm thử 1.1.1 Khái quát vai trò quản lý kiểm thử 1.1.2 Mục tiêu kiểm thử phần mềm 1.2 Các khái niệm kiểm thử phần mềm 1.3 Quy trình kiểm thử phần mềm 1.4 Mơ hình chữ V 1.5 Các phương pháp kiểm thử 10 1.5.1 Kiểm thử tĩnh – Static testing 10 1.5.2 Kiểm thử động – Dynamic testing 10 1.6 Các chiến lược kiểm thử 10 1.6.1 Kiểm thử hộp đen – Black box testing 10 1.6.2 Kiểm thử hộp trắng – White box testing 11 1.6.3 Kiểm thử hộp xám – Gray box testing 12 1.7 Các cấp độ kiểm thử phần mềm 13 1.7.1 Kiểm thử đơn vị - Unit test 13 1.7.2 Kiểm thử tích hợp – Intergration Test 14 1.7.3 Kiểm thử hệ thống – System Test 15 1.7.4 Kiểm thử chấp nhận – Acceptance Test 17 CHƯƠNG KIỂM THỬ TỰ ĐỘNG - KIỂM THỬ JUNIT 18 2.1 Kiểm thử tự động 18 2.1.1 Tổng quan kiểm thử tự động 18 2.1.2 Quy trình kiểm thử tự động 20 2.2 Kiểm thử đơn vị 20 2.2.1 Tiến trình kiểm thử 20 2.2.2 Kế hoạch kiểm thử Unit 21 2.2.3 Kế hoạch kiểm thử hộp đen – Black box 21 2.2.4 Kế hoạch kiểm thử hộp trắng – White box 22 2.3 Vòng đời Unit Testing 23 2.4 Lợi ích Unit Testing 23 2.5 Công cụ kiểm thử JUnit 25 2.5.1 Khái niệm 25 2.5.2 Lợi ích JUnit 26 2.5.3 Kiến trúc tổng quan 27 2.5.4 Các phương thức sử dụng phổ biến JUnit 28 2.5.5 Hướng dẫn sử dụng JUnit 31 CHƯƠNG KIỂM THỬ CHƯƠNG TRÌNH 36 3.1 Xây dựng chương trình 36 3.1.1 Mơ tả tốn 36 3.1.2 Mô tả chương trình 36 3.1.3 Các yêu cầu chung 36 3.1.4 Chương trình 37 3.2 Thiết kế kiểm thử 38 3.2.1 Kiểm thử hộp đen 38 3.2.2 Kiểm thử hộp trắng 40 3.3 Kết kiểm thử chương trình 40 3.3.1 Kiểm thử hộp đen 40 3.3.2 Kiểm thử hộp trắng 42 3.4 Giới thiệu số công cụ, thư viện hỗ trợ việc test phần mềm 47 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN .49 TÀI LIỆU THAM KHẢO 51 DANH MỤC HÌNH ẢNH Hình 1.1 Mơ hình phát triển chữ V Hình 1.2 Các cấp độ kiểm thử phần mềm 13 Hình 2.1 Sơ đồ Kiến trúc tổng qua 27 Hình 2.2 Kết test ví dụ lỗi đầu 34 Hình 2.3 Kết test ví dụ thành cơng 35 Hình 3.1 Giao diện chương trình toán 37 Hình 3.2 Kết test kiểm thử chương trình lần 45 Hình 3.3 Kết test kiểm thử chương trình lần 45 Hình 3.4 Kết test kiểm thử chương trình lần 46 Hình 3.5 Kết test kiểm thử chương trình lần 46 Hình 3.6 Kết test kiểm thử chương trình lần 47 LỜI NÓI ĐẦU Trong ngành kỹ nghệ phần mềm, năm 1979, có quy tắc tiếng là: “Trong dự án lập trình điển hình, xấp xỉ 50% thời gian 50% tổng chi phí sử dụng kiểm thử chương trình hay hệ thống phát triển” Và nay, sau gần phần kỷ, quy tắc Đã có nhiều ngôn ngữ, hệ thống phát triển với cơng cụ tích hợp cho lập trình viên sử dụng phát triển ngày linh động Nhưng kiểm thử đóng vai trò quan trọng dự án phát triển phần mềm Mục tiêu kiểm thử phần mềm thiết kế trường hợp kiểm thử để phát cách có hệ thống loại lỗi khác thực việc với lượng thời gian tài nguyên Trong có nguyên lý đúc kết từ thực tiễn: Kiểm thử đơn vị tìm khoảng 20% lỗi tất lỗi dự án, thời gian tốn cho kiểm thử đơn vị đền bù việc tiết kiểm nhiều thời gian chi phí cho việc kiểm thử sửa lỗi mức kiểm thử sau Vì em xin chọn đề tài Kiểm thử phần mềm với cơng cụ JUnit để tìm hiểu thêm quy trình kiểm thử phần mềm công cụ kiểm thử tự động JUnit cho đồ án tốt nghiệp Mặc dù có nhiều cố gắng vốn kiến thức chưa sâu nên khơng thể tránh khỏi thiếu sót Rất mong góp ý q thầy cơ, anh chị bạn để báo cáo hoàn thiện CHƯƠNG I TỔNG QUAN VỀ KIỂM THỬ PHẦN MỀM 1.1 Giới thiệu kiểm thử 1.1.1 Khái quát vai trò quản lý kiểm thử Thuở ban đầu nghành cơng nghiệp máy tính nói chung cơng nghệ phần mềm nói riêng, việc phát triển phần mềm xem tiến trình “viết, sửa”, khơng có kế hoạch trước tiến trình Yêu cầu người dùng phạm vi nhỏ nên thân người viết phần mềm tự nhớ kiểm tra để thỏa mãn yêu cầu người dùng Nhưng quy mô phần mềm lớn, cần nhiều người chung, kiểm thử phần mềm trở thành tiến trình định thành cơng dự án Nếu ta tự quản lý tiến trình kiểm thử khơng đơn giản chút Vì với số lượng trường hợp kiểm thử lớn, ta cần:  Quản lý trường hợp thực trường hợp kiểm thử chưa thực  Còn phải quản lý kết kiểm thử để thấy khả đáp ứng yêu cầu phần mềm Kết thay đổi phải cập nhật lại sau phiên sản phẩm  Yêu cầu người dùng thay đổi suốt q trình phát triển Do trường hợp kiểm thử liên quan đến yêu cầu thay đổi theo Một số trường hợp kiểm thử tạo mới, số cập nhật lại coi phiên trường hợp kiểm thử Tất thông tin phải ghi nhận lại Do nói dự án muốn thành cơng khơng thể khơng có chương trình quản lý kiểm thử 1.1.2 Mục tiêu kiểm thử phần mềm Kiểm thử trình thực thi chương trình với mục đích tìm lỗi điểm yếu chương trình Một trường hợp kiểm thử tốt trường hơp có khả lớn việc tìm lỗi chưa phát Một trường hợp kiểm thử không tốt (không thành cơng) trường hợp mà khả tìm thấy lỗi chưa biết đến Mục tiêu kiểm thử phần mềm thiết kế trường hợp kiểm thử để phát cách có hệ thống loại lỗi khác thực việc với lượng thời gian tài ngun 1.2 Các khái niệm kiểm thử phần mềm Kiểm thử phầm mềm có nhiều định nghĩa khác đề xuất tổ chức hay cá nhân số khái niệm tiêu biểu: Kiểm thử phần mềm trình khảo sát hệ thống hay thành phần điều kiện xác định, quan sát ghi lại kết đánh giá khía cạnh hệ thống hay thành phần (Theo Bảng giải thuật ngữ chuẩn IEEE Thuật ngữ kỹ nghệ phần mềm- IEEE Standard Glossary of Software Engineering Terminology) Kiểm thử phần mềm trình thực thi chương trình với mục đích tìm lỗi (Theo “The Art of Software Testing” – Nghệ thuật kiểm thử phần mềm) Kiểm thử phần mềm hoạt động khảo sát thực tiễn sản phầm hay dịch vụ phần mềm môi trường chúng dự định triển khai nhằm cung cấp cho người dùng có lợi ích liên quan thông tin chất lượng sản phẩm hay dịch vụ phần mềm Mục đihs kiểm thử phần mềm tìm lỗi hay khiếm khuyết phần mềm nhằm đảo bảo hiệu hoạt động tối ưu phần mềm nhiều nghành khác (Theo Bách khoa tồn thư mở Wikipedia) Có thể định nghĩa cách dễ hiểu sau: Kiểm thử phần mềm tiến trình hay tập hợp tiến trình thiết kế để đảm bảo mã hóa máy tính thực theo mà chúng thiết kế để làm, không thực thứ khơng mong muốn Đây pha quan trọng trình phát triển hệ thống, giúp cho người xây dựng hệ thống khách hàng thấy hệ thống đáp ứng yêu cầu đặt hay chưa 1.3 Quy trình kiểm thử phần mềm Tùy vào tổ chức, hệ thống, ngữ cảnh, mức độ rủi phần mềm mà qui trình kiểm thử phần mềm gồm nhiều bước khác Nhưng nhìn chung quy trình kiểm thử có bước quy trình đây: Một quy trình kiểm thử phần mềm gồm giai đoạn Lập kế hoạch kiểm thử: Nhiệm vụ quan trọng phần lập kế hoạch kiểm thử xác định yếu tố sau: Các giai đoạn kiểm thử áp dụng cho dự án  Các phương pháp kiểm thử  Các công cụ kiểm thử  Nguồn lực kiểm thử  Tài nguyên môi trường kiểm thử, bao gồm tài nguyên phần cứng phần mềm  Mốc bàn giao tài liệu kiểm thử Chuẩn bị kiểm thử:  Tìm hiểu nghiệp vụ hệ thống phải kiểm thử  Xây dựng kịch kiểm thử, phát triển thủ tục kịch kiểm thử tự động (trong trường hợp kiểm thử tự động)  Chuẩn bị liệu kiểm thử  Xem xét phê duyệt tài liệu kiểm thử Thực thi kiểm thử:  Thực kiểm thử dựa kịch kiểm thử,test script, thủ tục, liệu có sẵn từ bước chuẩn bị kiểm thử  Tham gia trình quản lý lỗi: báo lỗi, sửa lỗi Báo cáo phân tích liệu kiểm thử:  Báo cáo kiểm thử  Phân tích nguyên nhân đề xuất hành động khắc phục Các kỹ thuật kiểm thử Có kỹ thuật kiểm thử phần mềm là:  Kiểm thử hộp đen  Kiểm thử hộp trắng  Kiểm thử hộp xám 1.4 Mơ hình chữ V Kiểm thử bảo trì pha quan trọng trình phát triển phần mềm Hình 1.1 Mơ hình phát triển chữ V Bên trái chữ V trình phát triển phần mềm, bên phải kiểm thử Tại mức trình phát triển có pha kiểm thử tương ứng Các mức kiểm thử lập kế hoạch thiết kế song song Sau thực kiểm thử từ đáy tháp chữ V nên tương ứng với mức phát triển Kế hoạch kiểm thử hệ thống cần phải sớm trước pha kiểm thử bắt đầu:  Kế hoạch kiểm thử hệ thống phải khớp với yêu cầu phần mềm  Các trường hợp kiểm thử cần phải hoàn thành mà thiết kế chi tiết xong  Kiểm thử hệ thống sau lập trình 1.5 Các phương pháp kiểm thử Có phương pháp kiểm thử chính: Kiểm thử tĩnh kiểm thử động 1.5.1 Kiểm thử tĩnh – Static testing Là phương pháp kiểm thử phần mềm đòi hỏi phải duyệt lại yêu cầu đặc tả tay, thông qua việc sử dụng giấy, bút để kiểm tra logic, lần chi tiết mà khơng cần chạy chương trình Kiểm thử thường sử dụng chuyên viên thiết kế - người viết mã lệnh Kiểm thử tĩnh tự động hóa Nó thực kiểm tra toàn bao gồm chương trình phân tích bỏi trình thơng dịch biên dịch mà xác nhận tính hợp lệ cú pháp chương trình 1.5.2 Kiểm thử động – Dynamic testing Là phương pháp thử phần mềm thông qua việc dùng máy chạy chương trình để điều tra trạng thái tác động chương trình Đó kiểm thử dựa ca kiểm thử xác định thực đối tượng kiểm thử hay chạy chương trình Kiểm thử tự động kiểm tra cách thức hoat động mã lệnh, tức kiểm tra phản ứng vật lý từ hệ thống tới biên thay đổi theo thời gian Trong kiểm thử tự động, phần mềm phải thực biên dịch chạy Kiểm thử động thực bao gồm làm việc với phần mềm, nhập giá trị đầu vào kiểm tra xem liệu đầu có mong muốn hay không Các phương pháp kiểm thử tự động gồm có Unit – Unit Tests, Kiểm thử tích hợp – Intergration Tests, Kiểm thử hệ thống – System Tests, Kiểm thử chấp nhận sản phẩm – Acceptance Tests 1.6 Các chiến lược kiểm thử Ba số chiến lược kiểm thử thông dụng bao gồm: Kiểm thử hộp đen, Kiểm thử hộp trắng Kiểm thử hộp xám 1.6.1 Kiểm thử hộp đen – Black box testing Một chiến lược kiểm thử quan trọng kiểm thử hộp đen, hướng liệu, hay hướng vào/ Kiểm thử hộp đen xem chương trình “hộp đen” Mục đích bạn hồn tồn không quan tâm cách cư xử cấu bên chương trình Thay vào đó, tập trung vào tìm trường hợp mà chương trình khơng thực theo đặc tả Theo hướng tiếp cận này, liệu kiểm tra lấy từ đặc tả 10 - Mô tả đối tượng Các đối tượng chương trình kiểm tra tam giác nêu rõ bảng Đối tượng Tên đối tượng Mô tả Text Field txta Cạnh a Text Field txtb Cạnh b Text Field txtc Cạnh c Button btnkiemtra Kiểm tra Button btnhuy Hủy Text Field txttamgiac Tam giác Text Field txtchuvi Chu vi Text Field txtdientich Diện tích 3.2 Thiết kế kiểm thử 3.2.1 Kiểm thử hộp đen Kiểm thử hộp đen phương pháp tập trung vào yêu cầu mặt chức phần mềm Sau tạo điều kiện inpUnit test yêu cầu giao diện để kiểm thử chức ứng dụng kiểm tra tam giác - Yêu cầu chung giao diện Chương trình kiểm tra tam giác tạo mục đích để minh họa cho q trình kiểm thử đơn vị với công cụ kiểm thửu JUnit version 4.12 yêu cầu giao diện đơn giản Bảng 5.1 trình bày rõ yêu cầu giao diện ứng dụng - Mơ tả tình TT u cầu Test u cầu kết Các thơng tin chương trình Chương trình bao gồm: Các Label: Cạnh a, Cạnh b, Cạnh c Text Field: a, b, c, tam giác, chu vi, diện tích Button: Kiểm tra, Hủy Cho phép thực kiểm tra tam giác 38 Click Button “Kiểm tra” để tiến hành kiểm tra tam giác Cho phép nhập lại thông tin nhập Click Button “Hủy” để tiến hành nhập lại thông tin nhập Người dùng khơng cần dùng chuột Sử dụng phím “Tab” để di thực chương trình chuyển Cho phép người dùng nhập độ dài Các Text Field: Cạnh a, cạnh cạnh b, cạnh c cho phép người dùng nhập độ dài cạnh Cho phép xem tam giác sau Text Field “Tính chất” cho tiến hành kiểm tra phép người dùng xem tam giác sau tiến hành kiểm tra Bảng 5.1 Yêu cầu giao diện Bảng 5.2 sau trình bày tình test dựa yêu cầu giao diện bảng 5.1 TT Dữ liệu Test Yêu cầu kết Nhập vào giá trị ba cạnh tam giác kích Trên form chương trình chọn Button “Kiếm tra” loại tam giác Nhập vào giá trị ba cạnh tam giác kích Chương trình xóa chọn Button “Hủy” trắng Text Field để người dùng nhập liệu Nhập liệu cạnh ký tự Chương trình báo lỗi đưa thông báo không nhập ký tự Không nhập liệu cạnh lại click Chương trình báo lỗi chọn Button “Kiểm tra” đưa thông báo không để trống Bảng 5.2 Mô tả tình test 39 3.2.2 Kiểm thử hộp trắng Trong kiểm thử hộp trắng, trường hợp kiểm thử thiết kê để xem xét cấu trúc nội module cấu trúc điều kiện Bảng 5.5 đưa tình test với dũ liệu đầu vào kết đầu cho trường hợp TT Tình Dữ liệu đầu vào Dữ liệu đầu Dữ liệu đầu vào kết Cạnh a: Tam giác vuông đầu Cạnh b: Cạnh c: Dữ liệu đầu vào kết Cạnh a: đầu Cạnh b: Tam giác cân Cạnh c: 3 Dữ liệu đầu vào Cạnh a: kết đầu sai Cạnh b: Tam giác thường Cạnh c: 4 Dữ liệu đầu vào kết Cạnh a: đầu sai Cạnh b: Tam giác thường Cạnh c: 10 Dữ liệu đầu vào kết Cạnh a: đầu Cạnh b: Tam giác Cạnh c: Bảng 5.3 Dữ liệu kiểm thử tốn 3.3 Kết kiểm thử chương trình 3.3.1 Kiểm thử hộp đen - Kết kiểm thử giao diện TT Yêu cầu Test Yêu cầu kết Kết Chương trình bao gồm: True Các thơng tin chương trình Các Label: Cạnh a, Cạnh b, Cạnh c Text Field: a, b, c, tam giác, chu vi, diện tích Button: Kiểm tra, Hủy 40 Cho phép thực kiểm tra tam Click Button “Kiểm tra” True giác để tiến hành kiểm tra tam giác Cho phép nhập lại thông tin Click Button “Hủy” để True nhập tiến hành nhập lại thông tin nhập Người dùng khơng cần dùng Sử dụng phím “Tab” để True chuột thực di chuyển chương trình Cho phép người dùng nhập Các Text Field: Cạnh a, True độ dài cạnh cạnh b, cạnh c cho phép người dùng nhập độ dài cạnh Cho phép xem tam giác Text Field “Tính chất” True sau tiến hành kiểm tra cho phép người dùng xem tam giác sau tiến hành kiểm tra Bảng 5.4: Kết kiểm thử giao diện - Kết kiểm thử chức TT Dữ liệu Test Yêu cầu kết Kết Nhập vào giá trị ba cạnh tam Trên form chương trình True giác kích chọn Button “Kiếm loại tam giác tra” Nhập vào giá trị ba cạnh tam Chương trình xóa trắng True giác kích chọn Button “Hủy” Text Field để người dùng nhập liệu Nhập liệu cạnh ký tự Chương trình báo lỗi True đưa thơng báo không nhập ký tự Không nhập liệu cạnh Chương trình báo lỗi True 41 lại click chọn Button đưa thông báo không “Kiểm tra” để trống Dữ liệu đầu vào kết Cạnh a: đầu True Cạnh b: Cạnh c: Bảng 5.5: Kết kiểm thử tình 3.3.2 Kiểm thử hộp trắng  Kiểm thử hộp trắng cho toán Kết tính test nêu bảng 5.6 trình bày bảng xx đây: import junit.framework.Assert; import org.junit.BeforeClass; import org.junit.Test; import tamgiac.tamg; public class test_check_tamgiac { private static tamg tamgiac; public final static String a="3"; public final static String b="4"; public final static String c="5"; @BeforeClass public static void preparestartAlltest(){ tamgiac=new tamg(); tamgiac.setA(a); tamgiac.setB(b); tamgiac.setC(c); } @Test public void Test_check_tamgiac(){ boolean result=true; Assert.assertEquals(tamgiac.check_tamgiac(),result); } 42 @Test public void Test_check_tamgiac_vuong(){ boolean result=true; Assert.assertEquals(tamgiac.tamgiacvuong(),result); } @Test public void Test_check_tamgiac_can(){ boolean result=false; Assert.assertEquals(tamgiac.tamgiaccan(),result); } @Test public void Test_check_tamgiac_deu(){ boolean result=false; Assert.assertEquals(tamgiac.tamgiacdeu(),result); } @Test public void Test_check_phanloai(){ int result=4; Assert.assertEquals(tamgiac.phanloai(),result); } Sau tiến hành kiểm thử, ta có kết bảng 5.6 đây: TT Tình Dữ Dữ liệu Kết đầu đầu vào liệu đầu Cạnh a: vào kết Cạnh b: đầu Tam Kết test Hình giác Kết chấp nhận 3.4 vuông Cạnh c: liệu vào cho kết tam giác vuông -> kết test Dữ liệu đầu Cạnh a: Tam giác cân 43 Kết chấp nhận 3.5 vào kết Cạnh b: liệu vào đầu cho kết Cạnh c: tam giác cân -> kết test Dữ liệu đầu Cạnh a: vào Cạnh b: Tam giác Kết chấp nhận 3.6 thường liệu vào kết Cạnh c: cho kết đầu sai tam giác thường-> kết test Dữ liệu đầu Cạnh a: vào kết Cạnh b: đầu sai Cạnh Tam giác Kết chấp nhận 3.7 thường c: liệu vào cho kết 10 không tam giác -> kết test sai Dữ liệu đầu Cạnh a: Tam giác Kết chấp nhận 3.8 vào Cạnh b: liệu vào kết đầu Cạnh c: cho kết tam giác -> kết test Bảng 5.6 Kết kiểm thử hộp trắng 44 Kết kiểm thử lần hình 3.4 cho thấy liệu đầu vào kết đầu trùng với (tam giác vuông), kết test Hình 3.2 Kết test kiểm thử chương trình lần Kết kiểm thử lần hình 3.5 cho thấy liệu đầu vào kết đầu trùng với (tam giác cân), kết test Hình 3.3 Kết test kiểm thử chương trình lần 45 Kết kiểm thử lần bảng 5.5 cho thấy liệu đầu vào kết đầu trùng với (tam giác thường), kết test Hình 3.4 Kết test kiểm thử chương trình lần Kết kiểm thử lần bảng 5.6 cho thấy liệu đầu vào kết đầu khác (dữ liệu đầu vào không tam giác kết đầu tam giác vuông) kết test Hình 3.5 Kết test kiểm thử chương trình lần 46 Hình 3.6 Kết test kiểm thử chương trình lần 3.4 Giới thiệu số công cụ, thư viện hỗ trợ việc test phần mềm  Cactus Cactus framework unit testing nguồn mở dùng để test cho đoạn mã phía bên server Java Đặc biệt Cactus cho phép bạn test Servlet, JSP, Servlet filter Cactus thừa kế từ JUnit để cung cấp lớp lớp Junit.framework.TestCase lớp: •org.apache.cactus.ServletTestCase •org.apache.cactus.JspTestCase • org.apache.cactus.FilterTestCase Mỗi test case Cactus cung cấp chức đặc biệt Cactus test thực thi client server Khi sử dụng Cactus bạn cần tạo lớp thừa kế từ ba lớp Sau Cactus tạo chạy thể test case Một chạy JVM phía client, lại chạy bên JVM môi trường chạy servlet (servlet container) phía server Bên client phía client cho phép HTTP headers tham số HTTP thêm vào yêu cầu Bên phía server gọi thực thi phương thức bên servlet bạn để thực xác nhận nào, sau gởi phản hồi ngược trở lại cho phía client Tíếp đến bên phía client xác nhận phản hồi từ bên server gởi có chứa thơng tin mong muốn hay khơng 47 Có thể download Cactus từ địa http://jakarta.apache.org/cactus  HttpUnit HttpUnit thư viện nguồn mở Java dùng để tương tác với server HTTP Với HttpUnit, chương trình Java bạn truy xuất trực tiếp đến server mà không cần thiết phải sử dụng đến trình duyệt HttpUnit cung cấp API để phân tích HTML, nhận thơng tin biểu mẫu trang web, theo dõi siêu liên kết, thiết lập cookie thực tác vụ khác có liên quan đến trình duyệt Web Ngồi gồm thư viện để thao tác trực tiếp đến servlet, không cần thiết phải khởi động web server Thông thường sử dụng kết hợp HttpUnit JUnit để viết tét JUnit định nghĩa framework dùng để kiểm tra, phương thức testXXX() bạn sử dụng hàm API thư viện HttpUnit để truy cập kiểm tra trang web  Nunit NUnit tool ,có nhiều version khác nhau,trong NUnit version 2.5 phát hành vào tháng 2/2008 nên lạ với nhiều người,đặc biệt phiên hỗ trợ cho NET frameword Microsoft NUnit kiểm tra đơn vị với ngôn ngữ lập trình Microsoft NET Nó viết hồn tồn C # hoàn toàn thiết kế lại để tận dụng lợi nhiều tính ngơn ngữ NET Nhóm phát triển NUnit bao gồm Charlie Poole, Jamie Cansdale Gary Feldman, James W Newkirk, Alexei A Vorontsov, Michael C Hai Philip A Craig, Doug de la Torre, David White, Ethan Smith, Al Gonzalez, Ron Jeffries, Rob Jeffries 48 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN Kiểm thử phần mềm, hướng khơng mẻ giới, lại hướng Việt Nam Nó hứa hẹn tương lai cho học sinh, sinh viên ngành CNTT Với bảo tận tình tiến sĩ Vũ Vinh Quang em hoàn thành đợt làm đồ án tốt nghiệp Nội dung đạt được:  Giao diện đơn giản, thân thiện dễ sử dụng  Chương trình cho phép người dùng triển khai thực thi hệ thống cách nhanh chóng, trực quan  Áp dụng kiến thức nghiên cứu thực kiểm thử chức hệ thống Khó khăn hạn chế :  Do thời gian có hạn nên thực tập nhiều thiếu sót  Trình độ lập trình Java hạn chế  Chưa sâu nghiên cứu kiểm thử phần mềm Định hướng phát triển:  Cải thiện chương trình  Nâng cao chun mơn, sâu vào nghiên cứu kiểm thử phần mềm  Nghiên cứu số công cụ kiểm thử đơn vị, kiểm thử sở liệu, kiểm thử tải Kết đạt đồ án hiểu rõ vận dụng quy trình kiểm thử vào dự án thực tế, nghiên cứu vận dụng số công cụ hỗ trợ kiểm thử tự động đặc biết công cụ kiểm thử JUnit thực số sản phẩm demo, từ đề xuất ứng dụng kiểm thử cho ứng dụng phức tạp hơn, thực nhiều loại, nhiều giai đoạn kiểm thử Việc kiểm thử JUnit giúp tiết kiệm thời gian kiểm thử đơn vị hiệu Trên sở nghiên cứu tư liệu tư liệu kết thực nghiệm cho thấy kiểm thử phần mềm quan trọng, việc thực kiểm thử tốt ẽ làm tăng chất lượng sản phẩm Tuy nhiên, để vận dụng thực cách hiệu quy trình, phương pháp cơng cụ kiểm thử đặt nhiều vấn đề cần giải Có thể đề xuất hướng nghiên cứu triển khai đồ án là: 49  Sử dụng công cụ kiểm thử JUnit để kiểm thử chương trình phức tạp có sở liệu Để nâng cao hiệu xuất kiểm thử nhiều loại sản phẩm phần mềm khác nhau, ta cần nghiên cứu thêm nhiều công cụ kiểm thử tự động khác cơng cụ kiểm thử thực chuyên số kiểm thử 50 TÀI LIỆU THAM KHẢO [1] Software Testing, Ron Patton, Second Edition, Sam Publishing [2] Bài giảng Công nghệ phần mềm – Đại học Công nghệ thông tin Truyền thông thái nguyên [3] Báo cáo tốt nghiệp Trần Bình Dương –K50CNPM, Đại học công nghệ - Đại học quốc gia Hà Nội [4] Willem Visser, Corina S Pasareanu, and Sarfraz Khurshid Test input generation with Java PathFinder In Proceedings of the ACM/SIGSOFT International Symposium on Software Testing and Analysis (ISSTA), pages 97-107 ACM, 2004 [5] http://www.vietnamesetestingboard.org/ 51 NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN Thái Nguyên, ngày tháng … năm 2017 Giảng viên hướng dẫn 52 ... THỬ JUNIT 2.1 Kiểm thử tự động 2.1.1 Tổng quan kiểm thử tự động Kiểm thử tự động là: trình thực cách tự động bước kịch kiểm thử hay sử dụng công cụ kiểm thử tự động để thực thi tescase thay cho. .. mức kiểm thử sau Vì em xin chọn đề tài Kiểm thử phần mềm với cơng cụ JUnit để tìm hiểu thêm quy trình kiểm thử phần mềm công cụ kiểm thử tự động JUnit cho đồ án tốt nghiệp Mặc dù có nhiều cố... 17 CHƯƠNG KIỂM THỬ TỰ ĐỘNG - KIỂM THỬ JUNIT 18 2.1 Kiểm thử tự động 18 2.1.1 Tổng quan kiểm thử tự động 18 2.1.2 Quy trình kiểm thử tự động 20 2.2 Kiểm thử đơn vị

Ngày đăng: 02/11/2017, 08:37

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan