jjzjj

php - 从自定义上下文代码向 Behat 输出添加信息

我正在尝试确定如何将附加信息添加到Behat的输出(漂亮、html、junit等),以便我可以获得更多用于测试目的的上下文信息。具体来说,我有一些在某些测试期间生成的独特数据。我一直在将它回显到控制台。但这永远不会出现在报告中生成的任何文件中。我希望我一直输出到控制台的信息最终出现在报告中。我如何从我的FeatureContext.php自定义步骤中做到这一点?谢谢,帕特里克 最佳答案 如果使用behat3.x,只需在代码中打印、var_dump、var_export等。它将被捕获并打印出来引用:https://github.com

php - 我可以使用 Mink 和 Selenium2 发送原始键盘输入吗?

我将Behat和Mink与Selenium2驱动程序一起使用,我试图直接在表单字段中键入内容(模拟原始键盘输入),而不是使用fillField()功能。这就是我正在尝试的:$element=$this->getSession()->getPage()->find('css','#questionName');$element->focus();$element->keyPress('a');//alsotriedthis,withnosuccess//$element->keyDown('a');//$element->keyUp('a');有一个页面上的元素。它正确接收焦点,但不响应

php - Gherkin + Behat 场景大纲抛出 Behat\Gherkin\Exception\ParserException

我正在尝试运行注册示例,但卡住了Scenario:Newuserregistration;poorpasswordGivenIamon"/register"WhenIfillin"username"with"admin"AndIfillin"password1"with""AndIfillin"password2"with""AndIpress"Login"ThenIshouldbeon"/register"AndIshouldseean"pwError"elementExamples:|pw||12||20|然后我得到以下错误:[Behat\Gherkin\Exception\Par

php - 如何让 Behat 等待 AJAX 调用?

场景:修改并保存对市场事件的不完整更改GivenIclickontheCampaignsectionfolderAndIpressSaveintheselectedCampaignThenIshouldseeanerrorballooninformingthechangescannotbesaved要点是,最后一步中的这个“错误气球”是一个ajax调用,它会根据操作的成功带来绿色或红色的气球。目前我所做的是之后“然后我按保存...”我会做一个sleep(3)给它时间让这个气球出现。这似乎不是很聪明,因为您在浪费时间,而且有时处理此调用可能需要或多或少的时间。你们如何让行为测试等待Aja

php - 如何将 Behat 与 PHPStorm/其他 IDE 集成

Behat是龙头BDDPHP框架。我用PHPStorm想要整合Behat作为外部工具进入IDE。问题:我应该如何在PHPStorm或任何其他IDE中将Behat设置为外部工具(即输出过滤器、宏等)?备注:PHPUnit有deprecatedtheirBDDsupport并将在3.6中删除它(尊重Behat),所以我相信PHPStorm中的集成PHPUnit测试对于BehaviorDrivenDevelopment来说并不理想。.2012年2月8日更新:PHPStorm的roadmap表示Behat语法将集成到2012年第一季度到期的4.0版本中!我能说什么-PHPStormrocks.

Behat查找字段错误:调用未定义的方法loginauthcontext :: find()

我正在编写Behat步骤定义,以在以下“登录”页面上自动提交用户名和密码字段。我通过使用XPATH选择器获得以下错误。请告知我做错了什么?谢谢!!致命错误:请致电/behatlogin/features/bootstrap/loginauthcontext.phpin20形式签名Signinloginauthcontext步骤定义/***@When/^Iamloggedin$/*/publicfunctioniAmLoggedIn(){$this->find('xpath','uname')->setValue('testuname');$this->findField('xpath','pa

html - 我如何点击 Behat 中的跨度?

我正在使用Behat来测试第三方网上商店。我在购物车中有一件商品要删除。确认弹出窗口显示询问我是否真的想这样做。此对话框的结构如下所示:RemoveitemfromshoppingcartAreyousureyouwanttodeletethisproduct?YesNo我能够使用带有以下代码的xpath选择跨度:publicfunctioniConfirmTheWindow(){$session=$this->getSession();$element=$session->getPage()->find('xpath',$session->getSelectorsHandler()-

html - 我如何点击 Behat 中的跨度?

我正在使用Behat来测试第三方网上商店。我在购物车中有一件商品要删除。确认弹出窗口显示询问我是否真的想这样做。此对话框的结构如下所示:RemoveitemfromshoppingcartAreyousureyouwanttodeletethisproduct?YesNo我能够使用带有以下代码的xpath选择跨度:publicfunctioniConfirmTheWindow(){$session=$this->getSession();$element=$session->getPage()->find('xpath',$session->getSelectorsHandler()-

mysql - 内存中的 Laravel 5 测试

我正在通过behat为我的大型Laravel5项目编写测试。我在MySQL中有我的MySQL数据库的测试副本和该数据库的播种器,该数据库共享其他环境的一些播种器。所有这些都按预期工作。但是,我尝试切换到使用sqlite内存数据库,因为它会显着加快我的自动化测试速度,而且因为我在每个behat场景开始时运行“artsianmigrate:refresh---seeder=TestDatabaseSeeder。我遇到的问题是我的一些种子数据导致sqlite抛出一个非常难以描述的语法错误,但MySQL完全可以处理种子数据。理想情况下,我认为,我希望它在内存中使用MySQL以提高性能并保持数据

mysql - 内存中的 Laravel 5 测试

我正在通过behat为我的大型Laravel5项目编写测试。我在MySQL中有我的MySQL数据库的测试副本和该数据库的播种器,该数据库共享其他环境的一些播种器。所有这些都按预期工作。但是,我尝试切换到使用sqlite内存数据库,因为它会显着加快我的自动化测试速度,而且因为我在每个behat场景开始时运行“artsianmigrate:refresh---seeder=TestDatabaseSeeder。我遇到的问题是我的一些种子数据导致sqlite抛出一个非常难以描述的语法错误,但MySQL完全可以处理种子数据。理想情况下,我认为,我希望它在内存中使用MySQL以提高性能并保持数据