Ok pour ton premier point mais le but pour moi est de constuire un ensemble de services utilisables par d'autres développers/applications et ils se fouttent des couches du dessous, nottament la persistance... ils recoivent des objets java et les renvoiet c tout...
"Quand tu exécute 2000 tests et que tu veux pouvoir les exécuter en moins d'une minute"
Ca ne m'interesse pas dans le cadre du développement d'applications métiers... le but pour moi est que si il y a 1000 créations de clients par heure avec l'appli que je développe, c'est de m'assurer que la base, l'os, le serveur d'appli, le réseau et tout le reste vont résister à ces 1000 créations.
"Tu ne peux pas générer une BD propre pour chaque test."
On a une tache init qui regénère la base, insière les donénes de config et lance le tout... on peut à tout moment relancer tous les tests de l'application.. sans prérequis ou config spéciale....
"Mais encore une fois, tout cela ne concerne que la vision spécifique des amateurs de TDD, ce n'est pas la tienne, c'est tout. "
Tout à fait :) c'est toujours enrichissant de discuter serainement avec des gens intelligents.
Bien entendu, à part les "fabricants" de mono :)
Sun met aussi de super produts en production avec ces dernières technos :)
ce qui m'intéresse, ce sont des boites ou des produits importants qui ont vraiment un truc qui tourne sous linux avec mono et qui ont développé plus vite qu'avec d'autres langages avec #develop par exemple.
Pas d'accord avec toi.. JCP n'est pas du tout du vent, et de nombreuses décisions ont été prises contre l'avis de sun même...
les choses ne sont pas décidés de manière arbitraire...
beh pour dotnet.. j'attends de voir un emseble de produits de dev (libre) et des applications en production...
"Pour eux, un test unitaire doit tester une partie de code et non pas une fonctionnalité"
Ils ont pas vu assez loin :)
Personnelement, avec une couche service qui a ses interfaces publiées, on peut désormais facilement écrire les tests unitaires correspondant. Ces tests peuvent ensuite être lancées pour valider les services indépendament des applications développées au dessus de cette couche.
Je pense que ne pas tester cette couche est une erreur...
pour la base de données, je vois pas le prb de voir ce qu'elle peut supporter :)
"Les tests unitaires permettent de tester non pas une fonctionnalité mais une unité de code."
Pas pour moi, mes tests unitaires testent toutes les fonctionnalités de la couche service, c'est à dire la logique métier que je vais partager.
Mes tests unitaires créent reelement les clients et tout le reste dans la base, ils me permettent de valider ma couche service et de garantir sa conformité.
"C'est une grosse erreur et contribue au flou qui entoure la définition d'un test unitaire."
Pas du tout d'accord, ma définition est claire, les tests unitaires servent surtout pour nous à valider les fonctionnalités de l'application pour s'assurer que tout ce qui sera développé fonctionnera correctement.
Je ne vois pas ou est la difficulté
creerClient() créer un client tel qu'une appli ou un utilisateur le ferait et on valide juste que cette fonction peut etre appelée 50 fois par heures par 50 utilisateurs sans que le serveur crash.
Ce projet se voulait aussi un peu l'écho d'une news passé plus tot sur l'utilité des test unitaires...
La, l'idée est de se dire : ok les tests unitaires sont fondamentaux, par contre, pkoi ne pas s'en servir pour tester la "scability" des applications avant leur mise en place ?
Bref, l'indistrualisation du développement logiciel ;)
non, on a juste fait une première version pour voir l'interet... on a vu jmeter et junit mais c un peu trop lourd :(
notre truc lui est vraiment simple...
Je m'explqique un peu mieux... pour une application de gestion commerciale par exemple, on va avoir des tests unitaires comme:
creerClient, creerDevis, transformerDevisEnCommande...
Ces tests reproduisent en gros ce que les utilisateurs vont faire avec l'application, donc pourkoi ne pas les utiliser pour simuler les actions des utilisateurs?
Par exemple écrire un scenario vendeur
en simulat qu'en une heure ce type d'utilsisateur va créer 6 clients et 15 devis... et de simuler que 15 vendeurs vont travailler sur l'application en continue ?
Et surtout, le tout en écrivant un bete fichier xml tout simple.. c tout
En fait, JUnitScenario se situe au dessus de JUNit... on écrit toujours les tests avec JUnit...
JUnitScenarion permet juste de simuler un certain nombre d'utilisateurs lancant certains tests pendant un certain temps...
Ca permet en fait du'tiliser les tests unitaires pour simuler plusieurs utilisateurs sur l'application et ainsi s'assurer que l'appli tient le coup avant sa mise en prod
C# est une bonne alternative et quand tu vois ce que c'est, tu te dis que java n'est pas sur la mauvaise voie ;)
"Ah ? Ca y est, on a trouvé le language ultime qui sert à tout ? Je croyais que les développeurs Java s'étaient réveillés depuis quand même :)"
Ce n'est pas ça... juste qu'avec Java, dans ma boite, on peut couvrir tous nos besoins, d'autres langages sont certainement dans ce cas... je voulais juste dire que Java nous permet de faire ce qu'on a besoin de faire pour tous nos clients.
"Ah, les autres n'ont pas la possibilité de faire des tests unitaires ?"
Si bien sur... mais de ce que j'ai vu, on faisait des tests unitaires en Java bien avant que les gens en fassent en php ( mais on était pas avant smalltalk )... et c t juste un exemple... j'ai pas vu l'aop en php par exemple ?
"Ah il y a que chez moi que java (sun) rame grave (linux) ? Java multiplateforme, je suis très sceptique... Enfin chacun voit midi à sa porte."
beh oui, je travaille pour des mutuelles par exemple ou l'on déploie sous linux et ca rame pas.. désolé...
"- Une architecture éprouvée"
Plutot philosophique... style hibernate + pojo + dao + session facade
c une solution éprouvée qui nous permet un maximum de réutilisation et un minimum d"écriture ( pas de sql, pas de code de sécurité, pas de code de transport... )
après, tu as aussi toute la stack J2EE
il fallait plutôt venir voir sur le stand d'Objectweb ou François t'aurait reçu avec grand plaisir :) et j'aurais aimé aussi discuté avec toi !
Je donnais une conf l'après midi, peut etre y as tu assisté ??
Pkoi autant de mouvements ? c difficile de répondre:
- Un langage complet qui couvre tous les besoins
- Des poids lourds du libre (Apache, codehaus...)
- Des poids lourds de l'industrie (IBM, Oracle, BEA...)
- Des projets fantastiques (Derby, hibernate, jonas, c-jdbc...)
- Des méthodes mises en place peut etre plus vite que dans d'autres langages (test unitaires, aop....)
- Des environnements de développements exceptionnels (eclipse, netbeans)
- Un grand nombre d'architectes et de créateurs de génie
- Multi plateforme
- Une architecture éprouvée
L'important, c'est le contrat entre les deux sociétés !
Ca me rappelle les gens qui avaient peur quand ibm et d'autres grosses boites commencaient à s'interesser à Linux...
Peu importe qui participe à un projet du moment qu'un contrat ou qu'une licence mette les choses au clair.
Personnellement, je pense que ne pas utiliser des tests unitaires est la plus grosse erreur qu'on peut faire en dev...
En plus des tests unitaires, je pense qu'il faut aussi tester la montée en charge... et c'est dans cette optique que nous développons un nouvaeu projet: http://junitscenario.sourceforge.net/(...)
Une première version du projet est attendue ce mois-ci
Perso... On est en train d'étudier l'approche MDA qui permettrait de générer les objets persistants type hibernate qui lui gère le SQL... a mon avis, c ce qui a le plus d'avenir... marre de résonner en table et requête :)
[^] # Re: Autre chose
Posté par Stéphane Traumat (site web personnel) . En réponse à la dépêche JUnitScenario 0.1 vient de sortir. Évalué à 2.
"Quand tu exécute 2000 tests et que tu veux pouvoir les exécuter en moins d'une minute"
Ca ne m'interesse pas dans le cadre du développement d'applications métiers... le but pour moi est que si il y a 1000 créations de clients par heure avec l'appli que je développe, c'est de m'assurer que la base, l'os, le serveur d'appli, le réseau et tout le reste vont résister à ces 1000 créations.
"Tu ne peux pas générer une BD propre pour chaque test."
On a une tache init qui regénère la base, insière les donénes de config et lance le tout... on peut à tout moment relancer tous les tests de l'application.. sans prérequis ou config spéciale....
"Mais encore une fois, tout cela ne concerne que la vision spécifique des amateurs de TDD, ce n'est pas la tienne, c'est tout. "
Tout à fait :) c'est toujours enrichissant de discuter serainement avec des gens intelligents.
http://about.me/straumat
[^] # Re: Autre chose
Posté par Stéphane Traumat (site web personnel) . En réponse à la dépêche JUnitScenario 0.1 vient de sortir. Évalué à 2.
Sun met aussi de super produts en production avec ces dernières technos :)
ce qui m'intéresse, ce sont des boites ou des produits importants qui ont vraiment un truc qui tourne sous linux avec mono et qui ont développé plus vite qu'avec d'autres langages avec #develop par exemple.
http://about.me/straumat
[^] # Re: Autre chose
Posté par Stéphane Traumat (site web personnel) . En réponse à la dépêche JUnitScenario 0.1 vient de sortir. Évalué à 2.
Tu veux dire que sun décide qui a le droit de s'incrire et qui n'a pas le droit ?
http://about.me/straumat
[^] # Re: Autre chose
Posté par Stéphane Traumat (site web personnel) . En réponse à la dépêche JUnitScenario 0.1 vient de sortir. Évalué à 3.
les choses ne sont pas décidés de manière arbitraire...
beh pour dotnet.. j'attends de voir un emseble de produits de dev (libre) et des applications en production...
http://about.me/straumat
[^] # Re: Autre chose
Posté par Stéphane Traumat (site web personnel) . En réponse à la dépêche JUnitScenario 0.1 vient de sortir. Évalué à 2.
Ils ont pas vu assez loin :)
Personnelement, avec une couche service qui a ses interfaces publiées, on peut désormais facilement écrire les tests unitaires correspondant. Ces tests peuvent ensuite être lancées pour valider les services indépendament des applications développées au dessus de cette couche.
Je pense que ne pas tester cette couche est une erreur...
pour la base de données, je vois pas le prb de voir ce qu'elle peut supporter :)
http://about.me/straumat
[^] # Re: Autre chose
Posté par Stéphane Traumat (site web personnel) . En réponse à la dépêche JUnitScenario 0.1 vient de sortir. Évalué à 2.
http://about.me/straumat
[^] # Re: Autre chose
Posté par Stéphane Traumat (site web personnel) . En réponse à la dépêche JUnitScenario 0.1 vient de sortir. Évalué à 2.
Pas pour moi, mes tests unitaires testent toutes les fonctionnalités de la couche service, c'est à dire la logique métier que je vais partager.
Mes tests unitaires créent reelement les clients et tout le reste dans la base, ils me permettent de valider ma couche service et de garantir sa conformité.
"C'est une grosse erreur et contribue au flou qui entoure la définition d'un test unitaire."
Pas du tout d'accord, ma définition est claire, les tests unitaires servent surtout pour nous à valider les fonctionnalités de l'application pour s'assurer que tout ce qui sera développé fonctionnera correctement.
Je ne vois pas ou est la difficulté
creerClient() créer un client tel qu'une appli ou un utilisateur le ferait et on valide juste que cette fonction peut etre appelée 50 fois par heures par 50 utilisateurs sans que le serveur crash.
http://about.me/straumat
[^] # Re: Autre chose
Posté par Stéphane Traumat (site web personnel) . En réponse à la dépêche JUnitScenario 0.1 vient de sortir. Évalué à 2.
http://about.me/straumat
[^] # Re: Autre chose
Posté par Stéphane Traumat (site web personnel) . En réponse à la dépêche JUnitScenario 0.1 vient de sortir. Évalué à 2.
Ce projet se voulait aussi un peu l'écho d'une news passé plus tot sur l'utilité des test unitaires...
La, l'idée est de se dire : ok les tests unitaires sont fondamentaux, par contre, pkoi ne pas s'en servir pour tester la "scability" des applications avant leur mise en place ?
Bref, l'indistrualisation du développement logiciel ;)
http://about.me/straumat
[^] # Re: Autre chose
Posté par Stéphane Traumat (site web personnel) . En réponse à la dépêche JUnitScenario 0.1 vient de sortir. Évalué à 2.
http://about.me/straumat
[^] # Re: Utilité
Posté par Stéphane Traumat (site web personnel) . En réponse à la dépêche JUnitScenario 0.1 vient de sortir. Évalué à 2.
non, on a juste fait une première version pour voir l'interet... on a vu jmeter et junit mais c un peu trop lourd :(
notre truc lui est vraiment simple...
on cherche des petites mains habiles sinon ;)
http://about.me/straumat
[^] # Re: Autre chose
Posté par Stéphane Traumat (site web personnel) . En réponse à la dépêche JUnitScenario 0.1 vient de sortir. Évalué à 2.
creerClient, creerDevis, transformerDevisEnCommande...
Ces tests reproduisent en gros ce que les utilisateurs vont faire avec l'application, donc pourkoi ne pas les utiliser pour simuler les actions des utilisateurs?
Par exemple écrire un scenario vendeur
en simulat qu'en une heure ce type d'utilsisateur va créer 6 clients et 15 devis... et de simuler que 15 vendeurs vont travailler sur l'application en continue ?
Et surtout, le tout en écrivant un bete fichier xml tout simple.. c tout
est ce plus clair ?
http://about.me/straumat
[^] # Re: Autre chose
Posté par Stéphane Traumat (site web personnel) . En réponse à la dépêche JUnitScenario 0.1 vient de sortir. Évalué à 2.
JUnitScenarion permet juste de simuler un certain nombre d'utilisateurs lancant certains tests pendant un certain temps...
Ca permet en fait du'tiliser les tests unitaires pour simuler plusieurs utilisateurs sur l'application et ainsi s'assurer que l'appli tient le coup avant sa mise en prod
http://about.me/straumat
[^] # Re: Autre chose
Posté par Stéphane Traumat (site web personnel) . En réponse à la dépêche JUnitScenario 0.1 vient de sortir. Évalué à 3.
"Ah ? Ca y est, on a trouvé le language ultime qui sert à tout ? Je croyais que les développeurs Java s'étaient réveillés depuis quand même :)"
Ce n'est pas ça... juste qu'avec Java, dans ma boite, on peut couvrir tous nos besoins, d'autres langages sont certainement dans ce cas... je voulais juste dire que Java nous permet de faire ce qu'on a besoin de faire pour tous nos clients.
"Ah, les autres n'ont pas la possibilité de faire des tests unitaires ?"
Si bien sur... mais de ce que j'ai vu, on faisait des tests unitaires en Java bien avant que les gens en fassent en php ( mais on était pas avant smalltalk )... et c t juste un exemple... j'ai pas vu l'aop en php par exemple ?
"Ah il y a que chez moi que java (sun) rame grave (linux) ? Java multiplateforme, je suis très sceptique... Enfin chacun voit midi à sa porte."
beh oui, je travaille pour des mutuelles par exemple ou l'on déploie sous linux et ca rame pas.. désolé...
"- Une architecture éprouvée"
Plutot philosophique... style hibernate + pojo + dao + session facade
c une solution éprouvée qui nous permet un maximum de réutilisation et un minimum d"écriture ( pas de sql, pas de code de sécurité, pas de code de transport... )
après, tu as aussi toute la stack J2EE
http://about.me/straumat
[^] # Re: Autre chose
Posté par Stéphane Traumat (site web personnel) . En réponse à la dépêche JUnitScenario 0.1 vient de sortir. Évalué à 8.
Je donnais une conf l'après midi, peut etre y as tu assisté ??
Pkoi autant de mouvements ? c difficile de répondre:
- Un langage complet qui couvre tous les besoins
- Des poids lourds du libre (Apache, codehaus...)
- Des poids lourds de l'industrie (IBM, Oracle, BEA...)
- Des projets fantastiques (Derby, hibernate, jonas, c-jdbc...)
- Des méthodes mises en place peut etre plus vite que dans d'autres langages (test unitaires, aop....)
- Des environnements de développements exceptionnels (eclipse, netbeans)
- Un grand nombre d'architectes et de créateurs de génie
- Multi plateforme
- Une architecture éprouvée
bref j'adore java pour tout ça :)
http://about.me/straumat
[^] # Re: JOnAS certifié J2EE par sun !
Posté par Stéphane Traumat (site web personnel) . En réponse à la dépêche JUnitScenario 0.1 vient de sortir. Évalué à 3.
http://about.me/straumat
[^] # Re: JOnAS certifié J2EE par sun !
Posté par Stéphane Traumat (site web personnel) . En réponse à la dépêche JUnitScenario 0.1 vient de sortir. Évalué à 2.
http://about.me/straumat
[^] # Re: JOnAS certifié J2EE par sun !
Posté par Stéphane Traumat (site web personnel) . En réponse à la dépêche JUnitScenario 0.1 vient de sortir. Évalué à 1.
http://about.me/straumat
# Autre chose
Posté par Stéphane Traumat (site web personnel) . En réponse à la dépêche JUnitScenario 0.1 vient de sortir. Évalué à 2.
On a pas mal de projets, nottament au niveau de la création de scripts et de l'exploitation statistique des résultats
http://about.me/straumat
# JOnAS certifié J2EE par sun !
Posté par Stéphane Traumat (site web personnel) . En réponse à la dépêche JUnitScenario 0.1 vient de sortir. Évalué à 4.
http://jroller.com/page/jonaslive/20050203#jonas_passes_j2ee_1_4(...)
La concurrence a du soucis a se faire :)
http://about.me/straumat
# Même pas peur
Posté par Stéphane Traumat (site web personnel) . En réponse à la dépêche Wikipédia pourrait être hébergé en partie chez Google. Évalué à 10.
Ca me rappelle les gens qui avaient peur quand ibm et d'autres grosses boites commencaient à s'interesser à Linux...
Peu importe qui participe à un projet du moment qu'un contrat ou qu'une licence mette les choses au clair.
http://about.me/straumat
# Tests de performances
Posté par Stéphane Traumat (site web personnel) . En réponse à la dépêche Démarche qualité et Logiciel Libre. Évalué à 2.
En plus des tests unitaires, je pense qu'il faut aussi tester la montée en charge... et c'est dans cette optique que nous développons un nouvaeu projet: http://junitscenario.sourceforge.net/(...)
Une première version du projet est attendue ce mois-ci
http://about.me/straumat
# open exchange ?
Posté par Stéphane Traumat (site web personnel) . En réponse à la dépêche SuSE Linux Professional 9.2 disponible en téléchargement. Évalué à 2.
http://about.me/straumat
[^] # Re: Un souhait
Posté par Stéphane Traumat (site web personnel) . En réponse à la dépêche Solutions Linux 2005 : Naissance de l'association PostgreSQLFr. Évalué à 2.
http://about.me/straumat
[^] # Re: Quelques questions d'avenir...
Posté par Stéphane Traumat (site web personnel) . En réponse à la dépêche Solaris officiellement annoncé sous licence Open Source. Évalué à 0.
http://about.me/straumat