jjzjj

php - 通过 PhantomJS 运行 Behat 登录测试时,它仅在第一次运行时通过

我在Behat中创建了一个非常简单的登录测试来登录我们的内部应用程序。有两种登录类型(从同一屏幕和框完成)。有基础的和高级的。唯一的区别是,高级登录用户可以访问多个公司,并被要求选择一家公司进行工作。我发现每当我通过PhantomJS而不是Selenium运行场景时,它们运行得更快(很明显,因为没有东西必须在headless浏览器模拟器中呈现)。当我第一次启动PhantomJS时,它可以很好地运行这两种情况。但是后来我第二次运行它,但第一个场景(基本登录)失败了。如果我重新启动PhantomJS,它会再次运行,直到第二次尝试。我对此很困惑。为什么我需要重新启动PhantomJS才能让两

php - Behat - 未找到上下文类。

这是我的目录结构:composer.jsoncomposer.pharvendor/bin/behattests/functional/behat.ymlfeatures/registration.featurebootstrap/FeatureContext.php我做到了:cdtests/functional../../vendor/bin/behat--init这为我创建了基本结构。这是在behat.yml中:default:paths:features:'%behat.paths.base%/features'bootstrap:'%behat.paths.base%/feat

php - 在使用 Behat 和 Symfony2 的场景之前登录

首先我读过thisrelatedquestion和thisotherapproach(blogpost).这是我的behat.yml:default:suites:users:contexts:-DoctrineFixturesContext-FeatureContext-Behat\MinkExtension\Context\MinkContext-Sanpi\Behatch\Context\RestContext-Sanpi\Behatch\Context\JsonContextpaths:[%paths.base%/features/users]extensions:Behat\

php - 如何在 Symfony 2 中使用 Behat 和 Mink 测试 REST API

我正在Symfony中构建一个RESTAPI,我想用Behat测试它(使用Mink和symfony2的behat扩展)。GET方法没有问题,我只是“模拟”一些数据库对象,使用“我在”步骤定义并检查响应。但是当涉及到测试某个元素的帖子是否有效时,我不知道如何使用Mink发送帖子参数。我知道这可以用Guzzle来完成,但我认为通过Mink和Symfony扩展来完成会更好。我正在寻找的是定义步骤的方法,例如WhenIPOSTtothefollowingdata:|field1|field2|field3||value1| value2| value3|有什么简单的方法可以使用Mink发送这个

php - 使用 Behat 在 PHP 中找不到类 'Behat\Behat\Context\BehatContext'

我正在尝试使用tutorialonthewebsite学习Behat.第一步顺利,没有出现错误。但是当我更改ls_project/features/bootstrap/FeatureContext.php时,如教程第二步所示,我收到以下错误:'Behat\Behat\Context\BehatContext'未找到。应用更改的教程代码:#features/bootstrap/FeatureContext.php完整的错误日志:11:51:33/ME:/var/www/test-driven/behat/ls_project$behat#features/bootstrap/Featur

php - Behat 外部文件中的步骤定义

默认情况下,Behat在名为FeatureContext的文件中查找步骤定义(所有步骤都在一个文件中)。步骤多,维护这么大的文件很困难。我希望每个功能文件有一个定义文件。如何在外部文件中定义步骤?例如homepage.featureHomepageContextextendsFeatureContext 最佳答案 Behat有多个选项供您将FeatureContext拆分为多个类。首先,您可以使用老式的php5继承。如果继承不是您想要的,Behat还支持子上下文:“UsingSubcontexts”。接下来,如果您想要以不同于Fea

php - 如何在 behat 中激活 mink

我正在尝试一起使用behat和mink,阅读该链接:http://docs.behat.org/cookbook/behat_and_mink.html#method-1-composer并尝试在Behat框架中激活Mink,但它对我不起作用:(这是文本形式的手册AndthisexecutablewillalreadyautoloadalltheneededclassesinordertoactivateMinkExtensionthroughbehat.yml.Nowletsactivateit:我觉得他在说/vendor/behat/mink-extension/behat.yml

php - 如何运行特定的 Behat 场景

我正在尝试从命令行运行特定的Behat场景,这是我正在做的:$bin/behatfeatures/features/baseline.feature:3然而,这并没有解决这个问题。如果我跑bin/behatfeatures/features/baseline.feature我可以运行整个功能文件。文件如下所示——我尝试运行的场景位于文本编辑器的第3行:Feature:@apiScenario:ClearcacheGiventhecachehasbeenclearedWhenIamonthehomepageThenIshouldgeta"200"HTTPresponseScenario: