- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试使用 Laravel/Dusk 在 headless chrome 中自动下载文件。在 GUI 模式下,文件在我的下载文件夹中下载得很好。但是在 headless 模式下,下载根本不会发生。有吗有什么办法可以解决这个问题?
最佳答案
对于那些遇到这个问题的人,我在撰写本文时找到了一个使用当前版本的 Laravel 的简单解决方案。
我建议首先在您的存储路径中创建一个名为 temp
的目录(可能也想忽略它),然后导航到 DuskTestCase.php
文件设置黄昏安装。
在 driver
方法下,在初始化 ChromeOptions
变量的部分下添加以下内容。
$options->setExperimentalOption('prefs', [
'download.default_directory' => storage_path('temp')
]);
driver
函数现在应该如下所示:
$options = (new ChromeOptions())->addArguments([
'--disable-gpu',
'--headless',
'--window-size=1920,1080'
]);
$options->setExperimentalOption('prefs', [
'download.default_directory' => storage_path('temp')
]);
return RemoteWebDriver::create(
'http://localhost:9515',
DesiredCapabilities::chrome()->setCapability(
ChromeOptions::CAPABILITY,
$options
)
);
作为旁注,这对我来说适用于通过 JS 创建的 PDF 文件,所以我不能明确地说它如何适用于从后端下载的文件。
关于laravel - 使用 Laravel/Dusk 在 headless chrome 中下载文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50405381/
我正在尝试运行 Laravel Dusk,我需要使用测试数据库。当我查看屏幕截图时,它说数据库不存在。问题是数据库是在 .env 上定义的,而不是在 .env.dusk 上定义的……我试图将文件重命名
如何点击使用 laravel dusk 隐藏的元素?我们在 Selenium 中有脚本方法。我们如何使用 Laravel Dusk 实现相同的功能? 最佳答案 尝试$browser->script('
我有一个页面,其中包含一些禁用的输入、跨度和 div。 在后台我等待按键。这是一些内存游戏的背景。 我的问题是,结果证明它很难测试。 我知道两个函数来模拟输入:type()和 keys() .当我使用
标题说明了一切。我想知道如何使用内存中的 SQLite 数据库使用 Dusk 正确设置新的 Laravel 5.4 项目。 我可以运行测试,但出现错误:“没有这样的表:用户” 我已经创建了一个新的 L
我刚开始在 Laravel 5.8 上使用 Laravel Dusk 并且已经遇到了一个问题。在 Google 上搜索了很多,但没有找到答案。 $browser->visit('https://www
在下面的代码中,我想检查元素是否存在于 XPath 中,然后只有它应该执行代码。 if($browser->driver->findElement(WebDriverBy::xpath('/html/
即使像下面这样运行一个简单的测试也是如此: public function test_simple() { $user = factory(User::class)->create();
我正在编写一些测试,我想看看 Dusk 是否正确填写了输入字段,但 Dusk 在运行测试时不显示浏览器,有什么办法可以强制它这样做吗? 最佳答案 在 tests\DuskTestCase.php 文件
我有一个场景,我不想检查如果元素存在并且可见/可点击。如果不是,则脚本处理继续。 虽然 Laravel Dusk 提供了 $browser->assertVisible($selector) 方法,但
有没有办法在运行 Laravel Dusk 时获得代码覆盖率? 我知道它运行浏览器测试,所以它不会检查代码,但是有没有办法添加一个监听器来检查覆盖了哪些代码?我现在没有看到关于这个主题的任何内容。 最
Dusk 正在为在控制台中返回失败/警告的测试提供单独的日志,但我真正想要的是一个大日志文件或报告,其中列出了 Dusk 脚本中每个测试的通过/失败状态。 任何人都可以建议一种方法来解决这个问题吗?我
使用 Atlassian Bamboo 运行Dusk测试后,Chrome进程仍然是“僵尸”。 下面是我的驱动程序代码初始化: $options = (new ChromeOptions())
我正在使用 Laravel Dusk 进行浏览器测试。我对它还是陌生的,正在学习它是如何工作的。我正在使用大量 JavaScript 来帮助完成我需要做的事情。 我有一个需要填写的模态窗体,我可以使用
我在 Laravel 5.4 框架上的项目,我正在使用 Dusk用于浏览器测试。我有一个页面,其中有几个我想独立测试的部分,但是我遇到了一个问题,我必须为每个单独的测试启动一个新的浏览器实例、登录并导
最近将一个 5.3 项目升级到 5.4,一切看起来都不错。 今天我开始实现 Dusk,但是在运行示例测试时遇到了问题 ☁ footy-finance [5.4] ⚡ php artisan dusk
我正在使用 Laravel Dusk使用我的浏览器自动执行程序Laravel Dusk 使用 ChromeDriver 实现自动化我遇到的问题是我在常规 Google Chrome 浏览器上安装了一些
关闭。这个问题需要debugging details .它目前不接受答案。 编辑问题以包含 desired behavior, a specific problem or error, and th
我刚开始研究 Dusk - 我正在测试一些用户功能。 下面是我当前的测试,但是我正在尝试自己清理 - 例如,新创建的用户应该在完成后从数据库中删除。 我尝试使用tearDown 方法,但它似乎并没有真
我在 Controller 中使用 Laravel Dusk 供用户使用我的网站获取任何网站的屏幕截图。 我的代码: toProcess(); if ($process->isStar
我目前让 PhpStorm 成功运行 Dusk 测试,但是我希望它使用我设置的测试数据库。根据其他在线线程和资源,我创建了指向我创建的测试数据库的 .env.dusk.local 和 phpunit.
我是一名优秀的程序员,十分优秀!