Specs2,顺序与否

时间:2015-10-16 06:26:36

标签: scala unit-testing specs2

我正在使用Scala开始一个新项目。我想用Specs2测试我的组件。但是我已经失去了半小时来解决模拟验证问题。

我的规格如下:

Creating a page should 
  Verify that the name is not empty
  Verify that the name is unique
  Produce and store the page

我已经模拟了我的存储库,以便我可以验证当前提条件失败时,页面没有存储:

there was no(pages).add(any[Page]) 

但是对于最后一句,我确认页面已存储。

there was one(pages).add(page)

但我的规格失败了,因为最后一次测试是在第二次测试之前进行的there was one(pages).add(...)所以我必须添加sequential关键字。

我做错了吗?我可以为每个示例创建一个模拟,以便没有副作用。或者我可以在每个例子之前重置模拟吗?

或者在使用模拟测试时使用sequential是否正常?

非常感谢。

1 个答案:

答案 0 :(得分:0)

由于您使用模拟,最简单的方法是为每个示例创建一个。像这样,所有示例都是独立的,可以同时执行。