bài 4. các kỹ thuật kiểm thử

51 966 0
bài 4. các kỹ thuật kiểm thử

Đ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

BÀI 4. CÁC KỸ THUẬT KIỂM THỬ     !"#$ %&'  ( !")*+,&'   !-)./  0 !!#,!  1 !23  4 !56789  : !;67!  < !$=>-?.=@A@BC!? 3)) 07/05/14 1 4.1. PHÂN CHIA LỚP TƯƠNG ĐƯƠNG (EQUIVALENCE PARTITIONING)  Equivalence partitioning (equivalence class)@6D @!=!EF6test caseG=!H=; F+=$$ !IE F6test caseJ  KL)M#Windows calculator:  N?N?N(?O PQ;)+HRN(  N<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 07/05/14 2 4.1. PHÂN CHIA LỚP TƯƠNG ĐƯƠNG (EQUIVALENCE PARTITIONING)  Equivalence partitioning (equivalence class@!SA6test case$ ! *TF-2 $6!6*U -  D!$V!*equivalence partitionW ⇒ equivalence partition X!*)*+Y@-?)* +Y-?@*#$ -ZY!#! ⇒ TF?!@Y!#!X6#$ $6?[! equivalence partition$6 ⇒ \VX$V]#ADPQAF 07/05/14 3 4.1. PHÂN CHIA LỚP TƯƠNG ĐƯƠNG (EQUIVALENCE PARTITIONING)  KL)MW06-+copy Windows CalculatorW  %$!^)_PQ$^8_  %$!^)_PQ\`^7CN_  %$!^)_PQ\`^_  \`^%N7CN_  \`^%N_ ⇒ @!(Equivalence partitioning ⇒ /A!L?@Equivalence partitioning 07/05/14 4 4.1. PHÂN CHIA LỚP TƯƠNG ĐƯƠNG (EQUIVALENCE PARTITIONING)  KL)MW !$=>!S^le name” @S;^Save As” aZWindows:  BSlenameZWindowsZ ]6$b-?;cdeWfghiQj@X XcV0$b-W  • b-Fb • b-$kFb • /lS)@Fb • /l6m2l6 )@ 07/05/14 5 4.1. PHÂN CHIA LỚP TƯƠNG ĐƯƠNG (EQUIVALENCE PARTITIONING)  K+6equivalence partitioning:  BLZ  n=!H=L$o?$k$k!G  %]Y8ZPQ=Ao  6@6BU@!SX!6 -  /!Uop!S@  \l#8#Zq!S 07/05/14 6 7  /r$V  %6;X 9V@X!W  Positive tests (clean tests):  Test dựa trên dened requirements  Test những trường hợp, hoàn cảnh sử dụng thông thường  Negative tests (dirty tests):  Test nhằm tìm ra lỗi  Test những trường hợp, hoàn cảnh sử dụng đặc biệt, bất thường (như invalid input, vượt quá trị biên, chịu stress,…) 4.1. PHÂN CHIA LỚP TƯƠNG ĐƯƠNG (EQUIVALENCE PARTITIONING) 07/05/14 8  KL)MW]os$b-cH@L! Example program:  Begin  Read (AAAAAAAAAA)  Print  End Phân chia lớp tương đương như thế nào? 4.1. PHÂN CHIA LỚP TƯƠNG ĐƯƠNG (EQUIVALENCE PARTITIONING) 07/05/14 9  Equivalence classes for “positive” tests:  All 10 inputs consist of the same character in upper case, repeated for each letter of the alphabet.  ALL 10 inputs consist of the same character in lower case, repeated for each letter of the alphabet.  All 10 inputs are different, mixed case.  Test Cases:  TC01 - Input: AAAAAAAAAA  TC26 - Input: ZZZZZZZZZZ  TC28 - Input: aaaaaaaaaa  TC53 - Input: zzzzzzzzzz  TC54 - aBcDeFgHiK  TC55 - IhGfEdCbAe 4.1. PHÂN CHIA LỚP TƯƠNG ĐƯƠNG (EQUIVALENCE PARTITIONING)  KL)MW 07/05/14 10  KL)MW  Equivalence classes for “negative” tests:  All 10 inputs are numeric.  Mixed numeric and alphabetic inputs.  Embedded blanks  Input consists of one valid character.  Input consists of one invalid character.  Input includes special characters (*, & %, etc.)  Input consists of 11 characters.  What would be a correct output for these cases? 4.1. PHÂN CHIA LỚP TƯƠNG ĐƯƠNG (EQUIVALENCE PARTITIONING) 07/05/14 [...]... 07/05/14 35 4.8 STATE MACHINE TESTING 1 Kiểm tra luồng dữ liệu logic của phần mềm:  Để kiểm tra luồng logic, tester phải tới thăm tất cả các state bằng mọi path  Trừ những chương trình rất đơn giản, tester không thể thực hiện được tất cả các path để đi tới tất cả các state  Ví dụ: bài toán nổi tiếng: “đi du lịch tới các thành phố”  Áp dụng kỹ thuật equivalence partition để lựa chọn các state và các path... Max, Max+1 lần 30 4.7 SYNTAX TESTING  Là kỹ thuật dùng để:  Test các câu lệnh (commands)  Test việc xử lý các trường phải tuân theo một định dạng xác định  Ví dụ về syntax:  Ngày tháng  Địa chỉ email  Công thức toán học do NSD định nghĩa  … 07/05/14 31 4.7 SYNTAX TESTING  Trình tự thực hiện:  Phân tích, nắm rõ qui tắc syntax  Thiết kế các positive test cases, sử dụng kỹ thuật Equivalence... 4.5 DOMAIN TESTING  Kiểm thử miền là kiểm tra những thông tin mà người sử dụng đưa vào, các kết quả nhận được, và xem xét chúng có đúng không  Số lượng test case quá lớn  Bí quyết để kiểm thử tốt là: giảm lượng test case bằng equivalence partitioning dựa trên 1 số khái niệm cơ bản:   sub - boundary condition  Null  07/05/14 boundary condition bad data 17 4.5 DOMAIN TESTING 1 Các điều kiện biên... 07/05/14 23 4.5 DOMAIN TESTING 3 Kiểm thử những trường hợp biên (Testing the Boundary Edges) phân chia tập dữ liệu lộn xộn thành các equivalence partition   Phân vùng 1: chứa data mà hi vọng phần mềm làm việc tốt (dữ liệu trong biên)  Phân vùng 2: chứ data mà phần mềm dễ phát sinh lỗi (dữ liệu tại 2 đầu của biên) 07/05/14 24 4.5 DOMAIN TESTING 3 Kiểm thử những trường hợp biên  07/05/14 Kiểm tra giá... TESTING 1 Các điều kiện biên (boundary conditions) 2 Các loại điều kiện biên (Types of Boundary Conditions) 3 Kiểm thử những trường hợp biên (Testing the Boundary Edges) 4 Các điều kiên biên con (Sub-Boundary Conditions) 5 Default, Empty, Blank, Null, Zero, và None 6 Invalid, Wrong, Incorrect, và Garbage (vô nghĩa) Data 07/05/14 18 4.5 DOMAIN TESTING 1 Các điều kiện biên (boundary conditions)  Nếu phần... điểm mập mờ, chưa rõ ràng => thường nằm trên các giá trị biên Điều kiên biên là trạng thái ở cạnh hay ở những giá trị giới hạn của phần mềm 21 4.5 DOMAIN TESTING 2 Các loại điều kiện biên (Types of Boundary Conditions)        07/05/14 Numeric Speed Character Location Position Size Quantity 22 4.5 DOMAIN TESTING 2 Các loại điều kiện biên: để tìm ra các điều kiên biên,First/Last cần chú ý đến Min/Max... 07/05/14 12 4.2 CONTROL FLOW TESTING  Bài tập:  Hãy lập sơ đồ mô phỏng hành vi của một hệ thống/kênh bạn cần test  Hãy lập sơ đồ mô phỏng hành vi của một tiểu hệ thống/chức năng trong hệ thống đó  Hãy lập sơ đồ luồng xử lý đối với một form/item cần test 07/05/14 13 4.3 DATA FLOW TESTING  Áp dụng cho các hệ thống “data-intensive”  Ví dụ các hệ thống sản sinh báo cáo, thống kê  Ví dụ các hệ thống... 14 4.4 TRANSACTION TESTING  Áp dụng cho các hệ thống xử lý giao dịch (như đặt vé máy bay, đặt phòng khách sạn, …)  Sử dụng mô hình xử lý của hệ thống, chú trọng đến điểm bắt đầu, điểm kết thúc của từng xử lý, chú trọng tới hàng đợi (queue) 07/05/14 15 4.5 DOMAIN TESTING  Áp dụng cho các xử lý mà có xác định phạm vi (range) giá trị dữ liệu  Chú trọng test các giá trị biên on và of 07/05/14 16 4.5 ... STATE MACHINE TESTING 1 Kiểm tra luồng dữ liệu logic của phần mềm (Testing the Software's Logic Flow) 2 Tạo một bản đồ chuyển trạng thái (Creating a State Transition Map) 3 Làm giảm số lượng các trạng thái và sự chuyển trạng thái để kiểm tra (Reducing the Number of States and Transitions to Test) 4 Những gì cần được kiểm tra trong bản đặc tả (What to Specifically Test) 5 Kiểm thử trạng thái để phát.. .4.2 CONTROL FLOW TESTING  Control flow testing  Là một kỹ thuật testing căn bản  Sử dụng sơ đồ luồng xử lý (control flow graph)  Đó là sơ đồ mô hình hoá hành vi của hệ thống, chứ không phải là sơ đồ mô tả các câu lệnh trong code  Áp dụng được cho hầu hết các phần mềm, và có hiệu quả  Áp dụng được trong mọi testing stages 07/05/14 11 4.2 CONTROL FLOW TESTING Process . BÀI 4. CÁC KỸ THUẬT KIỂM THỬ     !"#$. !$V5Zc9Ib?5o@ F 07/05/ 14 4 .4. TRANSACTION TESTING 16  u)M69Ib!@X96.;!6 .)*+  %5o66.Hl@} 07/05/ 14 4.5. DOMAIN TESTING  . PARTITIONING) 07/05/ 14 11  %&'  3@!S$tA>H=  7I)M""9Ib&'  nX@"!kD6@Z+E?] $k=@"!k=6+)  u)MFYV6Y!#!?@X+=  u)MF!o 4. 2. CONTROL FLOW TESTING 07/05/ 14 12  7""9Ib Process 1 Process 2 ? Yes No Process 3 More Processing 07/05/ 14 4.2. CONTROL FLOW TESTING 13  v@AW  wx8A"!ky@Z!S+Ee$l H;Y  wx8A"!ky@Z!S

Ngày đăng: 05/07/2014, 12:47

Từ khóa liên quan

Mục lục

  • BÀI 4. CÁC KỸ THUẬT KIỂM THỬ

  • 4.1. PHÂN CHIA LỚP TƯƠNG ĐƯƠNG (EQUIVALENCE PARTITIONING)

  • Slide 3

  • Slide 4

  • Slide 5

  • Slide 6

  • Slide 7

  • Slide 8

  • Slide 9

  • Slide 10

  • 4.2. CONTROL FLOW TESTING

  • Slide 12

  • Slide 13

  • 4.3. DATA FLOW TESTING

  • 4.4. TRANSACTION TESTING

  • 4.5. DOMAIN TESTING

  • Slide 17

  • Slide 18

  • Slide 19

  • Slide 20

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

Tài liệu liên quan