Selenium Fitnesse Bridge: Как сохранить и отобразить переменную? - PullRequest
1 голос
/ 31 декабря 2008

Я использую Selenium Fitnesse Bridge Fixture , чтобы писать тесты в Fitnesse для Selenium. Это здорово, потому что охватывает ALL функции, которые есть у 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 |

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

1 Ответ

1 голос
/ 01 января 2009

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

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

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

| 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 |
...