Селеновый Фитнес-Бридж:Как мне сохранить переменную и отобразить ее?

StackOverflow https://stackoverflow.com/questions/404014

Вопрос

Я использую Мостовидное Приспособление Selenium Fitnesse для того, чтобы написать тесты в Fitnesse для Selenium.Это здорово, потому что охватывает ВСЕ функции, которыми обладает селен.Однако проблема, с которой я сталкиваюсь, заключается в хранении переменных, как это было бы в 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} |  |

Что-то столь простое, как это, должно работать просто отлично, но когда я сохраняю тест, я получаю сообщение об ошибке, неопределенная переменная.

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

В этом просто нет никакого смысла.Я определяю переменную в строке перед тем, как повторить ее.Когда я запускаю тест, я получаю:

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

Автор делает то же самое с его тесты.Почему у меня это не сработает?

Это было полезно?

Решение

Проблема в том, что фитнес становится все более запутанным.Он думает, что вы не определяете переменную.

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

Способ обойти путаницу в Fitnesse - это экранировать имя переменной, окружив его символом !- -!.

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

Теперь это повторит желаемый ответ.

| !- 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 |
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top