Я пытаюсь автоматизировать функциональность sugarcrm с использованием BDD и Mink с selenium webdriver для php. Я правильно установил их оба и смог запустить behat и норку вместе. например, проверку входа на sugarcrm в качестве одной функции.
Теперь проблема заключается в том, когда я создаю два файла функций: login.feature и setup.feature. Behat успешно автоматизирует процесс входа в браузер, но как только он переключается на setup.feature, который требует, чтобы сеанс входа в систему поддерживался с предыдущей функции, он уничтожает сеанс и возвращается в окно входа в систему. поэтому второй тест функции всегда терпит неудачу.
Как я могу поддерживать сеанс для каждой функции в моем наборе функций?
Просто, чтобы сказать вам, ребята, что я также пробовал их в одном файле свойств как в другом сценарии, но не повезло, поскольку одно и то же
Пожалуйста, помогите мне, если кто-нибудь знает об этом.
Возможности и сценарии должны быть независимыми . Ожидаемое поведение: если вы делаете что-то в одном сценарии, состояние не переносится на следующее.
Я не уверен, чего вы пытаетесь достичь, но вы определенно делаете что-то неправильно.
Редактировать:
Если вам нужно войти в систему перед каждым сценарием, просто напишите мета-шаг, который будет выполнять все необходимые операции:
Given I am logged in
Вы можете использовать целую цепочку выполнения или просто позвонить по Минке напрямую.
Если каждый сценарий в вашем файле свойств требует входа в систему, вы можете использовать фон:
Background: Given I am logged in Scenario: Listing users Given ... Scenario: Removing a user Given ...
Я полностью согласен с ответом Якуба Заласа
Тем не менее, если ваша цель – избавиться от дублирования кода, объявляющего фон в каждой функции, я считаю, что вы можете использовать крючки для выполнения всех необходимых действий перед каждым сценарием