Question

Récemment, j'ai réfléchi à la manière d'améliorer la qualité des projets en utilisant la vérification continue de la source xHTML sur la machine à intégration continue.

Regardez, nous avons un projet

http://sourceforge.net/projects/jtidy - jTidy JTidy est un portage en Java de HTML Tidy, un vérificateur de syntaxe HTML et une jolie imprimante.

Il peut valider le xHTML via une interface de ligne de commande. Ou cet outil peut être étendu de la manière dont nous avons besoin, car tous les codes sources sont ouverts.

Nous pouvons écraser toutes les méthodes de validation Selenium, telles que assertTextPresent, ou toute autre méthode. Le jTidy sera appelé (en fournissant le code HTML de l'état actuel), et si des erreurs ou des avertissements se produisent, il peut être enregistré en continu. Journaux de construction de la machine d'intégration - ainsi, tous les projets associés peuvent voir cette information.

Nous ne pouvons pas réécrire toutes les méthodes Selenium, intégrer cet appel à chaque étape, mais faire cet appel où bon nous semble (après les modifications du DOM).

Oui, nous pouvons utiliser les validateurs du balisage W3C pour nos sites, mais il n’ya aucune possibilité de valider l’état non initial de la source de la page avec ce validateur. Après la création de la page, de nombreuses manipulations DOM pouvant générer des erreurs / avertissements de balisage peuvent être trouvées immédiatement avec ce schéma.

L'un des avantages de l'intégration continue est que vous obtenez un retour rapide du code - son intégration au code existant, teste si les tests unitaires et fonctionnels sont réussis. Pourquoi ne pas obtenir d’informations utiles supplémentaires, telles que le statut de validation instantanée du balisage xHTML. Plus tôt nous identifions le problème, plus il est facile de le résoudre.

Je n'ai encore rien trouvé sur ce thème dans Google. Et vous voulez savoir ce que vous pensez de cette idée?

Était-ce utile?

La solution

Cela semble être une idée valable.

J'ai déjà fait deux choses similaires avec CI:

  1. J'ai utilisé la tâche XMLValidate d'Ant pour valider des données statiques. Fichiers xhtml dans le cadre du processus de construction

  2. J'ai utilisé httpunit pour extraire les pages que j'ai ensuite analysées au format xml

Mais l'idée de me lier à Selenium pour valider le contenu de manière inhérente lors d'un test fonctionnel est nouvelle pour moi.

Autres conseils

Je pense que cette idée est brillante mais qu’il est très difficile de la mettre en œuvre à partir de zéro. Mais cette idée ressemble à une évolution du processus de validation construction / qualité. Il sera donc publié un jour sous la forme d’un outil prêt à l’emploi avec documentation.

Bonne idée! - En fait, j'avais exactement la même idée et vérifiais si quelqu'un l'avait déjà fait auparavant - argh! On dirait que vous m'y avez battu:)

Je réfléchissais à la possibilité de capturer et de soumettre automatiquement chaque page consultée par sélénium aux validtors HTML et CSS du w3c (par fichier plutôt que par lien, de sorte que l’état soit maintenu) - en omettant toutes les erreurs. J'aime bien l'idée quand même.

Excellent en principe, mais je ne sais pas trop comment l'appeler depuis Selenium. J'aimerais beaucoup voir une documentation expliquant comment l'exécuter depuis Selenese ou depuis PHPUnit.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top