问题标签 [laravel-testing]
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.
laravel - Laravel 测试:get() 方法持久化查询字符串
我正在运行Laravel 5.6
并在使用查询字符串测试端点时遇到了一个奇怪的问题。
这是我的测试:
2 个调用中的每一个$this->get()
似乎都在调用具有相同查询字符串参数q
=值的路由,doe
因此第二组断言失败,因为它还返回 3 条记录。
在浏览器中进行测试时,一切正常,并且记录由查询字符串过滤 - 只是在测试期间 - 就好像调用第二次忽略参数一样。
route
helper 使用查询字符串返回正确的 url。
我的控制器有这样的东西:
知道可能是什么原因造成的吗?
laravel - 拉拉维尔 5.6。如何测试 JSON/JSONb 列
$this->assertDatabaseHas()
不适用于JSON
/JSONb
列。
那么如何在 Laravel 中测试这些类型的列呢?
目前,我有一个商店行动。如何执行断言,即保存了具有预定义值的特定列。
就像是
['options->language', 'en']
不是一个选项,因为我有一个包含元数据的广泛 JSON。
如何一次检查JSON
数据库?
laravel-5 - Laravel 测试:如果需要检查多个级别,assertJsonFragment 会失败
这是回应:
我想断言以下片段是响应的一部分:
有什么方法可以断言该translate
数组至少包含一个键为的元素nl_NL
并validate
包含一个键为的元素it_IT
?
laravel - 拉拉维尔 5.6。嘲讽。属性上的模拟方法
目前我有类似的东西(简化版)
app(ShopifySDK::class)->Order->get($params)
如何模拟此类并检查get()
方法输入?
这是行不通的。
并给出这样的错误
php - 嘲讽。检查第 100 次调用的参数
我正在Mockery
使用Laravel 5.6
. 目前我需要检查第 100 次通话中传递了什么。
这是我要执行的示例检查。
有可能做到吗?如果是,那该怎么做?
laravel - phpunit 命令在 laravel 项目上给出权限被拒绝错误
当我尝试执行
vendor/bin/phpunit
我得到错误
-bash: vendor/bin/phpunit: Permission denied
在 laravel 5.2 项目上。我尝试删除整个供应商文件夹并重新安装,composer install
但错误发生相同。这件事有什么解决办法吗?
谢谢。
laravel - 仅伪造特定事件在 Laravel 测试中不起作用
我在我的项目中使用包 spatie/laravel-sluggable。我需要断言一个事件已被调度。问题是当我Event::fake([AdvertPublished::class])
在测试中伪造事件()时,理论上只有我的 Advertpublished 事件应该被伪造,但似乎 pacakge 事件也是伪造的,并且创建 slug 的方法generateSlugOnCreate
永远不会执行导致 sql 错误,因为我的 slug 字段不能为空。
有人知道我是否遗漏了什么或可能是什么问题?
laravel - Laravel 测试:协调 http-request 和控制器
在下面的测试中,我们(我的谦虚)需要确保$utmSource
类字段接收到正确的值。
当然,这个测试不会通过,因为$response
和$topPageController
是独立的,所以$utmSource
将是null
。我们如何关联$response
和$topPageController
?
laravel - 如何在 Laravel 测试中的获取路由中包含 CSRF 令牌?
为了防止 CSRF 攻击,我将带有当前 CSRF 令牌的状态参数添加到外部链接。当外部页面将用户重定向回我的站点时,它将包含状态。
通过一个简单的条件,我可以在我的控制器中检查它:
现在我想为其编写一个测试以通过 if 条件,但 csrf_token() 在测试目录中为空,但在控制器中却没有。不幸的是,它失败了。以下是测试的摘录:
之前可以生成令牌吗?
laravel - 在 Laravel / PHPUnit 上测试时,事件监听器从不断言
我正在尝试发送一封测试电子邮件并断言(使用事件)它已发送。
测试运行良好并且事件实际上发生了(我在 LogSendingMessage 类上记录事件处理程序方法),但从不断言expectsEvents
,既不在之前,也不在Mail::send
方法之后。
Here on stack 还有一些类似的问题,但是,没有一个对我有用。我很感激任何帮助。:)