gpt4 book ai didi

php - Laravel Scout和Elastic Search在测试中不起作用

转载 作者:行者123 更新时间:2023-12-03 00:31:17 24 4
gpt4 key购买 nike

当不在测试环境中时,我可以进行 flex 搜索。但是,由于某种原因在测试中创建模型时,它无法正常工作。我尝试过在没有队列的情况下运行它。我可以看到该作业已创建,并且该作业在进行调用之前运行。但是,我能够在测试代码中提取数据库中已有的内容。有什么想法为什么在测试中不起作用?

这是我的测试代码

$user    = $this->newLoggedInUser();
$invoice = factory(App\Invoice::class)->create(['account_id' => $user->account_id]);


$this->get($this->url() . '?q=' . $invoice->title, $this->userAuthHeader($user))
->seeJson([
'Title' => 'Invoice: ' . $invoice->number . ($invoice->title ? ' - ' . $invoice->title : ''),
'Description' => 'Customer: ' . $invoice->customer->name,
'Type' => 'Invoice',
])
->assertResponseStatus(200);

最佳答案

我发现我不得不在get调用上稍加延迟,因为在进行调用之前未更新索引。所以我添加了sleep(1)并对其进行了修复。另外,我发现最好在配置中为测试环境指定一个单独的索引。

$user    = $this->newLoggedInUser();
$invoice = factory(App\Invoice::class)->create(['account_id' => $user->account_id]);

sleep(1);

$this->get($this->url() . '?q=' . $invoice->title, $this->userAuthHeader($user))
->seeJson([
'Title' => 'Invoice: ' . $invoice->number . ($invoice->title ? ' - ' . $invoice->title : ''),
'Description' => 'Customer: ' . $invoice->customer->name,
'Type' => 'Invoice',
])
->assertResponseStatus(200);

关于php - Laravel Scout和Elastic Search在测试中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41233719/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com