When working with big parametrize grids, it can be very helpful to skip a
few combinations. The pytest.skip
command will be of great help here.
Skip
Here's an example that will skip the test sometimes.
import pytest
import numpy as np
def normalize(X):
return (X - X.min())/(X.max() - X.min())
@pytest.mark.parametrize("x", [1, 2, 30])
@pytest.mark.parametrize("y", [1, 2, 30])
def test_shape_same(x, y):
if x == y:
pytest.skip("Not of interest")
X = np.random.normal((x, y))
X_norm = normalize(X)
assert X.shape == X_norm.shape
If you run this test suite, you'll notice that some of the tests are skipped.
# The verbose setting is optional, but gives more information
pytest test_normalise.py --verbose