Question

J'utilise le luminaire Selenium Fitnesse Bridge pour écrire des tests dans Fitnesse pour le sélénium. C’est génial car il couvre TOUT les fonctions du sélénium. Cependant, le problème que je rencontre est le stockage de variables, comme je le ferais dans Selenium IDE.

| !- fixtures.SeleniumFixture -!|
| setup | http://www.google.com/ | *chrome /usr/lib/firefox-3.0.5/firefox |
| open | http://www.google.com/ |  |
| storeLocation | here | |
| echo | ${here} |  |

Quelque chose d'aussi simple que cela devrait fonctionner correctement, mais lorsque je sauvegarde le test, une erreur, une variable non définie, est générée.

| storeLocation | here |  |
| echo | undefined variable: here |  |

Cela n’a aucun sens. Je définis la variable la ligne avant de lui faire écho. Lorsque je lance le test, je reçois:

| storeLocation | here |  |
| echo | undefined variable: here | undefined variable: here |

L’auteur fait de même avec ses tests . Pourquoi ça ne marche pas pour moi?

Était-ce utile?

La solution

Le problème est que Fitnesse est en train de devenir confus. Il pense que vous ne définissez pas une variable.

!define variable {variable}
| echo | ${variable} |  |

Pour contourner la confusion de Fitnesse, il faut échapper au nom de la variable en l’entourant de! - - !.

| storeLocation | here | |
| echo | ${!-here-!} |  |

Ceci fera maintenant écho à la réponse souhaitée.

| !- fixtures.SeleniumFixture -!|
| setup | http://www.google.com/ | *chrome /usr/lib/firefox-3.0.5/firefox |
| open | http://www.google.com/ |  |
| storeLocation | here | |
| echo | ${here} | http://www.google.com |
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top