【发布时间】:2021-01-08 18:55:58
【问题描述】:
背景
我有一个特定的测试,我需要生成一个监听端口 8082 的牛仔服务器,它返回一些静态响应。
目标
通常我会在我的application.ex 文件中启动一个牛仔进程,如下所示:
def start(_type, args) do
children = children([{Cowboy, scheme: :http, plug: MyServer, options: [port: 8082]}])
opts = [strategy: :one_for_one, name: MyApp.Supervisor]
Supervisor.start_link(children, opts)
end
但我正在处理的代码不是应用程序,所以我不能这样做。
我的目标是使用 ExUnit 的 setup_all 回调来执行此操作,但我不知道该怎么做或是否可行。
问题
- 如何在 ExUnit 中启动牛仔服务器?
【问题讨论】:
-
你不能把牛仔的
Supervisor.start_link放在你的setup_all中吗?