How to test workflow - using separate test or parameterized test ?
I have workflow like this
A -> B -> c -> D -> E -->Z
User can skip any step between A and Z but not A and Z.
If I have to write test case shoud we write separate test case or parameterized test
if I write separate test I have to write four tests but with parameterized one less code.
I have tried parameterized test, as there are if statement in asserts it becomes less readable.
A = WorkflowStep('A')
B = WorkflowStep('B')
C = WorkflowStep('C')
D = WorkflowStep('D')
E = WorkflowStep('E')
Z = WorkflowStep('Z')
@pytest.mark.parametrize('skipStep', [([B]), ([C]), ([D]), ([E])])
test_skip_step(skipStep):
workflow = Workflow.create().skip(skipStep);
summary = workflow.goTo(Z)
if skipStep != B:
summary.hasB()
if skipStep != C:
summary.hasC()
if skipStep != D:
summary.hasD()
if skipStep != E:
summary.hasE()
What approach I should take? - Write separate test to test skipping each step? - Write parameterized test ?
Aucun commentaire:
Enregistrer un commentaire