gpt4 book ai didi

capybara - 如何在 rspec 测试之间保持 puma 服务器运行

转载 作者:行者123 更新时间:2023-12-02 03:35:33 30 4
gpt4 key购买 nike

我正在使用 rspec 和 capybara 来测试包含 javascript 的功能规范。每次运行测试时,都会启动 puma 服务器的单独实例,例如

Capybara starting Puma...
* Version 3.11.0 , codename: Love Song
* Min threads: 0, max threads: 4
* Listening on tcp://127.0.0.1:64558

如果我运行完整的测试套件,则 puma 的此实例仅启动一次,但如果我正在调试特定测试,则每次都会运行它,这会大大增加调试所需的总时间。有什么方法可以启动测试 puma Web 服务器的实例并使其在各个测试运行之间保持运行吗?

最佳答案

TL;博士;不完全是

唯一的方法是自己运行应用程序,告诉 Capybara 它在哪里运行 (Capybara.app_host),然后告诉 Capybara 不要运行自己的服务器 Capybara。 run_server = false,就像您针对外部应用程序运行 Capybara 一样。问题是 Capybara 将失去跟踪请求完成的能力(这需要服务器在自己的线程中运行),因此同步数据库重置等成为一个大问题。实在不值得。

关于capybara - 如何在 rspec 测试之间保持 puma 服务器运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50340345/

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