Elixir ExUnit:完整测试套件之前的 运行 函数?
Elixir ExUnit: Run function before the complete test suite?
在每个测试之前调用 setup
回调,在任何测试运行之前每个模块只调用一次 setup_all
回调。
我有这样的情况,我需要在整个测试套件运行之前准备一些东西。只有一次。我正在使用非标准数据库并设置包含所有索引的架构需要一点时间。所以我想通过不经常这样做来加快测试速度。
有办法处理吗?
您可以将您的初始化代码放在test/test_helper.exs
中。该文件中的任何代码都将在测试 运行 之前执行,并且只会执行一次。正如@mudasobwa 指出的那样,代码是在 ExUnit.start()
之前还是之后并不重要,它会在测试之前 运行。
# your code here
ExUnit.start()
# or here
在每个测试之前调用 setup
回调,在任何测试运行之前每个模块只调用一次 setup_all
回调。
我有这样的情况,我需要在整个测试套件运行之前准备一些东西。只有一次。我正在使用非标准数据库并设置包含所有索引的架构需要一点时间。所以我想通过不经常这样做来加快测试速度。
有办法处理吗?
您可以将您的初始化代码放在test/test_helper.exs
中。该文件中的任何代码都将在测试 运行 之前执行,并且只会执行一次。正如@mudasobwa 指出的那样,代码是在 ExUnit.start()
之前还是之后并不重要,它会在测试之前 运行。
# your code here
ExUnit.start()
# or here