02.05.01 — Test[Driver]#
Fichier source :
src/ocarina/dsl/testing/oc_test.py
Signature#
@final
class Test[Driver]:
def __init__(
self,
*,
name: TestName,
test_id: str | None = None,
test_scenario: TestScenario[Driver],
pre_test_scenarios_fragments: Sequence[TestScenarioFragment[Driver]] | None = None,
post_test_scenarios_fragments: Sequence[TestScenarioFragment[Driver]] | None = None,
skipped: bool = False,
) -> None:
if test_id is None:
test_id = name
self.name = name
self.test_id = test_id
self._test_scenario = test_scenario
self._pre_test_scenarios_fragments = pre_test_scenarios_fragments or []
self._post_test_scenarios_fragments = post_test_scenarios_fragments or []
self._skipped = skippedSix paramètres :
| Paramètre | Type | Rôle |
|---|---|---|
name | TestName (str) | Label humain ; apparaît dans le rapport, et devient le nom du fichier de log (donc soumis à is_valid_filename). |
test_id | str | None | Identifiant stable pour --only / --exclude. Si absent : prend name. |
test_scenario | TestScenario[Driver] (alias = Callable[[Driver, ILogger], Scenario[Driver]]) | Factory qui construit le Scenario au moment de l’exécution. |
pre_test_scenarios_fragments | Sequence[TestScenarioFragment[Driver]] | None | Fonctions (driver, logger) -> TestChain exécutées avant le scénario principal. |
post_test_scenarios_fragments | Sequence[TestScenarioFragment[Driver]] | None | Fonctions (driver, logger) -> TestChain exécutées après le scénario principal. |
skipped | bool | Si True, le test est enregistré mais pas exécuté. |
1. @final#
Pas d’héritage utilisateur. Si l’on veut un test « spécial », on compose via les fragments ou via un scénario, on ne sous-classe pas.