doc/book/en/B130-tests.en.txt
author Adrien Di Mascio <Adrien.DiMascio@logilab.fr>
Mon, 08 Dec 2008 10:12:32 +0100
changeset 184 92aebc6b533c
parent 127 ae611743f5c6
child 198 5e5ba709d022
permissions -rw-r--r--
fix interface_selector bug If a view using this selector defines an `accepts` attribute, the view should be selectable only if the entity is of one of the accepted types (+need to consider schema inheritance)

.. -*- coding: utf-8 -*-

Tests
=====

Écriture de tests unitaires
---------------------------
Le framework de test fournit principalement deux classes de tests dans le module
`ginco.devtools.apptest`:

* `EnvBasedTC`, pour simuler un environnement complet (web + repository)
* `RepositoryBasedTC`, pour simuler un environnement de repository uniquement

Ces deux classes ont quasiment la même interface et proposent un certain nombre de méthodes
rendant l'écriture de test puissante et rapide.

XXXFILLME describe API

Dans la plupart des cas, vous allez vouloir hériter de `EnvBasedTC` pour écrire des tests
unitaires ou fonctionnels pour vos entités, vues, crochets...


Test des courriels de notifications
```````````````````````````````````
Lors de l'éxécution de tests les courriels potentiellement générés ne sont pas réellement
envoyé mais se retrouve dans la liste `MAILBOX` du module `ginco.devtools.apptest`. Cette
liste est remise à zéro au *setUp* de chaque test (par le setUp des classes `EnvBasedTC`
et `RepositoryBasedTC`).

Vous pouvez donc tester vos notifications en analysant le contenu de cette liste, qui
contient des objets ayant deux attributs :
* `recipients`, la liste des destinataires
* `msg`, l'objet email.Message


Tests automatiques
------------------
XXXFILLME