问题标签 [phpspec]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1351 浏览

php - 使用 Laravel、PHPSpec 和 PHPUnit 测试模型和服务

我很难决定或理解在 Laravel 中进行测试的最佳方法。

我真的很喜欢 PHPSpec 测试的行为方面,尽管它与测试 Eloquent 模型或任何与活动记录 ORM 相关的东西都不兼容。

在测试服务提供者 PHPSpec 之类的东西时,似乎是要走的路。

** 是否需要用 PHPUnit 之类的东西测试模型,然后用 PHPSpec 之类的东西测试其他非 ORM 层,例如服务提供者?***

0 投票
2 回答
2404 浏览

unit-testing - 带有驼峰式大小写或下划线的 PHPUnit 测试类

在以 PHPUnit 遵循的 xUnit 风格编写测试用例时,似乎每个人都遵循函数名称的驼峰式大小写约定:

我一直在用更“雄辩”的 PHPSpec 风格命名我的方法:

这种风格将来会给我带来问题吗?就我个人而言,我发现它更具可读性并且更容易返回。

0 投票
2 回答
718 浏览

php - 'phpspec' 不是内部或外部命令、可运行程序或批处理文件

我正在使用 Windows。我用 composer 安装了 phpspec 包,我将文件夹 phpspec/bin/ 添加到我系统的路径变量中。但是当我尝试运行phpspec命令时,出现以下错误:

即使我直接从存储 phpspec.php 的 bin 目录运行命令,我也会收到相同的错误。

0 投票
1 回答
311 浏览

php - Laravel 控制器测试

我正在尝试测试一些 laravel 控制器,但到目前为止做得并不好。我打算使用 PHPSpec 来做到这一点。我不知道从哪里开始,我打算测试控制器的 crud 功能。我了解我如何能够做到这一点,但真的不明白如何将其转换为 PHPSpec 测试。

例如,我如何能够使用 PHPSpec 测试这个方法?它会像断言一样简单吗?提前谢谢了。

0 投票
4 回答
3178 浏览

php - 如何从具有现有 Validator 类的命名空间调用 Validator

我正在尝试在 phpspec 中测试一个调用 Laravel 函数的Validator::make函数(http://laravel.com/docs/4.2/validation

但是,我试图从Validator已经使用类名的命名空间中调用相同的函数。如何调用文档中描述的该函数?

失败的解决方案:

尝试 1

给我

尝试 2

给我

尝试 3

给我

尝试 4

给我

0 投票
1 回答
531 浏览

php - phpspec 单元测试 - 使用 ioc / 服务注册表来交付具体类进行测试

我是测试新手,我不确定我是否以正确的方式进行:

我不想对特定的类进行单元测试,而是对从我的 ioc 容器中解决的任何类进行单元测试。在 ioc 容器中,我将接口绑定到具体类,如下所示:

示例(我正在使用 Laravel 5):

然后我想编写单元测试,FooInterface而不是SomeConcreteFoo稍后可以与其他类交换。

我想这样做的原因是,在我看来,相关测试应该针对我的 ioc 容器返回的任何内容,因为这就是我将在应用程序中使用的内容。在我看来,测试应该在接口级别完成,因为这是我定义应用程序其余部分对我的班级的期望的地方。

我很难找到有关如何执行此操作的任何信息,这表明我可能会以错误的方式思考这个问题。例如,也许我想要完成的更像是集成测试而不是单元测试。

所以第一个问题是:我是否正在考虑以正确的方式进行测试?如果我不是 - 你对替代测试路径的最佳实践有什么建议吗?

第二个问题:如果我的想法是正确的 - 我如何设置 phpspec 以使用 Laravel IOC 容器,以便我可以针对 IOC 返回的任何内容进行测试..

0 投票
1 回答
249 浏览

testing - 使用存储库和 phpspec 中的关系测试 Laravel 模型

我有一个 EloquentUserRepository,我想测试它的方法,但我真的不知道从哪里开始。任何人都可以为此提供任何启示?

这是我想测试的功能的一个例子。它正在寻找拥有一个 socialProvider 的用户,比如 github。具有社交提供者的用户的基本结构是这样的:

设置了这个,我怎样才能基于这个结构来测试模型呢?是否真的需要为此目的创建内存数据库、迁移和种子,或者可以在没有它的情况下进行测试?

由于 laracasts 视频,我正在使用 phpspec,但我不确定它是否是正确的选择......我希望你们中的一些人可以提供帮助!

0 投票
1 回答
734 浏览

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

我在寻找一种方法来测试我的异常处理程序是否在抛出异常时被调用时有点磕磕绊绊。

这是我最初用于测试的想法:

Client有一个方法catchException将通过以下方式设置为异常处理程序: http set_exception_handler: //php.net/set_exception_handler

运行这个测试给了我这个反馈:no beCalled([array:0]) matcher found for null,所以我也尝试创建一个规范Exception并执行以下操作:

但是运行这个测试会返回另一个错误:exception [exc:Exception("")] has been thrown

如何测试我的异常处理程序是否被调用?

0 投票
0 回答
411 浏览

node.js - Gulp 一段时间后抛出错误,并在重新启动时再次工作

我刚刚开始使用 Gulp,并且遇到了一个间歇性问题,有时我会收到以下错误,该错误在配置没有变化的情况下发生,并且只有在我重新启动时才会消失,我已经删除了node_modules, 和/tmp, 它没有任何区别,我正在运行 Ubuntu 14.10:

这是我的 gulpfile.js:

更新:

今天早上 Gulp 再次工作,没有重新启动,此后又停止工作,所有配置都没有任何更改。

0 投票
1 回答
629 浏览

php - 带有 Mock 示例测试的 PHPSpec 始终返回 null 但实现按预期工作

我想从 PHPSpec 开始,所以我正在使用两个简单的类。第一个负责应用百分比缩小或放大到数字,第二个负责使用百分比应用程序(如模拟)计算产品价格。

PercentageToNumberApplyerSpec(规范):

PercentageToNumberApplyer(实现):

PriceCalculatorSpec(规格):

问题

问题是在上面的例子中运行 phpspec run 后的结果是:

价格计算器(实现):

即使测试失败,为什么以下用例仍然有效:

$price 有 80 的价值...