我正在尝试使用 behat BDD 和 Mink 以及 selenium webdriver for php 来自动化 Sugarcrm 功能。我已经正确安装了它们,并且能够一起运行 behat 和 mink。例如,将 SugarCRM 上的登录检查作为一项功能。
现在的问题是当我创建两个功能文件时,例如login.feature和setup.feature。 Behat 成功地在浏览器中实现了登录过程的自动化,但一旦切换到需要从以前的功能维护登录会话的 setup.feature,它就会销毁会话并返回到登录窗口。因此,第二个功能测试总是失败。
我如何维护功能套件中每个功能的会话?
只是告诉你们,我也在一个功能文件中尝试过它们作为不同的场景,但没有运气,因为同样的事情正在发生
如果有人知道的话请帮助我。
功能和场景应该是独立的。这是预期的行为,如果您在一种情况下执行某些操作,则状态不会转移到下一种情况。
我不确定你想要实现什么目标,但你肯定做错了什么。
Edit:
如果您需要在每个场景之前登录用户,只需编写一个元步骤来执行所有必要的操作:
Given I am logged in
你可以使用步骤执行链接 http://docs.behat.org/guides/2.definitions.html#step-execution-chaining或者直接致电 Mink。
如果功能文件中的每个场景都需要登录,您可以使用后台:
Background:
Given I am logged in
Scenario: Listing users
Given ...
Scenario: Removing a user
Given ...
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)