BO GIAO DỤC VÀ BẢO TẠO TRUONG DAI HOC BACH KHOA HA NOL YH ONOUWL NYATION. Nguyễn Trạng Hà KỸ THUẬT KIỂM THỬ HỘI QUY ỨNG DỤNG TRONG PIIAT TRIEN CAC UNG DUNG TREN DIỆN THOẠI THÔNG MINIL WYN NYHd L YOHL AM LUẬN VAN THAC Si KY THUAT PHAN MEM daPl VOHN TIả Nội — 2017 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI Nguyễn Trọng Hà KY THUAT KIEM THU HOI QUY UNG DỤNG TRONG POAT TRIGN CAC UNG DUNG TREN DIEN THOAI THONG MINH Chuyên ngành : Kỹ thuật phần mềm LUẬN VĂN THẠC SĨ KỸ THUẬT NGƯỜI HƯỚNG DẪN KHOA HỌC TS. PHAN THANH HUNG Hà Nội —2017 LOI CAM DOAN Téi xin cam đoan những gi téi viet dudi day là hoàn toàn chính thống, không sao chép, những kết quá đo đạc mỏ phóng có trong luận văn chưa từng được công hố từ bất cứ tải liệu nào đưới mọi hình thức. Các thông tin sit dung trong luận văn có nguồn gốc và được trích din ra rang.
Tôi xin hoàn toản chịu trách nhiệm nếu có đấu hiệu sao chép kết quả từ các tải liệu khác. HỌC VIÊN NGUYỄN TRỌNG HÀ Trong mỏi trường phát triển phần mềm hiện nay, một đội kiểm thử có thể tách biệt với đội phát triển, Các thánh viên trong đội kiểm thử giữ các vai trò khác nhau. Các thông tin thu dược từ kiểm thử có thể được sử dụng dễ điều chính quá trinh phat triển phần mềm. Mỗi sản phẩm phan mềm cẻ một đối tượng phục vụ riêng.
Ví đụ như đổi tượng của phần mềm trò chơi điện tử là hoàn toàn khác với đổi tượng của phan mềm ngân hàng. Vì vậy, khi một tố chức phát triển hoặc đầu tư vào một sản phẩm phân mềm, họ có thể đảnh giá liệu các sân phẩm phần mềm có được chấp nhận bởi người dùng cuối, đối tượng phục vụ, người mua, hay những người giữ vai trẻ quan trọng khác hay không. Và việc kiểm Ihữ phan mém la mol quả trình nỗ lực để đưa ra những đánh giá này. Một số khải niệm Khiém khuyét (defect) và lỗi (failure) Không phải tất cả các khiếm khuyết của phần mềm bị gây ra bởi lỗi lập trình mà nguồn gồc chung của các khiêm khuyết đó nằm ở những thiểu sót trong yêu cầu, Ví du, yêu cầu không được xác nhậu mã gây re lỗi là sự sơ suẫi của các nhà thiết kế của chương trình.
Những thiểu sót yêu cầu thường. thấy trong những yêu cầu phi chức năng như là khả năng kiểm thử, khả ning mở rộng, bảo trí, lính khả dụng, hiệu suất, và khả năng bao mat [5] Lỗi phần mềm xảy ra trong suốt qưá trình như sau: Miột lập trình viễn tạo ra một lỗi (sai lắm), mả kết quả chơ ra lá một khiếm khuyết (thất bại, sai sót) trong mã nguồn phần mềm. Nếu lỗi này được thực hiện, trong những tỉnh huống nhất định hệ thống sẽ tạo ra kết quả sai, gây ra một sự thất bại (failure). Không phải tất cä các khiểm khuyết nhất thiết sẽ đẫn đến lỗi nghiêm trọng.
Ví dụ, lỗi trong mã chết sẽ không bao giờ dẫn đến thất bại. Lỗi có thế biển thành một sự thất bại khi môi trường thay đổi. Ví dụ về những thay đổi trang môi trường bao gồm các phân mẻm đang chạy trên một nên tàng phân cúng máy tính mới, thay đổi trang nguồn dữ liệu, hoặc tương tác với các phân mềm khác nhau. Một khiêm khuyết đuy nhất có thể đẫn đến một loạt cac dau hiệu thât bại Một vẫn đề rất cơ bản với kiểm thử phần mềm là việc kiểm thd tat cả các kết nói dầu vào và diều kiện tiên dễ (trạng thái ban dầu) là không khả thi, ngay cả với một sản phẩm dơn giản.
Điểu này có nghĩa rằng số lượng các khiếm khuyết Irong một sản phẩm phần mềm có thể rất lớn và có thể xảy ra không thường xuyên nên rất khỏ dẻ tim thấy trong quả trình MỤC LỤC LỎI MỎ ĐÂU. TONG QUAN wh KIÊM THU PHAN MEM.1, Kiểm thy phan mam. cesses essen eeeeneesereesseneeesneseen 1. Một số khái niệm.
cá nọ re mm 1. Phương pháp kiếm thử 1.4, Các mức kiểm thử. cà nà nh HH 1. Quy trình kiếm thử.
pe wnnu tm 1. Kiểm thử tự động 1. Tổng kết chương. Sar BY sgua CHƯƠNG 2.
KIEM THU HOI QUY UNG DUNG DI ĐỘNG 3. Ứng đụng trên các thiết bị đi đông (Mobile application) 2. Kiểm thử ứng dụng cho thiết bị di động,. Kỹ thuật kiểm thử hổi quy trong ứng dụng di động.
Qui trình kiếm thử hỏi quy 3. Các văn đề nên kiểm thử hồi quy 6 y 2. Công cụ hỗ trợ kiểm thử hỏi quy ứng dụng di động. Tống kết chương 9 ire} CHƯƠNG 3.
CÔNG CỤ KIAM TAI HOI QUY AP DUNG CHO TING DUNG TRÊN ĐIỆN THOẠI THÔNG MINH. Công cụ kiểm thử ReboLium. Công cụ kiếm thử Selendroid. Công cụ kiểm thử Appium 3.
Công cụ kiểm thử Šelcinium. Áp dụng thiết kế ứng dụng Adapter kiểm thứ. Thiết kẻ chương trình 3. Kiểm thử vả kết quã.
nhọn 221v xe Bu 6. Téng két chuong CHƯƠNG 4. KÉT LUẬN VÀ HƯỚNG PHAT TRIEN 4. MỤC LỤC LỎI MỎ ĐÂU.
TONG QUAN wh KIÊM THU PHAN MEM.1, Kiểm thy phan mam. cesses essen eeeeneesereesseneeesneseen 1. Một số khái niệm. cá nọ re mm 1.
Phương pháp kiếm thử 1.4, Các mức kiểm thử. cà nà nh HH 1. Quy trình kiếm thử. pe wnnu tm 1.
Kiểm thử tự động 1. Tổng kết chương. Sar BY sgua CHƯƠNG 2. KIEM THU HOI QUY UNG DUNG DI ĐỘNG 3.
Ứng đụng trên các thiết bị đi đông (Mobile application) 2. Kiểm thử ứng dụng cho thiết bị di động,. Kỹ thuật kiểm thử hổi quy trong ứng dụng di động. Qui trình kiếm thử hỏi quy 3.
Các văn đề nên kiểm thử hồi quy 6 y 2. Công cụ hỗ trợ kiểm thử hỏi quy ứng dụng di động. Tống kết chương 9 ire} CHƯƠNG 3. CÔNG CỤ KIAM TAI HOI QUY AP DUNG CHO TING DUNG TRÊN ĐIỆN THOẠI THÔNG MINH.
Công cụ kiểm thử ReboLium. Công cụ kiếm thử Selendroid. Công cụ kiểm thử Appium 3. Công cụ kiểm thử Šelcinium.
Áp dụng thiết kế ứng dụng Adapter kiểm thứ. Thiết kẻ chương trình 3. Kiểm thử vả kết quã. nhọn 221v xe Bu 6.
Téng két chuong CHƯƠNG 4. KÉT LUẬN VÀ HƯỚNG PHAT TRIEN 4. TONG QUAN VE KIEM THU PHAN MEM 1. Kiểm thử phần mềm Kiếm thử phần mềm là một haạt động kiếm tra để cung cấp cho các bên liên quan thông tin về chất lượng củasản phẩm hoặc địch vụ được kiểm thử.
Kiếm thử có thể cung cập cho đoanh nghiệp một quan điểm, một cách nhìn độc lập về phân mềm để từ đó cha phép đánh giá và thầu hiểu được những rủi ro trong quả trình triển khai phần mềm. Trong ky thuật kiểm thử không chỉ giới hạn ở việc thực hiện một chương trình hoặc ứng đụng với mục đích đi tìm các lễi phản mềm (bao gầm các lỗi và các thiêu sót) mà côn là một quá trình phẻ chuẩn và xác minh mol chuung Irinh máy tính [1], ứng dụng, sản phẩm nhằm « Đáp ứng được mọi yêu cầu đặc tả khi thiết kế và phát triển phần mềm. « Thực hiện công việc đúng như kỹ vọng, « Có thể triển khai duợc với những đặc tính tương tự. «Và đáp ứng được mọi nhu câu của các bên liên quan Tùy thuộc vào từng phương pháp, việc kiểm thử có thể được thực hiện bat ctr bic nau trong quả trình phát triển phần mêm.
Theo qui trình phát trién phan mém truyén théng (waterfall process) thì các hoại động kiểm thử được tiến hành sau khi các yêu cầu được xác định và việc lập trình được hoàn tất nhưng trong mỗi trưởng phát triển linh hoạt (Agilc) thì việc kiểm thể được tiễn hành liên tục trong suốt quá trình xây dựng phần r Nhu vậy, mỗi một phương pháp kiểm thử bị chỉ phối theo một quy trình phat trién phan mém nhất định Kiểm thử không thể xéc định hoàn toản được tất cả các lỗi bên trong phần mềm. Thay vào đó, nó so sánh trạng thái và hành vi của sản phẩm với các nguyên tắc hay cơ chế để phát hiện vẫn để. Các nguyên tắc này có thể bao gồm (nhưng không giới hạn) các đặc tä phản mềm, hợp đẳng, sản phẩm tương đương, các phiên bản trước của cùng một sản phẩm, phủ hợp với mục đích dự kiến nhằm đáp ứng sự kỷ vọng của người đùng, khách hàng, quy định của pháp luật hiện hành và các tiêu chuẳn liên quan khác [2] Pham vi của kiểm thử phần mềm thường bao gồm việc kiểm Ira mã lệnh, thie hid các mã lệnh trong rnôi truGng va đi kiện khác nhau, và việc kiểm thử các khía canh của mã lệnh, có làm dủng nhiệm vu của chương trình bay không, và chương trình có làm những gì cần phải làm hay không CHUONG 1. TONG QUAN VE KIEM THU PHAN MEM 1.
Kiểm thử phần mềm Kiếm thử phần mềm là một haạt động kiếm tra để cung cấp cho các bên liên quan thông tin về chất lượng củasản phẩm hoặc địch vụ được kiểm thử. Kiếm thử có thể cung cập cho đoanh nghiệp một quan điểm, một cách nhìn độc lập về phân mềm để từ đó cha phép đánh giá và thầu hiểu được những rủi ro trong quả trình triển khai phần mềm. Trong ky thuật kiểm thử không chỉ giới hạn ở việc thực hiện một chương trình hoặc ứng đụng với mục đích đi tìm các lễi phản mềm (bao gầm các lỗi và các thiêu sót) mà côn là một quá trình phẻ chuẩn và xác minh mol chuung Irinh máy tính [1], ứng dụng, sản phẩm nhằm « Đáp ứng được mọi yêu cầu đặc tả khi thiết kế và phát triển phần mềm. « Thực hiện công việc đúng như kỹ vọng, « Có thể triển khai duợc với những đặc tính tương tự.
«Và đáp ứng được mọi nhu câu của các bên liên quan Tùy thuộc vào từng phương pháp, việc kiểm thử có thể được thực hiện bat ctr bic nau trong quả trình phát triển phần mêm. Theo qui trình phát trién phan mém truyén théng (waterfall process) thì các hoại động kiểm thử được tiến hành sau khi các yêu cầu được xác định và việc lập trình được hoàn tất nhưng trong mỗi trưởng phát triển linh hoạt (Agilc) thì việc kiểm thể được tiễn hành liên tục trong suốt quá trình xây dựng phần r Nhu vậy, mỗi một phương pháp kiểm thử bị chỉ phối theo một quy trình phat trién phan mém nhất định Kiểm thử không thể xéc định hoàn toản được tất cả các lỗi bên trong phần mềm. Thay vào đó, nó so sánh trạng thái và hành vi của sản phẩm với các nguyên tắc hay cơ chế để phát hiện vẫn để.