草庐IT

PHPSpec:通过引用返回的函数

我在项目中将Doctrine2.5更新为2.6,但phpspec已损坏。函数getEntityChangeSet()现在通过引用返回。phpspec好像不支持。$unitOfWork->getEntityChangeSet($site)->willReturn(['_dataParent'=>[0=>2,1=>3]]);响应是不支持通过引用返回底层函数(doctrine/doctrine2)是publicfunction&getEntityChangeSet($entity){$oid=spl_object_hash($entity);$data=[];if(!isset($this-

Php规范。当 mock 必须返回一个对象时调用非对象的成员函数

我是phpspec的新手,正在尝试创建用于学习目的的虚拟转换器,但我坚持使用Calltoamemberfunctiononanon-objecterror这是我的代码:转换类private$supportedFormats=['xml','json'];private$handler;publicfunction__construct(ConvertHandler$handler){$this->handler=$handler;}publicfunctionconvert(array$data,$format){if(!$this->shlouldBeSupportedFormat(

PHPSpec - 无法运行,有人使用它进行 php 开发吗?

为此搜索了stackoverflow,没有找到答案来自RubyOnRails和Rspec,我需要像rspec这样的工具(更容易过渡)。通过PEAR安装它并尝试运行它但它不工作(还)只是想问问周围是否有人使用它有同样的问题,因为它根本没有运行尝试使用手册中的示例运行它-http://dev.phpspec.org/manual/en/before.writing.code.specify.its.required.behaviour.htmlphpspecNewFileSystemLoggerSpec什么都不返回连跑phpspecsome_dummy_value什么都不返回

PhpStorm phpspec 代码嗅探器忽略测试文件夹

当我尝试创建它时,我在我的测试类中看到了警告。我不想为测试类创建PHPDoc和更多内容,但PhpStorm向我显示警告,因为PhpStorm无法将测试类标记为排除phpcs。我如何运行phpcs来验证我的类是否符合编码标准:phpbin/phpcs./src-p--encoding=utf-8--extensions=php--ignore=Tests--standard=./vendor/escapestudios/symfony2-coding-standard/Symfony2如何为PhpStorm2016.3.2实现它?我尝试创建配置:并在PhpStorm中导入此配置:但是我的

php - 如何使用 phpspec 测试异常处理程序

我在寻找一种方法来测试我的异常处理程序是否在抛出异常时被调用时遇到了一些困难。这是我最初用于测试的想法:classClientSpecextendsObjectBehavior{functionit_should_catch_exceptions(Config$config){$e=newException('testexception');$this->catchException($e)->shouldBeCalled();throw$e;}}Client有一个方法catchException它将通过set_exception_handler设置为异常处理程序:http://php

let 中的 phpspec 标量值

我正在尝试将let函数与标量值一起使用。我的问题是价格是Double,我预计是int5。functionlet(Buyable$buyable,$price,$discount){$buyable->getPrice()->willReturn($price);$this->beConstructedWith($buyable,$discount);}functionit_returns_the_same_price_if_discount_is_zero($price=5,$discount=0){$this->getDiscountPrice()->shouldReturn(5);

phpspec - 获取返回值

我想获取对象的实际返回值,而不是可链接的对象。classFoo{public$attribute='data';}classFooSpecextendsObjectBehavior{publicfunctionit_is_a_test(){$attribute=$this->attribute;//Iwanttoget'data'}}有什么办法可以做到这一点吗?谢谢。 最佳答案 以防万一有人需要$attribute=$this->attribute->getWrappedObject();它返回函数/属性的实际返回值。

PHPSpec 在 PHP7 中捕获类型错误

我想在PHP7中测试带有标量类型提示和严格类型的示例方法。当我不传递参数时,该方法应该抛出一个TypeError。PHPSpec返回fatalerror:UncaughtTypeError:Argument1passedtoExample::testname=$name;}}classExampleSpecextendsObjectBehavior{functionit_is_initializable(){$this->shouldHaveType('Test\Example');}functionit_check_test_method_when_not_pass_argument

PhpSpec:我怎样才能从一个套件中只运行一个测试?

我有一个如下所示的phpspec类,我只想从中运行一个规范。我只想运行“it_should_do_something_easy”。这可能吗?这就是我运行这个规范文件的方式:$>phpspecrunspec/Project/WorkerSpec.php但现在我只想运行一个规范,如“it_should_do_something_easy”。doSomethingEasy()->shouldReturn('Done!');}publicfunctionit_should_do_something_hard(){$this->doSomethingHard()->shouldReturn('T

php - PHPUnit 和 PHPSpec 的异同

我目前正在研究我应该为php使用哪个测试框架。我有两个选择是PHPUnit和PHPSpec。我知道PHPUnit是TDD(测试驱动开发),而PHPSpec是BDD(行为驱动开发)。但是,由于缺少任何真正的PHPSpec教程并且PHPSpec站点上的文档有限,我无法得出完整的结论。我想问大家的是,这两个框架之间还有哪些异同?是的,BDD和TDD很重要,但还有其他的吗?他们看起来很相似,但没有人详细谈论他们的相似之处。谢谢你。 最佳答案 PHPSpec是一个SpecBDD工具,更专注于指导您进行代码设计,而不是一个测试框架。这取决于您对
12