24

Pairwise testing

Embed Size (px)

Citation preview

ứ ụự ệ

SANCEMENTE TEAM

Dương Thị VânTeam leader

Ngô Thị Lan HoaMember

Trần Hương TrangMember

Nguyễn Hồng NhungMember

Nguyễn Thị Trang Member

Bùi Thi NgọcMember

Nguyễn Thanh Hải

Member

Trịnh Thị Mỹ DuyênMember

Đỗ Thị NinhMember

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 testingCô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ểu1. White box testingKhi 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 testingGrey 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 testingKiê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 testingTheo 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

InputList các item Pairwise

testing

OutputBảng testcase được sinh ra

theo cặp

IV. Các bước thực hiện Pairwise testingVí 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 testingBướ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 testingBướ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 testingBướ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 testingBướ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 se vô cung phưc tap khi sô lương

cac item trong man hınh cang lơn➢ Viêc ap dung phương phap nay băng tay se rât kho khăn va rât kho đên đam

bao tınh đung đăn cung như tınh đây đu cua bô testcase tao ra.

➢ Sư dung công cu PICT đê sinh test case

Như vây, băng viêc ap dung ky thuât sinh test case theo căp thı chung ta co tât ca 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 ca cac tham sô đâu vao.

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 PICTfile đâ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, BaohanhDiadiem : Vietnam, Singapor, MyLoaixe : BMV, Audi, Mes, CamrySodangky: Valid, Invalid

V. Công cụ PICT sinh test case theo cặpBướ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 cac bươc nay, 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 YouFRAMGIA VIET NAM

SANCLEMENTE TEAM

13F Keangnam Landmark 72 Tower, Plot E6, Pham Hung Road, Nam Tu Liem District., Ha Noi