BÁO CÁO;XÂY DỰNG HỆ THỐNG KIỂM THỬ PHẦN MỀM TỰ ĐỘNG
KHOA BÁO CÁO TNG KT TÀI KHOA HC VÀ CÔNG NGH CNG XÂY DNG H THNG KIM TH PHN MM T NG Ch nhi n I HM K THU BÁO CÁO TNG KT TÀI KHOA HC VÀ CÔNG NGH CNG XÂY DNG H THNG KIM TH PHN MM T NG Xác nhn c ch tài Ch nhi tài (ký, họ tên) (ký, họ tên) Đào Anh Hiển STT 1 n 2 Lê Th Ging viên K 3 Hoàng Quc Vit Ging viên C nhân STT THÔNG TIN KT QU NGHIÊN CU 1 I. Tng quan tình hình nghiên cu thuc c tài c 3 1. Tình hình nghiên cc 3 2. Tình hình nghiên cc 3 II. Tính cp thit c tài 3 III. Mc tiêu c tài 3 IV. Cách tip cu 4 1. Cách tip cn 4 u 4 ng và phm vi nghiên cu 4 ng nghiên cu 4 2. Phm vi nghiên cu 4 VI. Ni dung nghiên cu 4 PHN II: KT QU 5 M TH PHN MM, KIM TH T NG PHN MM 5 1.1 Tng quan v kim th phn mm 5 1.1.1 Các khái nin v kim th phn mm 5 1.1.1.1 Định nghĩa kiểm thử phần mềm 5 1.1.1.2. Lý do kiểm thử phần mềm 5 1.1.1.3. Vai trò của kiểm thử phần mềm 5 1.1.1.4. Mục tiêu của kiểm thử phần mềm 5 1.1.2. Tin trình thc hin kim th 6 m th phn mm 6 1.1.3.1. Kiểm thử hộp trắng 6 1.1.3.2. Kiểm thử hộp đen 6 1.1.4. Các c kim th phn mm 7 1.1.4.1. Kiểm thử đơn vị 7 1.1.4.2. Kiểm thử tích hợp 7 1.1.4.3. Kiểm thử hệ thống 8 1.1.4.4. Kiểm thử chấp nhận sản phẩm 8 1.2. Tng quan v kim th t ng phn mm 8 1.2.1. Khái nim kim th t ng 8 1.2.2. Mc tiêu ca kim th t ng 8 1.2.3. Quy trình kim th t ng 8 1.2.4 Kim th t ng chn mm 9 1.2.4.1. Khái niệm kiểm thử chức năng 9 1.2.4.2. Làm thế nào để kiểm thử tự động chức năng 9 1.2.5 Kim th t ng giao din phn mm 9 1.2.5.1. Khái niệm kiểm thử giao diện 9 1.2.5.2. Làm thế nào để kiểm thử tự động giao diện 9 1.2.5.3. Các thành phần GUI của ứng dụng cần kiểm thử: 9 M TH T NG VI REFLECTION 10 2.1. K thut Reflection 10 2.2. Lp System.Type 10 2.3. S dng Reflection 10 THUT SINH KCH BN T NG S DNG CODEDOM TRONG .NET 11 3.1. K thut CodeDom ca .NET 11 3.2. Mô hình các khái nim dùng trong CodeDom 11 3.3. Các lp trong namespace System.CodeDOM 11 3.3. S dng CodeDOM 12 THUT API CHO KIM TH GIAO DIN13 4.1. API là gì? 13 4.2. Các thành phn ca Windows API 13 4.3. Các hàm API ly thông tin v các thành phn GUI 13 NG NG DNG KIM TH T NG13 5.1 Gii pháp 13 5.2 Kin trúc ca công c 14 5.3 Th nghi 14 PH 15 1. Kt lun 15 2. Khuyn ngh 15 1 TRNG I HC S PHM K THUT HNG YÊN T 1. Thông tin chung: - tài: Xây dng h thng kim th phn mm t ng - Ch nhim: Ks. n - ch trì: Khoa CNTT - - Thi gian thc hin: 10 2. Mc tiêu: Nghiên cu k thut kim th phn mm t ng Nghiên cu k thut phân tích t ng thông tin ca phn mm cn kim th Nghiên cu k thut sinh kch bn kim th t ng Nghiên cu k thut sinh ca kim th, thc thi ca kim th kt qu kim th t ng Xây dng h thng kim th phn mm t ng 3. Tính mi và sáng to: - Nghiên cu k thut sinh ca kim th t ng t phn mm cn kim th - Nghiên cu k thut sinh kch bn kim th da trên d liu 4. Kt qu nghiên cu: c các kin thc kim th phn mm, kim th t ng phn mm. c k thut thu thp t ng thông tin ca phn mm cn kim th c k thut sinh ca kim th t ng t thông tin thu thc c k thut sinh kch bn kim th t ng t d liu Xây dng c h thng kim th phn mm t ng h tr kim th t ng phn mm v mt chn. Vit b v nhng kin thu. Công b c mt bài báo trong k yu hi tho quc gia ln th 1 ng tin b ca K thun n t và Công ngh thông tin trong cuc s 2 5. Sn phm: - thng kim th phn mm t ng 6. Hiu quc chuyn giao kt qu nghiên cu và kh ng: - S dng làm công c thc hành và hc to bo chng phn mm. 2012 3 PHN 1: I. 1. gi n kim th, kim th t ng phn mc chú trng nghiên cc bit trong vic xây dng các công c kim th. Mt trong s các cách tip cn ca các nhà nghiên cu trên th gii là xây dng các công c t ng giúp cho kim th c t ng hóa nhiu nht có th nhm gim chi phí và công sc cho kim th phn mc: sinh Test Case (TC) t gim chi phí và thi gian cho kim th viên, nâng cao chng ca TC; sinh ca kim th t ng; thc thi ca kim th t ng và t t qu ca ca kim th. TC TC này là TC III - Nghiên cu k thut kim th phn mm t ng - Nghiên cu k thut phân tích t ng thông tin ca phn mm cn kim th 4 - Nghiên cu k thut sinh TestCase, thc hi TestCase t ng - Xây dng h thng kim th phn mm t ng IV. TC V phân tích metad TC TC - c tài liu - c nghim - u - u V. VI + Nghiên cu v kim th phn mm + Nghiên cu v kim th phn mm t ng + Nghiên cu cách thu thp thông tin v phn mm cn kim th + Nghiên cu cách sinh TestCase t ng + Nghiên cu cách tht qu test t ng 5 1.1 Kim th phn mm là quá trình kho sát mt h thng hay thành phi nhu kinh, quan sát và ghi li các kt qu giá mt khía ca h thng hay thành phBảng chú giải thuật ngữ chuẩn IEEE của Thuật ngữ kỹ nghệ phần mềm- IEEE Standard Glossary of Software Engineering Terminology) [7]. 1.1 1.1 c 1.1 [...]... cũng giống nh quy trình thực hiện kiểm thử phần mềm thông th ờng 8 Hình 1.5: Quy trình KTTĐ trong mối quan hệ với KTPM 1.2.4 Kiểm thử tự động ch c năng phần mềm 1.2.4.1 Khái niệm kiểm thử ch c năng Kiểm thử chức năng à kiểm tra xem các thành phần chức năng của hệ thống hoạt động có đúng đắn hay không 1.2.4.2 Làm thế nào để kiểm thử tự động ch c năng Để kiểm thử tự động ta ph i tuân theo quy trình đ... động Kiểm thử tự động là quá trình thực hiện một cách tự động các b ớc trong một TC Nó sử dụng một công cụ kiểm thử tự động nào đó để rút ngắn thời gian kiểm thử[ 1] 1.2.2 Mục tiêu của kiểm thử tự động Gi m bớt công sức và thời gian thực hiện Tăng độ tin cậy Gi m sự nhàm chán Gi m chi phí cho tổng quá trình kiểm thử 1.2.3 Quy trình kiểm thử tự động Quy trình kiểm thử tự động phần mềm cũng giống... ca kiểm thử Sinh các ca kiểm thử Ch ơng trình cần kiểm tra (exe/dll) L u trữ các ca kiểm thử Sinh kịch b n kiểm thử Thực thi ca kiểm thử Xem kết qu Hình 5.1: Kiến trúc của công cụ kiểm thử phần mềm tự động 5.3 Thử nghiệm chương trình 14 Bảng 5.1: Dữ liệu các ca kiểm thử P ẦN : KẾT LUẬN V K UYẾN N 1 Kết luận Bằng kỹ thuật Ref ection và CodeDOM chúng tôi đã xây dựng đ ợc công cụ kiểm thử tự động phần mềm, ... kiểm thử ở mức hệ thống Trong kiểm thử ở mức tích hợp, có 02 chiến ợc cơ b n à kiểm thử từ d ới n và kiểm thử từ tr n xuống 1.1.4.3 Kiểm thử hệ thống Kiểm thử hệ thống hay còn gọi à system test (ST) à cấp độ thực hiện việc kiểm thử toàn bộ các chức năng của hệ thống có phù hợp với y u cầu đặc t hay không Kiểm thử hệ thống àm nhiệm vụ kiểm tra các hành vi chức năng của phần mềm và các y u cầu về chất ợng... Kiểm thử fuzz – Fuzz testing Kiểm thử dựa tr n mô hình – Model-based testing Ma trận dấu vết – Traceability matrix Kiểm thử thăm dò – Exploratory testing Kiểm thử dựa tr n đặc t – Specification-base testing [1] 1.1.4 Các cấp độ kiểm thử phần mềm Theo mô hình thác n ớc trình bày trong hình 1.2 thì kiểm thử phần mềm gồm có các cấp độ: kiểm thử đơn vị, kiểm thử tích hợp, kiểm thử hệ thống và kiểm. .. kiểm thử hồi quy và kiểm thử tích hợp bằng cách sử dụng lại các kịch b n kiểm thử 2 Khuyến nghị Hiện nay ngành kiểm thử phần mềm nói chung và kiểm thử tự động nói ri ng đang có b ớc phát triển tốt, cơ hội việc àm trong ĩnh vực kiểm th và kiểm thử tự động cao, nhóm có kiến nghị n n đ a nội dung đào tạo về kiểm thử tự động vào ch ơng trình đào tạo, sau này có thể tiến tới mở chuy n ngành đào tạo về kiểm. .. 1.1.4.4 Kiểm thử chấp nhận sản phẩm Thông th ờng sau giai đoạn kiểm thử hệ thống à giai đoạn kiểm thử chấp nhận s n phẩm - acceptance test (AT), đ ợc khách hàng thực hiện hoặc ủy quyền cho một nhóm thứ ba kiểm thử Mục đích của AT à để chứng minh phần mềm thỏa mãn tất c các y u cầu của khách hàng và khách hàng chấp nhận s n phẩm 1.2 Tổng quan về kiểm thử tự động phần mềm 1.2.1 Khái niệm kiểm thử tự động Kiểm. .. của kiểm thử phần mềm tự động về mặt chức năng[3] 1.2.5 Kiểm thử tự động giao diện phần mềm 1.2.5.1 Khái niệm kiểm thử giao diện Kiểm thử giao diện chính là kiểm tra xem giao diện sử dụng có nhất quán, rõ ràng, có dễ sử dụng và đúng nh mong đợi của ng ời sử dụng hay không 1.2.5.2 Làm thế nào để kiểm thử tự động giao diện Một thành phần GUI có thể đ ợc nhận dạng bằng tên, vị trí của nó, lớp thành phần. .. Ử TỰ ĐỘN B ớc 1: Kh o sát thông tin về lớp, ph ơng thức, thuộc tính trong phần mềm cần kiểm thử B ớc 2: Sinh các ca kiểm thử dựa trên các thông tin thu thập đ ợc ở b ớc 1 B ớc 3: Sinh kịch b n kiểm thử cho các ca kiểm thử để thực hiện việc kiểm thử B ớc 4: Thực thi kịch b n kiểm thử và ghi nhận kết qu B ớc 5: Trình bày kết qu B ớc 6: Sử dụng lại các kịch b n kiểm thử cho kiểm thử hồi quy và kiểm thử. .. hoạt động kiểm thử phần mềm à tạo ra các ca kiểm thử để tìm ra ỗi của phần mềm Mục ti u cuối cùng và cũng à mục ti u mà ng ời phát triển h ớng tới à kiểm thử phần mềm sẽ giúp cho ng ời phát triển có một ch ơng trình tốt, chi phí thấp nh ng vẫn đ m b o đ ợc chất ợng phần mềm [1] 1.1.2 Tiến trình thực hiện kiểm thử Tiến trình thực hiện kiểm thử nh mô t trong hình 1.1 [1] Hình 1.1 Tiến trình thực hiện kiểm . mc: sinh Test Case (TC) t gim chi phí và thi gian cho kim th viên, nâng cao chng ca TC; sinh ca kim th t ng; thc thi ca kim th t ng và t t. Assembly assembly=Assembly.Load(location); Thu thp các thông tin ca assemb c cung cp bao gm lp, c, thuc tính và s kin ca chúng. foreach (Type type in assembly.GetTypes()){