AutoTests

Dernière modification : -


// 2007/10/12 15:37 / 90.25.113.100
Il existe des tests automatiques de WiKiss :
* non régression
* fonctionnels

!! documentation
Ces tests sont basés sur le framework [PHP SimpleTest|http://simpletest.org/]
Voir :
* [doc en fr|http://onpk.net/php/simpletest/index.php]
* [api|http://simpletest.org/api/]

!! Utilisation
Les tests sont des fichiers php stockés dans le répertoire ''/tools/tests/'' du dépot svn.
On y trouve :
* index.php : fichier chapeau de lancement des tests
* pages_test.php : code commun et tests et vérif accessibilité de la page d'accueil
* auth_test.php : tests de l'authentification
* syntaxe_test.php : tests de la syntaxe wiki
* xhtml_test.php : test la conformité XHTML via le validator du W3C
* wkp_Rss_test.php : test le plugin [wkp_Rss]

Pour lancer les tests :
* récupérer le code de ceux-ci. le répertoire tools doit être au même niveau que trunk :
{{svn co svn://svn.tuxfamily.org/svnroot/wikiss/svn/tools}}
* modifier les variables dans index.php
{{/* url to the WiKiss to be tested */
$wikiss_url = 'http://192.168.0.1/wiki_dev/svn/trunk/';
/* relative path to WiKiss to be tested */
$wikiss_path = '../../trunk/';
/* url of the w3c validator */
//~ $validator_url = 'http://validator.w3.org/'; // on-line validator
$validator_url = 'http://192.168.0.1/w3c-markup-validator/'; // local validator (recommended) }}
* installer SimpleTest 1.0.1beta2 dans le répertoire tests/simpletest
{{cd tools/tests
tar xvzf simpletest_1.0.1beta2.tar.gz}}
* Pour les tests d'images, il est nécessaire de [patcher|http://sourceforge.net/tracker/index.php?func=detail&aid=1806353&group_id=76550&atid=547457] la version 1.0.1beta2 (sinon ces tests seront désactivés) :
{{cd simpletest
wget -O addimage.patch "http://sourceforge.net/tracker/download.php?group_id=76550&atid=547457&file_id=248059&aid=1806353"
patch -p0 < addimage.patch}}
* lancer les tests en ligne de commande
{{php index.php
WiKiss Tests
OK
Test cases run: 4/5, Passes: 191, Failures: 0, Exceptions: 0
}}

!! Validation XHTML
On peux utiliser le [W3C Markup Validation Service|http://validator.w3.org/] en ligne, ou l'installer en local
Il existe un [guide d'installation|http://validator.w3.org/docs/install.html]. Mais avec une debian, il suffit d'un simple :
{{aptitude install w3c-markup-validator}}
Après avoir configuré apache pour empêcher l'accès depuis l'extérieur, modifiez le fichier /etc/w3c/validator.conf :
{{# Whether private RFC1918 addresses are allowed.
Allow Private IPs = yes}}

!! Tests de sécurité
Utilisation de [Wapiti 1.1.6|http://wapiti.sourceforge.net/]

Restaurer pages de base :
{{tar xvzf pages.tgz pages/
tar xvzf historique.tgz historique/
rm -Rf pages historiques
svn update pages historique
# donner si necessaire les droits en écriture}}
Effacer le mot de passe de _config.php
Lancer wapiti :
{{wapiti.py http://fc/wiki_dev/svn/trunk/ -u}}

!! Tests
* Validation XHTML (en ligne ou locale), CSS
* pour chaque plugin

!! Todo
* écrire les tests manquants (beaucoup)
* Trouver un outil pour des tests de charge et d'endurance.
voir http://www.opensourcetesting.org/ pour trouver les outils.