Skip to content

ISP starts with a finite (usually small) set of characteristics. For example, characteristics to describe MS students might be: major, year started, status, and visa. Each characteristic is divided into a finite (usually small) set of blocks. For example, the student characteristics may have the following blocks: major = [swe, cs, infs, other] y…

Notifications You must be signed in to change notification settings

sajedjalil/Input-Space-Partition-Test-Generator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Input-Space-Partition-Test-Generator

How to run?

  • Install JDK 11 or above.
  • Install maven 3.8.6 or above. (Older versions are not guaranteed to work)
  • Open a terminal in the project root directory.
  • Execute command - mvn clean javafx:run

What is this software?

ISP starts with a finite (usually small) set of characteristics. For example, characteristics to describe MS students might be: major, year started, status, and visa. Each characteristic is divided into a finite (usually small) set of blocks. For example, the student characteristics may have the following blocks:

major = [swe, cs, infs, other]

year started = [2022, 2021, 2020 or earlier]

status = [part-time, full-time]

visa = [US, student, other]

Software testers often use one letter abstract names for characteristics and blocks. For example, A = major, B = year started, C = status, and D = visa. Then the blocks are simplified to A = [A1, A2, A3, A4]; B = [B1, B2, B3]; C = [C1, C2]; and D = [D1, D2, D3]. Software testers create test inputs for software by designing characteristics and blocks for the system interfaces, then combining blocks in one of several ways to create complete tests. With the MS student example, the blocks can be combined to form a maximum of 432*3 = 72 possible tests (more examples are below under ISP criteria).

Example

The primary output of the test support tool is the characteristics and blocks combined into specific combinations based on combination criteria. system implements three criteria, as described here. The criteria are described with the following abstract example:

A = [A1, A2, A3] (3 blocks)

B = [B1, B2, B3] (3 blocks)

C = [C1, C2] (2 blocks)

1. All combinations (ACoC):

Every block in every characteristic is combined with every other block. In our example, this results in 332 = 18 combinations:

[A1,B1,C1]; [A1,B1,C2]; [A1,B2,C1]; [A1,B2,C2]; [A1,B3,C1]; [A1,B3,C2]; [A2,B1,C1]; [A2,B1,C2]; [A2,B2,C1]; [A2,B2,C2]; [A2,B3,C1]; [A2,B3,C2]; [A3,B1,C1]; [A3,B1,C2]; [A3,B2,C1]; [A3,B2,C2]; [A3,B3,C1]; [A3,B3,C2]

2. Each choice (ECC):

Every block in every characteristic appears in at least one combination. The number of combinations is equal to the number of blocks in the largest characteristic. In our example it is 3: [A1,B1,C1]; [A2,B2,C2]; [A3,B3,*]

Note the “” in the third combination. Since both C1 and C2 have already been used, it does not matter which C block is used, so the “” means “any block from characteristic C,” or “don’t care.”

3. Base choice (BCC):

The tester chooses one “base” block from each characteristic. Which block and why that block is chosen does not matter for this project. Base choice combinations include the base combination (all the base blocks), plus one combination for each other block, swapped in one at a time. In our example, this results in 6 combinations: [A1,B1,C1] (base block); [A1,B1,C2]; [A1,B2,C1]; [A1,B3,C1]; [A2,B1,C1]; [A3,B1,C1]

Accessibility

This software is accessible to screen readers.

About

ISP starts with a finite (usually small) set of characteristics. For example, characteristics to describe MS students might be: major, year started, status, and visa. Each characteristic is divided into a finite (usually small) set of blocks. For example, the student characteristics may have the following blocks: major = [swe, cs, infs, other] y…

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published