Aug*_*eDB 4 testing tdd elixir
我正在使用ExUnit测试我的Elixir应用程序,这是一款纸牌游戏.
我发现,在我写的每一个测试中,我都会先创建一副新的卡片.
test "Do This Crazy Thing do
deck = Deck.create()
[...]
end
test "Do This Other Crazy Unrelated Thing" do
deck = Deck.create()
[...]
end
Run Code Online (Sandbox Code Playgroud)
有没有办法解决这个问题,以便可以在每个测试用例之前创建一个新的套牌?我知道有一些与之相近的东西setup do [...] end
,但我认为这不是我的解决方案.
我需要一个不同的测试框架吗?我是否需要以setup
某种方式使用我尚未想到的?
-Augie
您可以使用def setup
与meta
刚刚这一点.
例:
defmodule DeckTest do
use ExUnit.Case
setup do
{:ok, cards: [:ace, :king, :queen] }
end
test "the truth", meta do
assert meta[:cards] == [:ace, :king, :queen]
end
end
Run Code Online (Sandbox Code Playgroud)
这里有更多信息
归档时间: |
|
查看次数: |
1319 次 |
最近记录: |