oftest

test framework for OpenFOAM


Keywords
openfoam, cfd, pytest, testing
License
GPL-3.0
Install
pip install oftest==0.1.1

Documentation

Overview

docs Documentation Status
package

test framework for OpenFOAM

  • Free software: GPLv3 License

Installation

pip install oftest

You can also install the in-development version with:

pip install https://github.com/HenningScheufler/oftest/archive/master.zip

Documentation

https://oftest.readthedocs.io/

Development

To run all the tests run and build the doc:

tox

QuickStart

add conftest.py and pytest.ini to your project

cat pytest.ini:

[pytest]
#minversion = 6.0
addopts = -ra -v --import-mode=importlib --tb=no --cache-clear
testpaths =
    tests

cat conftest.py:

import pytest

def pytest_addoption(parser):
    parser.addoption(
        "--writeNSteps", action="store", default=0, help="only perform specified number of timestep"
    )
    parser.addoption(
        "--no-clean-up", action='store_false',default=True ,help="do not clean case after run"
    )

we assume that all OpenFOAM test are located in the tests folder and that each test can be started with a Allrun or Allclean script. By adding a test_*.py to each OpenFOAM test, py.test automatically discovers all tests in the folder and they can be run with:

py.test

with the command line option the test only run one time step

py.test --writeNSteps 1

Extensions

Running py.test with multple threads:

pip install pytest-xdist

the output can be pretified with the extension:

pip install pytest-sugar