la théorie c'est bien mais apres il y a le concret

je prends ca
http://code.google.com/p/maashaack/source/detail?r=503

et là je me dis si j avais pas mis certains asserts
je n'aurais pas pu chopper certains bugs

et oui il y a bonne dizaine d'asserts
mais désolé ca marche tres bien

et ca m'a permis de chopper que la VM Tamarin
pour ce qui est des fonctions globals comme parseInt()
ne fonctionne pas exactement comme la VM du Flash Player

je le repette il n y a pas qu'un seul usage des asserts

dans ce que je mentionne au dessus on ne peut pas trop faire autrement
que de mettre plusieurs asserts car là on test un parsing de script
et on doit verifier a plusieurs endroits si ce parsing est correct

dans d'autres cas un seul assert suffira

ex:

        /* Issue 14
           http://code.google.com/p/edenrr/issues/detail?id=14
        */
        public function testMissingEndParenthesis():void
            {
            var r1:* = ECMAScript.evaluate("new Date
(2007,5,12,22,10,5");
            assertUndefined( r1 );
            }

        /* Issue 15
           http://code.google.com/p/edenrr/issues/detail?id=15
        */
        public function testReturnAfterAssignment():void
            {
            var r1:* = ECMAScript.evaluate( "config = \r{ message:
\"hello\"}" );

            assertEquals( "hello", r1.config.message );
            }


theorie:
avoir trop d'asserts peut forcer a refactorer de bcp  les unit tests
blah blah blah

réalité:
quand on focus sur une fonctionnalité, avoir bcp d'asserts ca ne cause
pas de probleme
et au contraire ca aide


donc là avec le commit 503 on est dans cas bien particulier
le test d'un parser, tester un "eval()" c'est une techchnique
particulière

dans d'autres cas la structure du code peut influencer les tests

par ex ici:
http://code.google.com/p/gaforflash/source/browse/trunk/tests/GAv4/com/google/analytics/campaign/CampaignManagerTest.as

si le code n'utilisait pas des factories on ne pourrait pas vraiment
tester

mais meme si c'est un tout autre context, là aussi on utilise pas mal
d'asserts
et ca marche aussi tres bien

bref, juste pour dire que on peut théoriser pendant longtemps sur le
nombre parfait d'asserts
qu'il faut dans des tests, mais que quand on sort de la théorie et
qu'on implémente ces tests
avec tout pleins d'asserts bah on voit tout de suite que ca marche.

zwetan






--~--~---------~--~----~------------~-------~--~----~
Vous avez reçu ce message, car vous êtes abonné au groupe Groupe "FCNG" de 
Google Groupes.
 Pour transmettre des messages à ce groupe, envoyez un e-mail à 
l'adresse [email protected]
 Pour résilier votre abonnement à ce groupe, envoyez un e-mail à 
l'adresse [email protected]
 Pour afficher d'autres options, visitez ce groupe à l'adresse 
http://groups.google.com/group/FCNG?hl=fr
-~----------~----~----~----~------~----~------~--~---

Répondre à