Maybe https://pypi.python.org/pypi/hypothesis is a better fit for this than parametrization. At first it might seem a bit foreign (it felt so to me), but it allows you to test in very interesting ways and to find corner cases quickly. Just testing all the keys is pretty boring and most likely won't lead to errors, so it's pretty much a waste of your time and CPU time.

Regards,
Florian Schulze


On 7 Feb 2016, at 4:53, Goncalo Morgado wrote:

Hi,

Thank you for this great lib!

I have an app that takes a config file with key/value pairs, that I would like to test thoroughly, i.e all possible combinations of parameters in the
config file. I thought about taking advantage of the fixture
parametrization functionality pytest provides, but not sure how... and end up with what I believe is a silly idea (please see example code below). I say silly because I will end up with a huge amount of *.mark.parametrize()* entries and the test case function with a number of arguments... Any idea
on how to do this an elegant way?

*import* pytest
@pytest.mark.parametrize("key1", [0, 1, etc, etc])
@pytest.mark.parametrize("key2", [2, 3, etc, etc, etc])
@pytest.mark.parametrize("key3", [4, 5, etc, etc, etc, etc])
... # an infinitiy amount of @pytest.mark.parametrize("keyN", [bla, bla,
bla])
*def* test_app_param_combination(key1, key2, key3, ....)
  # implementation of the test
  # run app with combination of key/value pair and check exit code
  *assert* app_exit_code == 0

Many thanks
Go
_______________________________________________
pytest-dev mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pytest-dev
_______________________________________________
pytest-dev mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pytest-dev

Reply via email to