php - PHP 错误:在第 1344 行的 /vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php 中的 null 上调用成员函数 connection()
问题描述
我正在做我的第一个单元测试。作为记录,我编写了几个功能测试并且它们有效。
在这里,有一点细节,我的表度量是 TimescaleDB ( Postgres ) 上的超表,所以我无法使用迁移/种子。
无论如何,因为它是一个单元测试,我这里不需要数据库连接。
这是我用于功能测试的工作配置:
<php>
<server name="APP_ENV" value="testing"/>
<server name="BCRYPT_ROUNDS" value="4"/>
<server name="CACHE_DRIVER" value="array"/>
<server name="DB_CONNECTION" value="sqlite"/>
<server name="DB_DATABASE" value=":memory:"/>
<server name="MAIL_DRIVER" value="array"/>
<server name="QUEUE_CONNECTION" value="sync"/>
<server name="SESSION_DRIVER" value="array"/>
<env name="TELESCOPE_ENABLED" value="false"/>
</php>
这是我的代码:
<?php
namespace Tests\Unit;
use App\Measure;
use Carbon\Carbon;
use PHPUnit\Framework\TestCase;
class MeasureTest extends TestCase
{
public function setUp() : void
{
parent::setUp();
}
/** @test * */
public function is_new_timestamp()
{
$timestep = "10";
$targetTimestamp = "30";
$ts = Carbon::create(2020, 04, 16, 13, 00, 0, null);
$m1 = new Measure(['time' => $ts]);
$m2 = new Measure(['time' => (clone $ts)->addMinutes($timestep)]);
$m3 = new Measure(['time' => (clone $ts)->addMinutes(2 * $timestep)]);
$m4 = new Measure(['time' => (clone $ts)->addMinutes(3 * $timestep)]);
$m5 = new Measure(['time' => (clone $ts)->addMinutes(4 * $timestep)]);
$m6 = new Measure(['time' => (clone $ts)->addMinutes(5 * $timestep)]);
assertTrue(Measure::isNextTimestamp($m1->time, $targetTimestamp));
assertFalse(Measure::isNextTimestamp($m2->time, $targetTimestamp));
assertFalse(Measure::isNextTimestamp($m3->time, $targetTimestamp));
assertTrue(Measure::isNextTimestamp($m4->time, $targetTimestamp));
assertFalse(Measure::isNextTimestamp($m5->time, $targetTimestamp));
assertFalse(Measure::isNextTimestamp($m6->time, $targetTimestamp));
}
我应该如何摆脱这个错误?我在哪里调用 connection() ?
解决方案
推荐阅读
- or-tools - ortools中节点之间的时间限制
- python-3.x - 如何创建一个列,该列显示具有“对象”数据类型的列中每个值的数据类型
- git - 从 gitlab 存储库而不是本地目录导入 terraform 模块会产生略有不同的 terraform 计划输出
- r - 删除重复出现的 GitHub 凭据提示
- sql - 在 presto 中优化窗口查询
- unity3d - Unity:从 FBX 文件中获取每一帧的关节旋转
- c# - Specflow - 如何在下一步中将响应作为变量传递
- raspberry-pi3 - 如何更改 pjsip 中的默认音频设备
- azure-aks - Azure Kubernetes 集群安全
- pandas - 将表格 pandas DataFrame 转换为嵌套的 pandas DataFrame