CTLog: SAT-Based Combinatorial Testing in Python
================================================
*Full documentation available [online](http://hardlog.udl.cat/static/doc/ctlog/html/index.html)*.
**CTLog** is a complete framework for Combinatorial Testing of Constrained Systems Under Test developed by the [Logic & Optimization Group (LOG)](http://ulog.udl.cat/) at the University of Lleida.
It uses Satisfiability (SAT) technology through the [OptiLog](http://hardlog.udl.cat/static/doc/optilog/html/index.html) 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](http://ulog.udl.cat/static/doc/ctlog/html/_downloads/4b128e63e5ed9cb255d977360be6b873/ctlog.lic) , which is valid until **September 27, 2023**.
Before using CTLog please read our [license](http://ulog.udl.cat/static/doc/ctlog/html/ctlog/license.html) 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}
}
Raw data
{
"_id": null,
"home_page": "http://ulog.udl.cat/software/",
"name": "ctlog",
"maintainer": "",
"docs_url": null,
"requires_python": "",
"maintainer_email": "",
"keywords": "combinatorial-testing sat maxsat constraint",
"author": "Logic and Optimization Group",
"author_email": "",
"download_url": "",
"platform": "Linux",
"description": "CTLog: SAT-Based Combinatorial Testing in Python\n================================================\n\n*Full documentation available [online](http://hardlog.udl.cat/static/doc/ctlog/html/index.html)*.\n\n**CTLog** is a complete framework for Combinatorial Testing of Constrained Systems Under Test developed by the [Logic & Optimization Group (LOG)](http://ulog.udl.cat/) at the University of Lleida.\nIt uses Satisfiability (SAT) technology through the [OptiLog](http://hardlog.udl.cat/static/doc/optilog/html/index.html) Python framework, also developed and mantained by the same research group.\n\nCTLog 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.\nIt also implements several state-of-the-art algorithms for generating Mixed Covering Arrays with Constraints, such as ``IPOG`` or ``CALOT``.\n\nAdditionally, 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.\n\nInstallation\n------------\n\nCTLog currently supports Python versions 3.6, 3.7, 3.8, 3.9 and 3.10 for Linux.\nWheels are provided through PyPI, you can install CTLog directly with pip:\n\n```\npip3 install ctlog\n```\n\nCTLog also requires a software license, which must be placed in your ``${HOME}`` directory under the name ``.ctlog.lic``.\nYou can download a valid license for academic uses [here](http://ulog.udl.cat/static/doc/ctlog/html/_downloads/4b128e63e5ed9cb255d977360be6b873/ctlog.lic) , which is valid until **September 27, 2023**.\n\nBefore using CTLog please read our [license](http://ulog.udl.cat/static/doc/ctlog/html/ctlog/license.html) carefully.\nIf you need CTLog for industrial scenarios please contact us.\n\nIf you use CTLog in your research please cite our work:\n \n @article{DBLP:journals/corr/abs-2105-12552,\n title = {Incomplete {MaxSAT} approaches for combinatorial testing},\n volume = {28},\n issn = {1572-9397},\n url = {https://doi.org/10.1007/s10732-022-09495-3},\n doi = {10.1007/s10732-022-09495-3},\n language = {en},\n number = {4},\n urldate = {2022-09-02},\n journal = {Journal of Heuristics},\n author = {Ans\u00f3tegui, Carlos and Many\u00e0, Felip and Ojeda, Jesus and Salvia, Josep M. and Torres, Eduard},\n month = aug,\n year = {2022},\n keywords = {Combinatorial testing, Constraint programming, Maximum satisfiability},\n pages = {377--431}\n }\n",
"bugtrack_url": null,
"license": "",
"summary": "SAT-Based Combinatorial Testing in Python",
"version": "0.6.0",
"project_urls": {
"Homepage": "http://ulog.udl.cat/software/"
},
"split_keywords": [
"combinatorial-testing",
"sat",
"maxsat",
"constraint"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "ca3b1589457a693dc5ba1b406052c42937a70fb12dd7eaa611e56634bf368d02",
"md5": "f6c056f932483348b488b7207f65bff5",
"sha256": "338cba948c3b05e482b1f466977b1b831ff4b85b91d4fb296a79757052b3786b"
},
"downloads": -1,
"filename": "ctlog-0.6.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "f6c056f932483348b488b7207f65bff5",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": null,
"size": 4893595,
"upload_time": "2023-07-09T11:14:40",
"upload_time_iso_8601": "2023-07-09T11:14:40.956523Z",
"url": "https://files.pythonhosted.org/packages/ca/3b/1589457a693dc5ba1b406052c42937a70fb12dd7eaa611e56634bf368d02/ctlog-0.6.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "7c03c3be677777354cc9221e5f62d8dc9fa127c240a1e03e08f360388dead1d8",
"md5": "7620c8184fd7de945cd625cebb6de602",
"sha256": "60e04c7306d287dc4146c865c6514eaa67160034733a8d5bbb981e47fa357f4f"
},
"downloads": -1,
"filename": "ctlog-0.6.0-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "7620c8184fd7de945cd625cebb6de602",
"packagetype": "bdist_wheel",
"python_version": "cp36",
"requires_python": null,
"size": 4905475,
"upload_time": "2023-07-09T11:14:45",
"upload_time_iso_8601": "2023-07-09T11:14:45.016289Z",
"url": "https://files.pythonhosted.org/packages/7c/03/c3be677777354cc9221e5f62d8dc9fa127c240a1e03e08f360388dead1d8/ctlog-0.6.0-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "6def806dba402f8482afa9dd2995259f587aa23308933a15a4c5cf06840509e4",
"md5": "c0e9ad4b637eda0496d29e44ab50f1e0",
"sha256": "15165a028666144575956ff9809d842770b264a57158fd95dcbe029dd3bd4346"
},
"downloads": -1,
"filename": "ctlog-0.6.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "c0e9ad4b637eda0496d29e44ab50f1e0",
"packagetype": "bdist_wheel",
"python_version": "cp37",
"requires_python": null,
"size": 4899288,
"upload_time": "2023-07-09T11:14:49",
"upload_time_iso_8601": "2023-07-09T11:14:49.437766Z",
"url": "https://files.pythonhosted.org/packages/6d/ef/806dba402f8482afa9dd2995259f587aa23308933a15a4c5cf06840509e4/ctlog-0.6.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "c56b58d489c111053c1a224bb1839bf55af13c0b8acb5445e51dadf2722e9e6a",
"md5": "03b4e2be95f92c9ea24de6b391963b61",
"sha256": "e1424c88c67bf3a29912fbe2cae635acd26694df226cd42eb8afcfb6006575c9"
},
"downloads": -1,
"filename": "ctlog-0.6.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "03b4e2be95f92c9ea24de6b391963b61",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": null,
"size": 4880793,
"upload_time": "2023-07-09T11:14:53",
"upload_time_iso_8601": "2023-07-09T11:14:53.667780Z",
"url": "https://files.pythonhosted.org/packages/c5/6b/58d489c111053c1a224bb1839bf55af13c0b8acb5445e51dadf2722e9e6a/ctlog-0.6.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "b969c7ca466493a35454fa9ca20643e33dd6b1bc074fdc6b60f5a4c6b3fa8e14",
"md5": "57a43eba4768d4504b5fbee1ab06da93",
"sha256": "fcbb65bf24ae8413f6eecb077df58f695401b1ef8b11471230204778023e1be3"
},
"downloads": -1,
"filename": "ctlog-0.6.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "57a43eba4768d4504b5fbee1ab06da93",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": null,
"size": 4888695,
"upload_time": "2023-07-09T11:14:57",
"upload_time_iso_8601": "2023-07-09T11:14:57.637235Z",
"url": "https://files.pythonhosted.org/packages/b9/69/c7ca466493a35454fa9ca20643e33dd6b1bc074fdc6b60f5a4c6b3fa8e14/ctlog-0.6.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-07-09 11:14:40",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "ctlog"
}