Question

Nous établissons actuellement FitNesse comme l'outil de test des tests d'acceptation des utilisateurs. Jusqu'à présent, tout est bon. nous utilisons la version java « 20091121 ». Nous avons des problèmes avec les dossiers qui sont plus profondes que 4.

Nous avons mis en place la structure de dossier suivant:

  

SetUp

     

GroupTest

     

content.txt + properties.xml (juste! "Contenu" à l'intérieur)

     
    

UseCase2204

         

content.txt + properties.xml (juste! "Contenu" à l'intérieur)

         
      

SingleRequest02

             

content.txt + properties.xml (juste! "Contenu" à l'intérieur)

             
        

PositiveTest

                 

content.txt + properties.xml (juste! "Contenu" à l'intérieur)

                 
          

OneAdultWithChild

                     

ici content.txt + properties.xml pour l'essai réel contenant 18 tables de fixation

        
      
    
  

Quand nous commençons FitNesse et de naviguer dans le dossier le plus profond ( « de OneAdultWithChild ») il faut rond-point 10 secondes jusqu'à ce que la page est affichée. Maintenant, quand je me déplace le contenu d'un niveau hiérarchique (en « PositiveTest ») la page prend 3 secondes pour rendre. Lorsque je l'ai mis presque affiche en un instant le contenu du test au deuxième niveau ( « UseCase2204 »).

Le même comportement se produit lors de l'essai d'exécution. Après avoir appuyé sur le bouton "test" les tests prennent:

  • second niveau: 12 secondes
  • quatrième niveau: 14 secondes
  • cinquième niveau: 40 secondes! (Plus, il prend une éternité jusqu'à ce que le bouton « résultat capturé » apparaît)

Maintenant, je suis coincé avec cela. Nous avons besoin de cette structure profondément imbriqués pour regrouper tous les tests. Mais s'il n'y a pas de solution ou solution de contournement, nous ne pouvons pas utiliser FitNesse et je serai un grand con pour promouvoir le cadre. Dans le passé, j'ai eu des résultats positifs avec FitNesse mais nous n'avions pas ces structures profondément imbriquées.

Était-ce utile?

La solution

Il pourrait ne pas être la solution spécifique, mais il y a une solution pour un problème de rendu Widget qui est actuellement à l'étude à: http://www.pivotaltracker.com/story/show/2200962

Il y a aussi une histoire là-bas pour refaire l'analyseur pour être plus efficace et capable, mais qui est un effort important. Je ne sais pas quand le travail commencera sur ce point.

Autres conseils

Avez-vous essayé de contacter le responsable (s) de FitNesse à ce sujet? Cela devrait être votre première action. Voici leur "Obtenez de l'aide" lien:. http://www.fitnesse.info/help

En attendant, si vous le pouvez, vous pouvez essayer de profilage FitNesse. Il est tout à fait possible que la plupart de ce temps est consacré à un ou deux endroits et une solution appropriée peut être trouvé. Comme il est un projet open source, vous devriez être en mesure d'avoir un coup d'oeil rapide autour du code. Si vous voulez, de toute façon.

Mise à jour: Juste une pensée, est votre hiérarchie de test sur un montage NFS? Pourriez-vous essayer de l'exécuter sur un disque « réel »?

, nous avons fait du profilage. le principal temps des 40 secondes pour charger la page (chargement juste, pas courir) est passé dans les méthodes suivantes:

  • fitnesse.wikitext.widgets.WidgetRoot.render
  • fitnesse.wikitext.widgets.WidgetRoot.getVariable
  • fitnesse.wiki.PageData.initializeVariableRoot
  • fitnesse.wikitext.widgets.VariableWidget.doRender

il coutures comme la logique de remplacement de varibale + le rendu widget utilise tout le temps: (

surtout dans le fitnesse.wikitext.widgets.VariableWidget "doRender private void ()" me donne des maux de tête. il y a un commentaire se plaindre de la complexité et que tout cela devrait être refactorisé.

voir ici

http://github.com/lvonk/fitnesse/commit/a7242991039970d769db681afa2336285700d421 # diff-10

pour moi, il ressemble à une impasse en ce moment. nous utiliserions FitNesse pour vraiment grand projet, un des plus grands projets informatiques actuellement en cours en Allemagne / Europe. mais je ne peux pas vendre ce si ces choses de base ne fonctionne pas assez vite: - /

J'espère toujours que quelqu'un sait une solution sinon je vais devoir creuser dans le code à Noël et essayer de le rendre un peu plus vite.

Je viens de remarquer qu'il ya une version plus récente (2009-11-25) sur le moyeu git qui se sont débarrassés du commentaire et quelques lignes de code ont également été modifiées. Je vais vous donner que l'essayer .....

aide très appréciée

hourras Marcel

dan,

Merci pour votre réponse. ce que j'ai posté sur le groupe FitNesse Yahoo:

salut,

i version viens de télécharger « 20100103 » du site et lui a donné un essai avec le même configuration. une amélioration importante! Je suis très content de cela. maintenant je peux continuer avec la configuration initiale et nous espérons convaincre tout le monde à ce sujet.

l'amélioration de la performance est également visible lors de l'exécution de test - très bon. je ne peut pas voir de différence significative entre le niveau supérieur et les tests imbriqués plus.

J'espère que le reste du système se comporte de la même manière:)

Merci beaucoup pour l'aide rapide. je serai de retour avec plus de commentaires (ou problèmes ;-)) après la configuration inital est fait et les gens commencent à travailler avec elle (Développeurs et testeurs).

hourras Marcel

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