Creates combinatorial test suites
Project description
Combinatorial Testing Package
This package allows a user to input a list of n factors and k levels with a coverage strength value t to create an optimal suite of tests that can be run.
Primary Function
To import the package once installed, use:
import comb_testing
Once imported, the primary function to use is called using:
comb_testing.greedy_algorithm(<list>, <strength>, <flag>)
Where <list>
is the N x k list of factors and levels and <strength>
is the t value
The <flag>
value allows the user to select between two different algorithms for suite generation.
The first, where flag == 1
is an algorithm which is optimized for a larger covering array (one that exceeds more than 5 levels and/or 5 factors).
The second, where flag == 2
is an algorithm optimized for speed but is only fast with a smaller sized covering array.
The first algorithm is designed to be more traditionally greedy, but due to usage of random generation, final test suites can vary in size.
The second algorithm takes a more "back-to-front" approach by first generating all possible candidate rows and generating a suite based on how many tuples the top-most row can generate over time.
Covering Array Generation
If there is no predetermined list, this package features a function to generate a covering array based on a regex string
The function can be called using:
comb_testing.generate_covering_array("<regex>")
The value of <regex>
will be a string with the following format: "<N>^<k> <N>^<k> ..."
An example of this function to generate a covering array with 4 factors and 3 levels would be:
covering_arr = comb_testing.generate_covering_array("3^4")
In this example, the result is stored in covering_arr
and can be iterated over like any other list
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for combinatorial_tests_agragland-0.0.3.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | c92b7508b4f9b4b1f9006061844f83fe2ab1f1a75e2f01d529cfae288fb6c98a |
|
MD5 | e1d0d2b797339af6a7c0603947611c8f |
|
BLAKE2b-256 | e8b5b51b5def98da8aee344facfa3921357017a4c17f39976df0a82aa70f9af2 |
Hashes for combinatorial_tests_agragland-0.0.3-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fb48bf5600e117461dd58980a12d884334cea18fb83cca7c0728a215bc217045 |
|
MD5 | 5b6ef7df88ca54f4922b5583b5e6c03e |
|
BLAKE2b-256 | da493f157097d29a6cd8ff2acff97c8f8e4bf1e1b213d8cc1ec7d98445782867 |