Les tests unitaires, ça pourrit la vie.

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Les tests unitaires, ça pourrit la vie.

Re: Les tests unitaires, ça pourrit la vie.

par xTG » 09 nov. 2013, 12:30

Cela signifie que pour chercher à inclure un fichier il va regarder dans le dossier courant (le point) et s'il ne trouve pas il cherchera dans le dossier pear.
Vu le message je dirai que tu avais auparavant un include_path qui contenait : C:\wamp\www\WSU-MVC\
Tu peux modifier l'include_path par script php (set_include_path) pour le script courant ou bien modifier ton php.ini

Re: Les tests unitaires, ça pourrit la vie.

par juliette » 09 nov. 2013, 11:57

En effet, réinstaller ne m'arrange pas trop !!!
Je suis désormais avec mysql 5.6.12 et j'ai un autre dossier mysql5.5.24 qui contient 2 fichiers: data avec les fameuses bdd et my.php et rien d'autre...
je vais essayer de déplacer voir ce qu'il se passe...

Si non, depuis hier j'ai une erreur un peut bizarre, je crée une erreur sur le chemin d'une fonction include() et l'erreur retournée est celle-ci:
Warning: include_once(): Failed opening 'application/classe/Routing.class.php' for inclusion (include_path='.;C:\wamp\bin\php\php5.4.16\PEAR') in C:\wamp\www\WSU-MVC\application\init.php on line 16

Alors c'est peut être moi qui n'avais jamais fait attention mais ce morceau m'intrique:
for inclusion (include_path='.;C:\wamp\bin\php\php5.4.16\PEAR') car justement il fait partie de mes soucis :non:

Re: Les tests unitaires, ça pourrit la vie.

par xTG » 09 nov. 2013, 08:55

En effet réinstaller un système parce qu'il y a du brin dans la configuration d'un logiciel c'est un peu fort. ^^
Pour tes bases de données "perdues" as-tu regardé dans le dossier data de mysql ?

Re: Les tests unitaires, ça pourrit la vie.

par badabwé » 08 nov. 2013, 21:53

Tu devrais peut-être repartir d'une réinstallation bien propre de ton système d'exploitation...

Sauvegarde tout ce que tu as à sauvegarder, installe Windows et puis ensuite Wamp. Ceci-dit ton problème est peut-être soluble sans recourir à ça... Je n'en ai aucune idée, ça fait des années que je n'utilise plus windows.

Re: Les tests unitaires, ça pourrit la vie.

par juliette » 08 nov. 2013, 15:23

Si tu utilises Eclipse ou Zend Studio, monte le plutôt par l'ajout de librairies :)
HAha, bien pensé, je suis avec netBeans mais la non plus rien a faire, j'ai déjà testé (enfin essayer !!!)...
A mon avis j'ai un autre soucis peut être de coté de wamp qui ma fait des misères lors d'une récente installation ou j'ai perdu toutes mes bdd #-o

Re: Les tests unitaires, ça pourrit la vie.

par BaLiSTiK » 08 nov. 2013, 14:39

Si tu utilises Eclipse ou Zend Studio, monte le plutôt par l'ajout de librairies :)

Re: Les tests unitaires, ça pourrit la vie.

par juliette » 08 nov. 2013, 12:33

Merci badawé,
bien tu vois, en fait ca ne m'aide pas trop, je cite SDZ:
Lorsque l'archive a été extraite, vous devez vous assurer que les répertoires ont été conservés. Normalement, il y en a quatre : dev, ext, extras et PEAR. S'ils sont absents, décompressez l'archive d'une autre manière, en cliquant droit dessus, puis en la décompressant à l'aide de l'option correspondante incluse par votre programme de gestion d'archives.
Hé bien justement, quand c'est la m...e c'est jusqu'au bout...
Je ne récupère pas le dossier PEAR et peut être autre chose, ni avec winrar ni 7-zip, je l'ai pris ailleurs ce dossier mais trop facile, ca ne fonctionne pas:
"Impossible de démarrer le programme.... Essayer de réinstaller le programme..."
Je sais plus ou chercher #-o

Re: Les tests unitaires, ça pourrit la vie.

par badabwé » 08 nov. 2013, 11:35

Hello Juliette, avant que Abraracourcix ne te tombe dessus (je ne vise personne, c'est juste pour le fun): RTFM!

Tiens pour te mettre le pied à l'étrier:

http://fr.openclassrooms.com/informatiq ... li-console

Re: Les tests unitaires, ça pourrit la vie.

par juliette » 08 nov. 2013, 11:13

Ok,
je pense que les path sont bons:
php5.4.16/ini.php:
; Windows: "\path1;\path2"
include_path=".;C:\wamp\bin\php\php5.4.16\PEAR"

Apache2.4.4/bin/ini.php
; Windows: "\path1;\path2"
include_path=".;C:\wamp\bin\php\php5.4.16\PEAR"

Variable d’environnement:
C:\wamp\bin\php\php5.4.16;

Désormais, si en ligne de commande je tape php, rein ne se passe, l'invite passe a la ligne du dessous et le curseur reste a clignoter...

Re: Les tests unitaires, ça pourrit la vie.

par xTG » 08 nov. 2013, 08:37

C'est juste une question de path.
Soit tu ajoutes les dossiers dans le path windows (binaire PHP, Pear s'il y a et phpunit), soit tu les appelles par leur chemin complet.
Si tu veux comprendre un peu pourquoi c'est comme si tu voulais ouvrir firefox depuis ton bureau.
Si tu n'as pas de raccourci (qui sera ici l'image du référencement dans le path windows) comment fais-tu ?
Bah tu ouvres ton explorateur de fichier et tu vas dans le dossier d'installation pour ouvrir l'exe.
Bah en ligne de commande c'est pareil, si tu n'as pas de référencement dans le path c'est comme si tu n'as pas de raccourci.

Re: Les tests unitaires, ça pourrit la vie.

par juliette » 07 nov. 2013, 23:11

non pardon: commande interne
Mais mes recherches m'amènent a dire que je n'ai pas php ni php_cli d'installer si j'ai bien compris parceque honettement ca me dépasse un peut

Re: Les tests unitaires, ça pourrit la vie.

par xTG » 07 nov. 2013, 22:22

Commande internet ? C'est pas plutôt commande inconnue tout simplement ? (non parce que déjà il manque un "e" à reconnu...)
Si c'est le cas il te faut ajouter le dossier des binaires dans le path windows.
Ou comme le message l'indique de lancer PEAR_ENV.reg qui le ferra pour toi. ;)

Re: Les tests unitaires, ça pourrit la vie.

par juliette » 07 nov. 2013, 21:15

Derniere question si je me suis planté, j'ouvre un nouveau sujet.
Apres installation, ou doivent se trouver les dossier PEAR et PHPUnit parceque la il sont arriver dans wamp/bin/php/php5.4.16 et j'ai comme un doute car en plus ca ne
fonctionne pas...
...>phpunit TestTest.php
Commande internet non reconnu

EDIT:
After you have downloaded and installed PHP, you have to manually execute the batch file located in e.g. c:\php\go-pear.bat. The setup will ask you some questions and afterwards the PEAR Package Manager will be installed in the path, which you have specified during installation.

Finally you have to add that installation path to your PATH environment. Either do this manually (Start > Control Panel > System > Environment) or run (double-click) the newly generated PEAR_ENV.reg that's now found in the PHP source directory.
si je comprend bien c'est parce que je n'ai pas installer php ??? #-o

Re: Les tests unitaires, ça pourrit la vie.

par xTG » 07 nov. 2013, 18:04

J'entends que tu vas mettre 100x plus de moyen et de temps pour réaliser le test unitaire que tu ne vas en mettre pour coder la fonction alors qu'une relecture de code (peer-reviewing) demandera moins de moyens et de temps.
Si tu le fais correctement, le peer-reviewing aussi te prend beaucoup de temps ! ;)
Je travaille sur des systèmes critiques, on ne peut pas travailler avec des TU, on n'a que des tests de niveau système.
Et on valide beaucoup par peer-reviewing, je peux t'assurer que sur nos types de projet cela prend ce quota de temps de moins que de faire des TU. ;)

Pour la fonction "simple" que tu présentes tu peux déjà tester très facilement :
- qu'elle retourne toujours un entier positif.
C'est un TU basique et rapide à mettre en œuvre, alors pourquoi s'embêter ? :)
Après tu peux toujours l'enrichir avec ce qui est proposé au dessus, mais selon moi il y aura toujours un minimum à faire quand c'est possible.

Re: Les tests unitaires, ça pourrit la vie.

par BaLiSTiK » 07 nov. 2013, 17:08

Le mieux reste de trouver un consensus entre ce qu'il préconise et ce que je préconise.
Oui bien sur, je ne remet en question aucune de vos deux réflexions et je ne pense pas non plus (dans un premier temps) tester ce genre de fonctions:
/*
 * Retourne le nombre membres avec un compte valide
 */
function totalMembres() {
    $connex = new Connex;
    $critere = array();
    $requete = "SELECT * FROM membre WHERE status = 1 ";
    $totalMembres = $connex->compte($critere, $requete);
    return $totalMembres;
}
Pour les tests de BdB, c'est de suite plus compliqué, déjà il faut l'extension DbUnit, et il faut éviter d'utiliser une BDD réelle (plutot spécifier sur une BDD de test).
Regarde ce lien, tu auras toutes tes réponses je pense : http://phpunit.de/manual/3.6/fr/database.html