Laravel 单元测试?

想问一下谁做过单元测试,有没有laravel的单元测试实例分享一下

《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
讨论数量: 7

@请回答2011丶 因为对于复杂的 json 数据结构,这样写就不严谨了。直接 assert 整个json内容,把 api json data 放入一个json文件内,称为baseline,即是 expected data,你的actual data与这个expected data进行assert下,看是否不一样。。

这样就是assert 整个json data,只要任何一处出现git diff,看是否是自己想要的,是想要的就用actual data覆盖expected data作为以后的expected data,不是想要的就是代码写错了。。

总之,assert 整个json data, 而不是api json 的某一处key, value。

6年前 评论

因为项目是用于做api 接口的,返回值全部是json ,所以测试的断言全部是json 断言,即断言 json 中肯定包含某些关键键名。

6年前 评论

有没有开源的项目可以分享

6年前 评论

@LuminEe 有没有开源的代码分享

6年前 评论

@请回答2011丶 我是这样做的

$params = ['phone' => $phone];
$with   = ['user', 'type'];
$result = $this->user->listAccountWithByParamArray($params, $with);
$this->assertArrayHasKey('data', $result);
$account = $result['data'][0];
$this->assertArrayHasKey('nickname', $account);
$this->assertArrayHasKey('user_id', $account);
$this->assertArrayHasKey('is_available', $account);
6年前 评论

@LuminEe 你是在做 integration/functional test case, call 一个api,断言api json data,但是断言最好不要这么写。

6年前 评论

@请回答2011丶 因为对于复杂的 json 数据结构,这样写就不严谨了。直接 assert 整个json内容,把 api json data 放入一个json文件内,称为baseline,即是 expected data,你的actual data与这个expected data进行assert下,看是否不一样。。

这样就是assert 整个json data,只要任何一处出现git diff,看是否是自己想要的,是想要的就用actual data覆盖expected data作为以后的expected data,不是想要的就是代码写错了。。

总之,assert 整个json data, 而不是api json 的某一处key, value。

6年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!