首页 > 作文

laravel使用数据库测试注意事项

更新时间:2023-04-08 16:51:34 阅读: 评论:0

相对于其它测试,数据库测试可以说是相对复杂繁琐的,因为数据库测试不可避免地会涉及到数据库的增删改查,而这些操作会影响数据库的数据,而我们测试最忌讳的就是修改了数据的测试,因为这样像造句子的话下次测试的时候,可能测试结果就会发生改变。

庆幸的是,laravel为我们提供了非常简洁的数据库测试方法,而且不会影响原数据。

u databamigrations

通过使用转移表,我们可以对数据进行。不过这就要求我们的数据是通过mig更重要的是英语ration来生成的,如果直接在数据库创建的话,我们进行测试的时候就会提示:

sqlstate[hy000]: general error: 1 no such table: exchange_code

我们可以看下databamigrations的源码,可以看到它是trait,它会在执行测试之前

migrate:fresh

执行测试之后

migrate:rollback

这样的话就保证我们对数据库的操作都会进行回滚。

注意事项

这里的migrate:fresh 会删除掉所有表,然后重建数据.

u refreshdataba

这种方式回去判断是否是内存数据测试,如果是的话,因为是在内存操作,不影响数据库。

如果是mysql等数据库,它会启用事务,也就是我们测试的数据不会真的提交,测试完毕后,进乡愁古诗行回滚,然后提交,也就是相当于我们对数云的诗句据库什么也没做。

测试数据库的时候,我们都是使用工厂进行创建数据,否则你会发现即使数据库有数据,也是空的。

public function testget() {  factory(exchange::class)->create();  $exchange = exchange::le南北战争时间ct('code')->where('status', 0)->first();  $code = $exchange->code;  $this->asrtdatabahas('exchange_code', [   'code' => $code,  ]); }

总结

到此这篇关于laravel使用数据库测试注意事项的文章就介绍到这了,更多相关laravel数据库测试内容请搜索www.887551.com以前的文章或继续浏览下面的相关文章希望大家以后多多支持www.887551.com!

本文发布于:2023-04-08 16:51:32,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/zuowen/f1d3474f68b2f8ce4488546af43d5ced.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

本文word下载地址:laravel使用数据库测试注意事项.doc

本文 PDF 下载地址:laravel使用数据库测试注意事项.pdf

标签:测试   数据库   数据   的是
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图