laravel使用数据库测试时要注意什么

  介绍

本篇内容主要讲解“laravel使用数据库测试时要注意什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“laravel使用数据库测试时要注意什么”吧!

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

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

<强>使用DatabaseMigrations

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

SQLSTATE [HY000]:一般错误:1没有这样的表:exchange_code

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

迁移:新鲜的

执行测试之后

迁移:回滚

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

<强>注意事项

这里的<代码>迁移:新鲜>

<>强使用RefreshDatabase

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

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

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

public  function  testGet ()   ,{   工厂才能(交换::类)→创建();      exchange 美元;=,才能交换:选择(& # 39;代码# 39;)→地方(& # 39;状态# 39;,,0)→第();   时间=美元才能code 美元交换→代码;      这个美元才能→assertDatabaseHas (& # 39; exchange_code& # 39;,, (   ,,& # 39;代码# 39;,=祝辞,美元的代码,   )才能);   之前,}

<强>总结

到此,相信大家对“laravel使用数据库测试时要注意什么”有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

laravel使用数据库测试时要注意什么