Skip to main content

SAT-Based Combinatorial Testing in Python

Project description

CTLog: SAT-Based Combinatorial Testing in Python

Full documentation available online.

CTLog is a complete framework for Combinatorial Testing of Constrained Systems Under Test developed by the Logic & Optimization Group (LOG) at the University of Lleida. It uses Satisfiability (SAT) technology through the OptiLog Python framework, also developed and mantained by the same research group.

CTLog implements all the algorithms that we developed in our research, such as MaxSAT MCAC and maxsat-its and all the family of the BOT-its algorithms. It also implements several state-of-the-art algorithms for generating Mixed Covering Arrays with Constraints, such as IPOG or CALOT.

Additionally, we provide the SUT-G generator, which can be used to generate new Constrained Systems Under Tests where all these MCAC algorithms can be applied.

Installation

CTLog currently supports Python versions 3.6, 3.7, 3.8, 3.9 and 3.10 for Linux. Wheels are provided through PyPI, you can install CTLog directly with pip:

pip3 install ctlog

CTLog also requires a software license, which must be placed in your ${HOME} directory under the name .ctlog.lic. You can download a valid license for academic uses here , which is valid until September 27, 2023.

Before using CTLog please read our license carefully. If you need CTLog for industrial scenarios please contact us.

If you use CTLog in your research please cite our work:

@article{DBLP:journals/corr/abs-2105-12552,
    title    = {Incomplete {MaxSAT} approaches for combinatorial testing},
    volume   = {28},
    issn     = {1572-9397},
    url      = {https://doi.org/10.1007/s10732-022-09495-3},
    doi      = {10.1007/s10732-022-09495-3},
    language = {en},
    number   = {4},
    urldate  = {2022-09-02},
    journal  = {Journal of Heuristics},
    author   = {Ansótegui, Carlos and Manyà, Felip and Ojeda, Jesus and Salvia, Josep M. and Torres, Eduard},
    month    = aug,
    year     = {2022},
    keywords = {Combinatorial testing, Constraint programming, Maximum satisfiability},
    pages    = {377--431}
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

ctlog-0.6.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.9 MB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

ctlog-0.6.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.9 MB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

ctlog-0.6.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.9 MB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

ctlog-0.6.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.9 MB view hashes)

Uploaded CPython 3.7m manylinux: glibc 2.17+ x86-64

ctlog-0.6.0-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.9 MB view hashes)

Uploaded CPython 3.6m manylinux: glibc 2.17+ x86-64

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page