Как перебрать функцию огурца - PullRequest
2 голосов
/ 12 февраля 2012

Я пишу функцию в огурце, которая может быть применена к ряду объектов, которые могут быть определены программно.В частности, я пишу дымовой тест для развертывания в облаке (хотя проблема связана с огурцом, а не с облачными инструментами, поэтому переполнение стека).

Given a node matching "role:foo"
When I connect to "automatic.eucalyptus.public_ipv4" on port "default.foo.port"
Then I should see "Hello"

Данный поиск выполняет поиск узлов с рольюfoo делает и автоматический. eucalyptus ... И порт приходит с найденного узла.Это прекрасно работает ... для одного узла.

Поиск может перенастроить несколько узлов в разных средах.Dev, вероятно, вернет один, протестирует и интегрирует пару, а prod может отличаться.Данный уже находит все из них.

Цикл по узлам на каждом шаге на самом деле не работает.Если кто-то потерпел неудачу в «Когда», все это потерпит неудачу.Я смотрел на сценарии и итерацию огурца, но оба, похоже, предполагают, что все сценарии предопределены, а не программно просмотрены.

Я - нук, так что я, вероятно, что-то упускаю.Есть мысли?

Редактировать

Я "решаю" проблему, переключая сценарий.Я пытаюсь интегрироваться в более крупный язык определения кластера, чтобы определить неоднократно вызов функции, передавая информацию в качестве переменной среды.

1 Ответ

0 голосов
/ 13 апреля 2012

Я заранее извиняюсь, что не могу сказать вам точно, «как» это сделать, но мой друг решил похожую проблему, используя несколько неортодоксальную технику.Он запускает сценарии, которые выписывают сценарии, которые будут запущены позже.Драгоценный камень, который он написал для этого, называется cukewriter .Он описывает, как использовать его довольно подробно на странице github для драгоценного камня.Я надеюсь, что это сработает и для вас.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...