2013-05-23 1 views
0

je dois passer outre le délai d'attente au niveau du cadre existant défini pour tous les scripts de test que,Comment définir le délai d'expiration du niveau de méthode pour les méthodes de test au sélénium en utilisant @ tags. en remplaçant le niveau de cadre délai

@Rule 
public Timeout timeout; 
public String methodTimeout = null; 

Le délai d'attente par défaut pour tous les tests est défini comme 10 minutes (Chaque tests durée de max 10 minutes, après ce test aura le temps d'attente).

Certains tests dureront plus de 10 minutes. Dans ce cas, le délai d'attente par défaut va tuer le navigateur et le test a échoué. J'utilise le sélénium java avec junit, et en utilisant le modèle d'objet Page.

Quelqu'un pourrait-il m'aider à cela pour remplacer le délai d'attente existant.

Note: Le framework a été développé par l'équipe de développement.

Répondre

0

Vous pouvez définir un délai d'expiration pour chaque test à l'aide de la propriété @Test d'annotation et de délai. Vérifiez l'API de JUnit et fournissez l'exemple @Test.

+0

L'annotation au niveau du test peut être utilisée si la règle de délai d'expiration n'est pas implémentée au niveau du cadre. Son clairement donné dans junit doc https://github.com/junit-team/junit/wiki/Timeout-for-tests – ParasuRam

+0

Mes tests suggèrent que le timeout dans l'annotation @Test remplace la règle globale Timeout. – kaos

+0

La règle de délai d'attente est dans TestBaseClass. J'ai utilisé une étiquette supplémentaire pour indiquer le délai d'expiration du niveau de méthode dans chaque méthode de test. J'ai obtenu la valeur du délai d'attente de la balise à une classe de démarrage. La classe de base de test appelle une méthode de la classe de démarrage. comment définir la valeur de délai d'attente qui est obtenue à partir de la balise de niveau de test dans la classe de testbaseclass. – ParasuRam

Questions connexes