早上好,
我的 Elixir 项目中有一些特别昂贵的数据库设置代码,可将所需数据插入数据库。
@tag :insert_my_data
我目前有我的测试工作,以便在通过构造需要它的任何测试之前插入此数据。我的测试助手中有代码,它执行以下操作:
setup tags do
if tags[:insert_my_data] do
# Run code here
end
end
这样做的问题是我必须运行此代码数百次,而且速度很慢。
如果代码在任何调用之前自动运行一次mix test
,并且 Ecto 提供的事务回滚功能将重置为这个已知状态(而不是空数据库),那么效果会更好。
我怎样才能做到这一点?
谢谢!