SlideShare ist ein Scribd-Unternehmen logo
1 von 24
Downloaden Sie, um offline zu lesen
ứ ụ
ự ệ
SANCEMENTE TEAM
Dương Thị Vân
Team leader
Ngô Thị Lan Hoa
Member
Trần Hương Trang
Member
Nguyễn Hồng Nhung
Member
Nguyễn Thị Trang
Member
Bùi Thi Ngọc
Member
Nguyễn Thanh
Hải
Member
Trịnh Thị Mỹ
Duyên
Member
Đỗ Thị Ninh
Member
Khái niệm kiểm thử
Các kĩ thuật kiểm thử tiêu biểu
Pairwise testing
Các bước thực hiện Pairwise testing
Công cụ PICT sinh test case theo cặp
Đánh giá
NỘI DUNG CHÍNH
Demo
I. Kiểm thử là gì?
1. Khái niệm kiểm thử
Là quá trình thực thi chương trình/ứng dụng với
mục đích là tìm ra lỗi của phần mềm
2. Tiến trình kiểm thử
II.Một vài kĩ thuật kiểm thử tiêu biểu
II.Một vài kĩ thuật kiểm thử tiêu biểu
1. White box testing
Khi thiết kế test case và test, các tester truy cập thẳng vào
bên trong source code, cấu trúc và thuật toán của chương
trình
2. Grey box testing
Grey box testing bao gồm các kiến thức về các thuật toán,
cấu trúc bên trong của chương trình để thực hiện mục đích
việc thiết kế các trường hợp test, nhưng việc test phải thực
hiện như là người dùng (suy nghĩ theo cách nghĩ của người
dùng cuối.
II. Một vài kĩ thuật kiểm thử tiêu biểu
3. Black box testing
Kiểm thử hộp đen coi chương tr ̀nh như một “hộp đen” ta không
quan tâm về cấu trúc bên trong chương tr ̀nh. Thay vào đó, ta tập
trung vào t ̀m các trường hợp mà chương tr ̀nh không thự hiện theo
yêu cầu của đặc tả.
Một số kỹ thuật kiểm thử hộp đen tiêu biểu:
● Equivalence Partitioning
● Boundary Value Analysis
● Decision table
● Pairwise testing
III. Pairwise testing
➢ Lỗi thường được phủ bởi sự tương tác của
hai cặp tham số, và có thể bị bắt bởi bởi
kiểm thử theo cặp.
➢ Kiểm thử theo cặp cũng được gọi là kiểm
thử 2-way.
➢ Chúng ta cũng có khả năng thực hiện
kiểm thử 3-way (kiểm thử dựa trên sự kết
hợp của 3 tham số đầu vào) hoặc 4 way
(kiểm thử dựa trên sự kết hợp của 4 tham
số đầu vào)
III. Pairwise testing
➢ Kiểm thử theo cặp (pairwise testing) là một
trong những phương pháp kiểm thử hộp đen
➢ Kiểm thử theo cặp tạo ra các testcase phủ
hết các giá trị của 2 tham số thay v ̀ các bộ
giá trị của tất cả các tham số.
➢ Thực tế cho thấy, số testcase giảm đi rất
nhiều so với kiểm thử tất cả các trường hợp
nhưng vẫn đảm bảo phát hiện được 70% lỗi
của phần mềm.
70%
Lỗi của phần mềm
III. Pairwise testing
Theo R.Kuhn và M.J.Reilly thì hơn 70% số lỗi đã được tìm ra với hai điều kiện hoặc
ít hơn.
IV. Các bước thực hiện Pairwise testing
Input
List các item Pairwise
testing
Output
Bảng testcase được sinh ra
theo cặp
IV. Các bước thực hiện Pairwise testing
Ví dụ:
Loại đặt
hàng
Địa điểm Loại xe Số đăng kí
xe
Mua Việt Nam BMW Valid
Bán Singapo Audi Invalid
Bảo hành Mỹ Mercedes
Camry
IV. Các bước thực hiện Pairwise testing
Bước 1. Xác định số lượng đầu vào
Loại đặt hàng Địa điểm Loại xe Số đăng kí xe
3 3 4 2
Bước 2. Xác định số lượng case thủ công
➢ Số lượng testcase sẽ bằng t ́ch của hai giá trị lớn nhất trong bảng.
➢ Ta có 4x3 = 12 tổ hợp giá trị của 2 tham số "Địa điểm" và "Loại xe",
tức là 3x4 = 12 testcase.
➢ Lúc này, ta xây dựng một bảng gồm 12 hàng tương ứng
IV. Các bước thực hiện Pairwise testing
Bước 3: Thực hiện kết hợp 2
giá trị đầu vào lớn nhất
Loại đặt hàng Địa điểm Loại xe Số đăng kí xe
Việt Nam BMW
Singapo BMW
Mỹ BMW
Việt Nam Audi
Singapo Audi
Mỹ Audi
Việt Nam Mercedes
Singapo Mercedes
Mỹ Mercedes
Việt Nam Camry
Singapo Camry
Mỹ Camry
IV. Các bước thực hiện Pairwise testing
Bước 4: Thực hiện mapping
các giá trị
➢ Ta điền các giá trị của
tham số
➢ "Loại đặt hàng" tương
ứng với các tổ hợp ở
bảng để phủ tất cả
những cặp giá trị của nó
với cả 2 tham số "Địa
điểm" và "Loại xe" cùng
lúc
Loại đặt hàng Địa điểm Loại xe Số đăng kí xe
Mua Việt Nam BMW
Bán Singapo BMW
Bảo hành Mỹ BMW
Bán Việt Nam Audi
Bảo hành Singapo Audi
Mua Mỹ Audi
Bảo hành Việt Nam Mercedes
Mua Singapo Mercedes
Bán Mỹ Mercedes
Mua Việt Nam Camry
Bán Singapo Camry
Bảo hành Mỹ Camry
IV. Các bước thực hiện Pairwise testing
Bước 5 . Lặp lại bước 4 cho
đến khi bảng được điền hết
giá trị
Ta điền các giá trị của tham
số “Số đăng ký xe” vào cột
cuối cùng, sao cho phủ hết tất
cả các trường hợp xảy ra giữa
tham số “Số đăng ký xe” và
các tham số còn lại như bảng
bên
Loại đặt hàng Địa điểm Loại xe Số đăng kí xe
Mua Việt Nam BMW Valid
Bán Singapo BMW Invalid
Bảo hành Mỹ BMW Invalid
Bán Việt Nam Audi Valid
Bảo hành Singapo Audi Valid
Mua Mỹ Audi Invalid
Bảo hành Việt Nam Mercedes Invalid
Mua Singapo Mercedes Valid
Bán Mỹ Mercedes Valid
Mua Việt Nam Camry Valid
Bán Singapo Camry Valid
Bảo hành Mỹ Camry Invalid
IV. Các bước thực hiện Pairwise testing
➢ Tuy nhiên việc sinh testcase theo cặp bằng tay sẽ vô cù ng phứ c tạp khi số lượng
cá c item trong mà n hı̀nh cà ng lớ n
➢ Việc á p dụng phương phá p nà y bằng tay sẽ rấ t khó khăn và rấ t khó đến đảm
bảo tı́nh đú ng đắn cũng như tı́nh đầ y đủ của bộ testcase tạo ra.
➢ Sử dụng công cụ PICT để sinh test case
Như vậy, bằng việc á p dụng kỹ thuật sinh test case theo
cặp thı̀ chú ng ta có tấ t cả 12 test case, ı́t hơn rấ t nhiều
so vớ i 72 test case sinh ra bằng việc kết hợp tấ t cả cá c
tham số đầ u và o.
V. Công cụ PICT sinh test case theo cặp
- PICT (The Pairwise Independent Combinatorial Testing tool)
được các tiến sỹ Jacek Czerwonka người Nga giới thiệu trong hội
nghị quốc tế tại Pháp vào ngày 4/3/2009.
- Công cụ hỗ trợ sinh test case theo cặp một cách đơn giản, hiệu
quả nhất giúp tiết kiệm thời gian và công sức
➢ Bước 1: Truy cập trang http://www.pairwise.org/tools.asp
➢ Bước 2: Tải phiên bản mới nhất của PICT về máy
➢ Bước 3: Chạy file cài đặt PICT
V. Công cụ PICT sinh test case theo cặp
Bước 4: Tạo ra được file đầu vào cho PICT
file đầu vào này được xác định theo định dạng sau đây:
Sau đó lưu nó dưới dạng fileName.txt
<ParamName> : <Value1>, <Value2>, <Value3>, ...
IF [A] = “a1” THEN [B] = “b1”;
LoaiDatHang : Mua, Ban, Baohanh
Diadiem : Vietnam, Singapor, My
Loaixe : BMV, Audi, Mes, Camry
Sodangky: Valid, Invalid
V. Công cụ PICT sinh test case theo cặp
Bước 5. Chạy PICT để sinh ca kiểm thử theo cặp cho file.txt vừa
sinh ra bằng comand {$Link}> pict fileName.txt
V. Công cụ PICT sinh test case theo cặp
Sau khi thực hiê ̣n các bước này, sinh ra được bộtestcase như sau:
➔ Số lượng giá trị của mỗi đầu vào tăng tạo ra
sự tăng nhanh các ca kiểm thử.
➔ Chỉ cover được khoảng 70% bug
➔ Không áp dụng cho tất cả bài toán được: 1
số bài toàn ko có điều kiện rõ ràng thì khó
có thể áp dụng được
➔ Trường hợp nhiều điều kiện đầu vào việc
manual created gặp khó khăn ở logic sinh
case
VI. Đánh giá
22
➔ Dễ automatic vì có nhiều tool support
➔ Giảm số lượng case nên giảm effort
create và execute
➔ Xét được hết các trường hợp đầu vào kể
cả trường hợp ngẫu nhiên của người
dùng.
Ưu điểm Nhược điểm
http://www.pairwise.org
http://istqbexamcertification.com/what-is-a-software-testing
23
Tài liệu tham khảo
http://www.splot-research.org
Thank You
FRAMGIA VIET NAM
SANCLEMENTE TEAM
13F Keangnam Landmark 72 Tower, Plot E6,
Pham Hung Road, Nam Tu Liem District., Ha Noi

Weitere ähnliche Inhalte

Was ist angesagt?

Trí tuệ nhân tạo "Game cờ Caro"
Trí tuệ nhân tạo "Game cờ Caro"Trí tuệ nhân tạo "Game cờ Caro"
Trí tuệ nhân tạo "Game cờ Caro"Ham Hau
 
Báo Cáo Đề Tài Xây Dựng Phần Mềm Quản Lí Khách Hàng Trên Android
Báo Cáo Đề Tài Xây Dựng Phần Mềm Quản Lí Khách Hàng Trên AndroidBáo Cáo Đề Tài Xây Dựng Phần Mềm Quản Lí Khách Hàng Trên Android
Báo Cáo Đề Tài Xây Dựng Phần Mềm Quản Lí Khách Hàng Trên AndroidDlinh Truong
 
Tìm hiểu về kỹ thuật Kiểm thử phần mềm
Tìm hiểu về kỹ thuật Kiểm thử phần mềmTìm hiểu về kỹ thuật Kiểm thử phần mềm
Tìm hiểu về kỹ thuật Kiểm thử phần mềmNguyễn Anh
 
CÁC BÀI TOÁN KHAI PHÁ DỮ LIỆU VÀ ỨNG DỤNG CỦA KHAI PHÁ DỮ LIỆU.pdf
CÁC BÀI TOÁN KHAI PHÁ DỮ LIỆU VÀ ỨNG  DỤNG CỦA KHAI PHÁ DỮ LIỆU.pdfCÁC BÀI TOÁN KHAI PHÁ DỮ LIỆU VÀ ỨNG  DỤNG CỦA KHAI PHÁ DỮ LIỆU.pdf
CÁC BÀI TOÁN KHAI PHÁ DỮ LIỆU VÀ ỨNG DỤNG CỦA KHAI PHÁ DỮ LIỆU.pdfMan_Ebook
 
Phân tích thiết kế hệ thống thông tin quản lý bán hàng của công ty cổ phần qu...
Phân tích thiết kế hệ thống thông tin quản lý bán hàng của công ty cổ phần qu...Phân tích thiết kế hệ thống thông tin quản lý bán hàng của công ty cổ phần qu...
Phân tích thiết kế hệ thống thông tin quản lý bán hàng của công ty cổ phần qu...Dịch vụ Làm Luận Văn 0936885877
 
Slide Báo Cáo Đồ Án Tốt Nghiệp CNTT
Slide Báo Cáo Đồ Án Tốt Nghiệp CNTTSlide Báo Cáo Đồ Án Tốt Nghiệp CNTT
Slide Báo Cáo Đồ Án Tốt Nghiệp CNTTHiệu Nguyễn
 
Báo cáo thực tập công nghệ thông tin.
Báo cáo thực tập công nghệ thông tin.Báo cáo thực tập công nghệ thông tin.
Báo cáo thực tập công nghệ thông tin.ssuser499fca
 
Tìm hiểu các kỹ thuật kiểm thử phần mềm ứng dụng trong lập trình Java.
Tìm hiểu các kỹ thuật kiểm thử phần mềm  ứng dụng trong lập trình Java.Tìm hiểu các kỹ thuật kiểm thử phần mềm  ứng dụng trong lập trình Java.
Tìm hiểu các kỹ thuật kiểm thử phần mềm ứng dụng trong lập trình Java.Nguyễn Anh
 
PHÂN TÍCH THIẾT KẾ HỆ THỐNG BÁN HÀNG QUA MẠNG
PHÂN TÍCH THIẾT KẾ HỆ THỐNG BÁN HÀNG QUA MẠNGPHÂN TÍCH THIẾT KẾ HỆ THỐNG BÁN HÀNG QUA MẠNG
PHÂN TÍCH THIẾT KẾ HỆ THỐNG BÁN HÀNG QUA MẠNGThùy Linh
 
Giáo trình phân tích thiết kế hệ thống thông tin
Giáo trình phân tích thiết kế hệ thống thông tinGiáo trình phân tích thiết kế hệ thống thông tin
Giáo trình phân tích thiết kế hệ thống thông tinVõ Phúc
 
Xây dựng biểu đồ use case
Xây dựng biểu đồ use caseXây dựng biểu đồ use case
Xây dựng biểu đồ use caseTrung Chinh Hà
 
Tiền xử lí dữ liệu bằng weka và lập trình tiền xử lí
Tiền xử lí dữ liệu bằng weka và lập trình tiền xử líTiền xử lí dữ liệu bằng weka và lập trình tiền xử lí
Tiền xử lí dữ liệu bằng weka và lập trình tiền xử líKhoa Hồ Anh
 
Kiem thu phan mem
Kiem thu phan memKiem thu phan mem
Kiem thu phan memTIen Le
 
Hỗ trợ ra quyết định
Hỗ trợ ra quyết địnhHỗ trợ ra quyết định
Hỗ trợ ra quyết địnhlmphuong06
 
Phân tích thiết kế hệ thống của hàng bán điện thoại di động
Phân tích thiết kế hệ thống của hàng bán điện thoại di độngPhân tích thiết kế hệ thống của hàng bán điện thoại di động
Phân tích thiết kế hệ thống của hàng bán điện thoại di độngNguyễn Danh Thanh
 
Thiet ke test case luong
Thiet ke test case luongThiet ke test case luong
Thiet ke test case luongHoangThiHien1
 
Thiết kế csdl quản lý nhân sự
Thiết kế csdl quản lý nhân sựThiết kế csdl quản lý nhân sự
Thiết kế csdl quản lý nhân sựleemindinh
 
Bài 3 : Các ràng buộc toàn vẹn dữ liệu - SQL server
Bài 3 : Các ràng buộc toàn vẹn dữ liệu - SQL serverBài 3 : Các ràng buộc toàn vẹn dữ liệu - SQL server
Bài 3 : Các ràng buộc toàn vẹn dữ liệu - SQL serverMasterCode.vn
 

Was ist angesagt? (20)

Trí tuệ nhân tạo "Game cờ Caro"
Trí tuệ nhân tạo "Game cờ Caro"Trí tuệ nhân tạo "Game cờ Caro"
Trí tuệ nhân tạo "Game cờ Caro"
 
Báo Cáo Đề Tài Xây Dựng Phần Mềm Quản Lí Khách Hàng Trên Android
Báo Cáo Đề Tài Xây Dựng Phần Mềm Quản Lí Khách Hàng Trên AndroidBáo Cáo Đề Tài Xây Dựng Phần Mềm Quản Lí Khách Hàng Trên Android
Báo Cáo Đề Tài Xây Dựng Phần Mềm Quản Lí Khách Hàng Trên Android
 
Tìm hiểu về kỹ thuật Kiểm thử phần mềm
Tìm hiểu về kỹ thuật Kiểm thử phần mềmTìm hiểu về kỹ thuật Kiểm thử phần mềm
Tìm hiểu về kỹ thuật Kiểm thử phần mềm
 
Đề tài: Quản lí Tour du lịch, HAY, 9đ
Đề tài: Quản lí Tour du lịch, HAY, 9đĐề tài: Quản lí Tour du lịch, HAY, 9đ
Đề tài: Quản lí Tour du lịch, HAY, 9đ
 
CÁC BÀI TOÁN KHAI PHÁ DỮ LIỆU VÀ ỨNG DỤNG CỦA KHAI PHÁ DỮ LIỆU.pdf
CÁC BÀI TOÁN KHAI PHÁ DỮ LIỆU VÀ ỨNG  DỤNG CỦA KHAI PHÁ DỮ LIỆU.pdfCÁC BÀI TOÁN KHAI PHÁ DỮ LIỆU VÀ ỨNG  DỤNG CỦA KHAI PHÁ DỮ LIỆU.pdf
CÁC BÀI TOÁN KHAI PHÁ DỮ LIỆU VÀ ỨNG DỤNG CỦA KHAI PHÁ DỮ LIỆU.pdf
 
Phân tích thiết kế hệ thống thông tin quản lý bán hàng của công ty cổ phần qu...
Phân tích thiết kế hệ thống thông tin quản lý bán hàng của công ty cổ phần qu...Phân tích thiết kế hệ thống thông tin quản lý bán hàng của công ty cổ phần qu...
Phân tích thiết kế hệ thống thông tin quản lý bán hàng của công ty cổ phần qu...
 
Slide Báo Cáo Đồ Án Tốt Nghiệp CNTT
Slide Báo Cáo Đồ Án Tốt Nghiệp CNTTSlide Báo Cáo Đồ Án Tốt Nghiệp CNTT
Slide Báo Cáo Đồ Án Tốt Nghiệp CNTT
 
Báo cáo thực tập công nghệ thông tin.
Báo cáo thực tập công nghệ thông tin.Báo cáo thực tập công nghệ thông tin.
Báo cáo thực tập công nghệ thông tin.
 
Tìm hiểu các kỹ thuật kiểm thử phần mềm ứng dụng trong lập trình Java.
Tìm hiểu các kỹ thuật kiểm thử phần mềm  ứng dụng trong lập trình Java.Tìm hiểu các kỹ thuật kiểm thử phần mềm  ứng dụng trong lập trình Java.
Tìm hiểu các kỹ thuật kiểm thử phần mềm ứng dụng trong lập trình Java.
 
PHÂN TÍCH THIẾT KẾ HỆ THỐNG BÁN HÀNG QUA MẠNG
PHÂN TÍCH THIẾT KẾ HỆ THỐNG BÁN HÀNG QUA MẠNGPHÂN TÍCH THIẾT KẾ HỆ THỐNG BÁN HÀNG QUA MẠNG
PHÂN TÍCH THIẾT KẾ HỆ THỐNG BÁN HÀNG QUA MẠNG
 
Giáo trình phân tích thiết kế hệ thống thông tin
Giáo trình phân tích thiết kế hệ thống thông tinGiáo trình phân tích thiết kế hệ thống thông tin
Giáo trình phân tích thiết kế hệ thống thông tin
 
Xây dựng biểu đồ use case
Xây dựng biểu đồ use caseXây dựng biểu đồ use case
Xây dựng biểu đồ use case
 
Đề tài: Thiết kế hệ thống thông tin quản lý phân phối Gas, HOT
Đề tài: Thiết kế hệ thống thông tin quản lý phân phối Gas, HOTĐề tài: Thiết kế hệ thống thông tin quản lý phân phối Gas, HOT
Đề tài: Thiết kế hệ thống thông tin quản lý phân phối Gas, HOT
 
Tiền xử lí dữ liệu bằng weka và lập trình tiền xử lí
Tiền xử lí dữ liệu bằng weka và lập trình tiền xử líTiền xử lí dữ liệu bằng weka và lập trình tiền xử lí
Tiền xử lí dữ liệu bằng weka và lập trình tiền xử lí
 
Kiem thu phan mem
Kiem thu phan memKiem thu phan mem
Kiem thu phan mem
 
Hỗ trợ ra quyết định
Hỗ trợ ra quyết địnhHỗ trợ ra quyết định
Hỗ trợ ra quyết định
 
Phân tích thiết kế hệ thống của hàng bán điện thoại di động
Phân tích thiết kế hệ thống của hàng bán điện thoại di độngPhân tích thiết kế hệ thống của hàng bán điện thoại di động
Phân tích thiết kế hệ thống của hàng bán điện thoại di động
 
Thiet ke test case luong
Thiet ke test case luongThiet ke test case luong
Thiet ke test case luong
 
Thiết kế csdl quản lý nhân sự
Thiết kế csdl quản lý nhân sựThiết kế csdl quản lý nhân sự
Thiết kế csdl quản lý nhân sự
 
Bài 3 : Các ràng buộc toàn vẹn dữ liệu - SQL server
Bài 3 : Các ràng buộc toàn vẹn dữ liệu - SQL serverBài 3 : Các ràng buộc toàn vẹn dữ liệu - SQL server
Bài 3 : Các ràng buộc toàn vẹn dữ liệu - SQL server
 

Ähnlich wie Pairwise testing

Nguyên tắc cơ bản của kiểm thử phần mềm
Nguyên tắc cơ bản của kiểm thử phần mềmNguyên tắc cơ bản của kiểm thử phần mềm
Nguyên tắc cơ bản của kiểm thử phần mềmNgọc Khánh
 
Tailieu.vncty.com t ke-testcase
Tailieu.vncty.com   t ke-testcaseTailieu.vncty.com   t ke-testcase
Tailieu.vncty.com t ke-testcaseTrần Đức Anh
 
tailieuxanh_ontap_26.pdf
tailieuxanh_ontap_26.pdftailieuxanh_ontap_26.pdf
tailieuxanh_ontap_26.pdfVuTommy
 
kiemthuphanmemnhom14 (1)nhomsvk17thuchien.pptx
kiemthuphanmemnhom14 (1)nhomsvk17thuchien.pptxkiemthuphanmemnhom14 (1)nhomsvk17thuchien.pptx
kiemthuphanmemnhom14 (1)nhomsvk17thuchien.pptxLnNguynThnh4
 
Kiểm-thử-phần-mềmBC.pptx
Kiểm-thử-phần-mềmBC.pptxKiểm-thử-phần-mềmBC.pptx
Kiểm-thử-phần-mềmBC.pptxQuangUyH
 
6 câu hỏi phỏng vấn tester thông dụng năm 2021
6 câu hỏi phỏng vấn tester thông dụng năm 20216 câu hỏi phỏng vấn tester thông dụng năm 2021
6 câu hỏi phỏng vấn tester thông dụng năm 2021MDuyn83
 
BÀI 4: Lệnh lựa chọn và quy trình phát triển phần mềm - Giáo trình FPT
BÀI 4: Lệnh lựa chọn và quy trình phát triển phần mềm - Giáo trình FPTBÀI 4: Lệnh lựa chọn và quy trình phát triển phần mềm - Giáo trình FPT
BÀI 4: Lệnh lựa chọn và quy trình phát triển phần mềm - Giáo trình FPTMasterCode.vn
 
TÌM HIỂU CÁC KỸ THUẬT KIỂM THỬ PHẦN MỀM
TÌM HIỂU CÁC KỸ THUẬT KIỂM THỬ PHẦN MỀMTÌM HIỂU CÁC KỸ THUẬT KIỂM THỬ PHẦN MỀM
TÌM HIỂU CÁC KỸ THUẬT KIỂM THỬ PHẦN MỀMNguyễn Anh
 
Luận văn thạc sĩ
Luận văn thạc sĩLuận văn thạc sĩ
Luận văn thạc sĩssuser499fca
 
Septeniinternalseminar 20140706softwaretesting-truonganhhoangtalk-final-14070...
Septeniinternalseminar 20140706softwaretesting-truonganhhoangtalk-final-14070...Septeniinternalseminar 20140706softwaretesting-truonganhhoangtalk-final-14070...
Septeniinternalseminar 20140706softwaretesting-truonganhhoangtalk-final-14070...Working in Japan
 

Ähnlich wie Pairwise testing (20)

Nguyên tắc cơ bản của kiểm thử phần mềm
Nguyên tắc cơ bản của kiểm thử phần mềmNguyên tắc cơ bản của kiểm thử phần mềm
Nguyên tắc cơ bản của kiểm thử phần mềm
 
Kiem thu
Kiem thuKiem thu
Kiem thu
 
Tailieu.vncty.com t ke-testcase
Tailieu.vncty.com   t ke-testcaseTailieu.vncty.com   t ke-testcase
Tailieu.vncty.com t ke-testcase
 
Đề tài: Công cụ sinh dữ liệu thử tự động cho chương trình Java
Đề tài: Công cụ sinh dữ liệu thử tự động cho chương trình JavaĐề tài: Công cụ sinh dữ liệu thử tự động cho chương trình Java
Đề tài: Công cụ sinh dữ liệu thử tự động cho chương trình Java
 
tailieuxanh_ontap_26.pdf
tailieuxanh_ontap_26.pdftailieuxanh_ontap_26.pdf
tailieuxanh_ontap_26.pdf
 
kiemthuphanmemnhom14 (1)nhomsvk17thuchien.pptx
kiemthuphanmemnhom14 (1)nhomsvk17thuchien.pptxkiemthuphanmemnhom14 (1)nhomsvk17thuchien.pptx
kiemthuphanmemnhom14 (1)nhomsvk17thuchien.pptx
 
Cac kythuatktpm
Cac kythuatktpmCac kythuatktpm
Cac kythuatktpm
 
Cac kythuatktpm
Cac kythuatktpmCac kythuatktpm
Cac kythuatktpm
 
Kiểm Thử Đột Biến Trong Môi Trường SimulinkMatlab.doc
Kiểm Thử Đột Biến Trong Môi Trường SimulinkMatlab.docKiểm Thử Đột Biến Trong Môi Trường SimulinkMatlab.doc
Kiểm Thử Đột Biến Trong Môi Trường SimulinkMatlab.doc
 
Kiểm-thử-phần-mềmBC.pptx
Kiểm-thử-phần-mềmBC.pptxKiểm-thử-phần-mềmBC.pptx
Kiểm-thử-phần-mềmBC.pptx
 
chuong 5
chuong 5chuong 5
chuong 5
 
CHUONG 2.pdf
CHUONG 2.pdfCHUONG 2.pdf
CHUONG 2.pdf
 
Automation Testing & TDD
Automation Testing & TDDAutomation Testing & TDD
Automation Testing & TDD
 
6 câu hỏi phỏng vấn tester thông dụng năm 2021
6 câu hỏi phỏng vấn tester thông dụng năm 20216 câu hỏi phỏng vấn tester thông dụng năm 2021
6 câu hỏi phỏng vấn tester thông dụng năm 2021
 
BÀI 4: Lệnh lựa chọn và quy trình phát triển phần mềm - Giáo trình FPT
BÀI 4: Lệnh lựa chọn và quy trình phát triển phần mềm - Giáo trình FPTBÀI 4: Lệnh lựa chọn và quy trình phát triển phần mềm - Giáo trình FPT
BÀI 4: Lệnh lựa chọn và quy trình phát triển phần mềm - Giáo trình FPT
 
TÌM HIỂU CÁC KỸ THUẬT KIỂM THỬ PHẦN MỀM
TÌM HIỂU CÁC KỸ THUẬT KIỂM THỬ PHẦN MỀMTÌM HIỂU CÁC KỸ THUẬT KIỂM THỬ PHẦN MỀM
TÌM HIỂU CÁC KỸ THUẬT KIỂM THỬ PHẦN MỀM
 
Luận văn thạc sĩ
Luận văn thạc sĩLuận văn thạc sĩ
Luận văn thạc sĩ
 
Xây Dựng Công Cụ Sinh Dữ Liệu Thử Tự Động Cho Chương Trình Java.doc
Xây Dựng Công Cụ Sinh Dữ Liệu Thử Tự Động Cho Chương Trình Java.docXây Dựng Công Cụ Sinh Dữ Liệu Thử Tự Động Cho Chương Trình Java.doc
Xây Dựng Công Cụ Sinh Dữ Liệu Thử Tự Động Cho Chương Trình Java.doc
 
Huong dan thiet ke thi nghiem ao
Huong dan thiet ke thi nghiem aoHuong dan thiet ke thi nghiem ao
Huong dan thiet ke thi nghiem ao
 
Septeniinternalseminar 20140706softwaretesting-truonganhhoangtalk-final-14070...
Septeniinternalseminar 20140706softwaretesting-truonganhhoangtalk-final-14070...Septeniinternalseminar 20140706softwaretesting-truonganhhoangtalk-final-14070...
Septeniinternalseminar 20140706softwaretesting-truonganhhoangtalk-final-14070...
 

Pairwise testing

  • 2. SANCEMENTE TEAM Dương Thị Vân Team leader Ngô Thị Lan Hoa Member Trần Hương Trang Member Nguyễn Hồng Nhung Member Nguyễn Thị Trang Member Bùi Thi Ngọc Member Nguyễn Thanh Hải Member Trịnh Thị Mỹ Duyên Member Đỗ Thị Ninh Member
  • 3. Khái niệm kiểm thử Các kĩ thuật kiểm thử tiêu biểu Pairwise testing Các bước thực hiện Pairwise testing Công cụ PICT sinh test case theo cặp Đánh giá NỘI DUNG CHÍNH Demo
  • 4. I. Kiểm thử là gì? 1. Khái niệm kiểm thử Là quá trình thực thi chương trình/ứng dụng với mục đích là tìm ra lỗi của phần mềm 2. Tiến trình kiểm thử
  • 5. II.Một vài kĩ thuật kiểm thử tiêu biểu
  • 6. II.Một vài kĩ thuật kiểm thử tiêu biểu 1. White box testing Khi thiết kế test case và test, các tester truy cập thẳng vào bên trong source code, cấu trúc và thuật toán của chương trình 2. Grey box testing Grey box testing bao gồm các kiến thức về các thuật toán, cấu trúc bên trong của chương trình để thực hiện mục đích việc thiết kế các trường hợp test, nhưng việc test phải thực hiện như là người dùng (suy nghĩ theo cách nghĩ của người dùng cuối.
  • 7. II. Một vài kĩ thuật kiểm thử tiêu biểu 3. Black box testing Kiểm thử hộp đen coi chương tr ̀nh như một “hộp đen” ta không quan tâm về cấu trúc bên trong chương tr ̀nh. Thay vào đó, ta tập trung vào t ̀m các trường hợp mà chương tr ̀nh không thự hiện theo yêu cầu của đặc tả. Một số kỹ thuật kiểm thử hộp đen tiêu biểu: ● Equivalence Partitioning ● Boundary Value Analysis ● Decision table ● Pairwise testing
  • 8. III. Pairwise testing ➢ Lỗi thường được phủ bởi sự tương tác của hai cặp tham số, và có thể bị bắt bởi bởi kiểm thử theo cặp. ➢ Kiểm thử theo cặp cũng được gọi là kiểm thử 2-way. ➢ Chúng ta cũng có khả năng thực hiện kiểm thử 3-way (kiểm thử dựa trên sự kết hợp của 3 tham số đầu vào) hoặc 4 way (kiểm thử dựa trên sự kết hợp của 4 tham số đầu vào)
  • 9. III. Pairwise testing ➢ Kiểm thử theo cặp (pairwise testing) là một trong những phương pháp kiểm thử hộp đen ➢ Kiểm thử theo cặp tạo ra các testcase phủ hết các giá trị của 2 tham số thay v ̀ các bộ giá trị của tất cả các tham số. ➢ Thực tế cho thấy, số testcase giảm đi rất nhiều so với kiểm thử tất cả các trường hợp nhưng vẫn đảm bảo phát hiện được 70% lỗi của phần mềm. 70% Lỗi của phần mềm
  • 10. III. Pairwise testing Theo R.Kuhn và M.J.Reilly thì hơn 70% số lỗi đã được tìm ra với hai điều kiện hoặc ít hơn.
  • 11. IV. Các bước thực hiện Pairwise testing Input List các item Pairwise testing Output Bảng testcase được sinh ra theo cặp
  • 12. IV. Các bước thực hiện Pairwise testing Ví dụ: Loại đặt hàng Địa điểm Loại xe Số đăng kí xe Mua Việt Nam BMW Valid Bán Singapo Audi Invalid Bảo hành Mỹ Mercedes Camry
  • 13. IV. Các bước thực hiện Pairwise testing Bước 1. Xác định số lượng đầu vào Loại đặt hàng Địa điểm Loại xe Số đăng kí xe 3 3 4 2 Bước 2. Xác định số lượng case thủ công ➢ Số lượng testcase sẽ bằng t ́ch của hai giá trị lớn nhất trong bảng. ➢ Ta có 4x3 = 12 tổ hợp giá trị của 2 tham số "Địa điểm" và "Loại xe", tức là 3x4 = 12 testcase. ➢ Lúc này, ta xây dựng một bảng gồm 12 hàng tương ứng
  • 14. IV. Các bước thực hiện Pairwise testing Bước 3: Thực hiện kết hợp 2 giá trị đầu vào lớn nhất Loại đặt hàng Địa điểm Loại xe Số đăng kí xe Việt Nam BMW Singapo BMW Mỹ BMW Việt Nam Audi Singapo Audi Mỹ Audi Việt Nam Mercedes Singapo Mercedes Mỹ Mercedes Việt Nam Camry Singapo Camry Mỹ Camry
  • 15. IV. Các bước thực hiện Pairwise testing Bước 4: Thực hiện mapping các giá trị ➢ Ta điền các giá trị của tham số ➢ "Loại đặt hàng" tương ứng với các tổ hợp ở bảng để phủ tất cả những cặp giá trị của nó với cả 2 tham số "Địa điểm" và "Loại xe" cùng lúc Loại đặt hàng Địa điểm Loại xe Số đăng kí xe Mua Việt Nam BMW Bán Singapo BMW Bảo hành Mỹ BMW Bán Việt Nam Audi Bảo hành Singapo Audi Mua Mỹ Audi Bảo hành Việt Nam Mercedes Mua Singapo Mercedes Bán Mỹ Mercedes Mua Việt Nam Camry Bán Singapo Camry Bảo hành Mỹ Camry
  • 16. IV. Các bước thực hiện Pairwise testing Bước 5 . Lặp lại bước 4 cho đến khi bảng được điền hết giá trị Ta điền các giá trị của tham số “Số đăng ký xe” vào cột cuối cùng, sao cho phủ hết tất cả các trường hợp xảy ra giữa tham số “Số đăng ký xe” và các tham số còn lại như bảng bên Loại đặt hàng Địa điểm Loại xe Số đăng kí xe Mua Việt Nam BMW Valid Bán Singapo BMW Invalid Bảo hành Mỹ BMW Invalid Bán Việt Nam Audi Valid Bảo hành Singapo Audi Valid Mua Mỹ Audi Invalid Bảo hành Việt Nam Mercedes Invalid Mua Singapo Mercedes Valid Bán Mỹ Mercedes Valid Mua Việt Nam Camry Valid Bán Singapo Camry Valid Bảo hành Mỹ Camry Invalid
  • 17. IV. Các bước thực hiện Pairwise testing ➢ Tuy nhiên việc sinh testcase theo cặp bằng tay sẽ vô cù ng phứ c tạp khi số lượng cá c item trong mà n hı̀nh cà ng lớ n ➢ Việc á p dụng phương phá p nà y bằng tay sẽ rấ t khó khăn và rấ t khó đến đảm bảo tı́nh đú ng đắn cũng như tı́nh đầ y đủ của bộ testcase tạo ra. ➢ Sử dụng công cụ PICT để sinh test case Như vậy, bằng việc á p dụng kỹ thuật sinh test case theo cặp thı̀ chú ng ta có tấ t cả 12 test case, ı́t hơn rấ t nhiều so vớ i 72 test case sinh ra bằng việc kết hợp tấ t cả cá c tham số đầ u và o.
  • 18. V. Công cụ PICT sinh test case theo cặp - PICT (The Pairwise Independent Combinatorial Testing tool) được các tiến sỹ Jacek Czerwonka người Nga giới thiệu trong hội nghị quốc tế tại Pháp vào ngày 4/3/2009. - Công cụ hỗ trợ sinh test case theo cặp một cách đơn giản, hiệu quả nhất giúp tiết kiệm thời gian và công sức ➢ Bước 1: Truy cập trang http://www.pairwise.org/tools.asp ➢ Bước 2: Tải phiên bản mới nhất của PICT về máy ➢ Bước 3: Chạy file cài đặt PICT
  • 19. V. Công cụ PICT sinh test case theo cặp Bước 4: Tạo ra được file đầu vào cho PICT file đầu vào này được xác định theo định dạng sau đây: Sau đó lưu nó dưới dạng fileName.txt <ParamName> : <Value1>, <Value2>, <Value3>, ... IF [A] = “a1” THEN [B] = “b1”; LoaiDatHang : Mua, Ban, Baohanh Diadiem : Vietnam, Singapor, My Loaixe : BMV, Audi, Mes, Camry Sodangky: Valid, Invalid
  • 20. V. Công cụ PICT sinh test case theo cặp Bước 5. Chạy PICT để sinh ca kiểm thử theo cặp cho file.txt vừa sinh ra bằng comand {$Link}> pict fileName.txt
  • 21. V. Công cụ PICT sinh test case theo cặp Sau khi thực hiê ̣n các bước này, sinh ra được bộtestcase như sau:
  • 22. ➔ Số lượng giá trị của mỗi đầu vào tăng tạo ra sự tăng nhanh các ca kiểm thử. ➔ Chỉ cover được khoảng 70% bug ➔ Không áp dụng cho tất cả bài toán được: 1 số bài toàn ko có điều kiện rõ ràng thì khó có thể áp dụng được ➔ Trường hợp nhiều điều kiện đầu vào việc manual created gặp khó khăn ở logic sinh case VI. Đánh giá 22 ➔ Dễ automatic vì có nhiều tool support ➔ Giảm số lượng case nên giảm effort create và execute ➔ Xét được hết các trường hợp đầu vào kể cả trường hợp ngẫu nhiên của người dùng. Ưu điểm Nhược điểm
  • 24. Thank You FRAMGIA VIET NAM SANCLEMENTE TEAM 13F Keangnam Landmark 72 Tower, Plot E6, Pham Hung Road, Nam Tu Liem District., Ha Noi