2013-09-05 2 views
2

У нас есть сайт компании для статистики из Facebook. Вход на страницу статистики использует учетную запись Facebook. Я написал тесты BDD. Тесты регистрируются на сайте и проверяют их функциональность. Но Facebook не позволяет часто регистрировать (возможно, по соображениям безопасности). Поэтому, когда они регистрируются в каждом сценарии, он будет заблокирован от Facebook.Сбросить сеанс между сценариями в Behat Mink. Как отключить?

Испытания проводятся несколько раз в день. Учетная запись Facebook предназначена только для входа на сайт со статистикой.

Я хочу спросить. Можно ли отключить сеанс сброса между сценариями? Или другое решение?

ответ

1

Сессия заканчивается после каждого сценария. поэтому новый сценарий нового сеанса. но то, что вы можете сделать, - это поведение, а норка - фон. в фоновом режиме вы можете сделать логин. поэтому в начале каждого сценария функции создается сеанс входа в систему. Вы можете также сделать индивидуальные функции входа в контексте функции и чем дать это имя функции, как

Background: 
    Given I am logged in 

еще вы можете сделать проще всего

Background: 
Given I fill in "username" with "[email protected]" 
And I fill in "password" with "xyz" 

Scenario: 
    Given I am on homepage 

Scenario: 
    Given I am on "/support" 

Таким образом, вы получаете логин после каждого сценария автоматически.

+0

Эта возможность я знаю, но это то, чего я не хочу. Вход в систему перед каждым сценарием блокирует учетную запись Facebook из-за частого ведения журнала :-( – Lawondyss

+0

В этом случае вы можете перейти на ядро ​​селена. Я не думаю, что поведение и норка будут полезны для вашей цели. –

2

Мы использовали токены доступа Facebook, чтобы предотвратить наш шаг «Подключиться к Facebook», чтобы делать логин в Facebook для каждого сценария.

Мы просто извлекаем токен доступа из API FB после входа в систему, сохраняем его в файле, в следующий раз, когда мы хотим подключиться, мы проверяем, есть ли у нас сохраненный токен «не истек».

Смежные вопросы