代码之家  ›  专栏  ›  技术社区  ›  ruslander

在集成测试中,如何包装在事务中更改数据的REST调用?

  •  0
  • ruslander  · 技术社区  · 14 年前

    我有这样的代码:

    [Fact]
    public void should_return_at_least_3_users()
    {
      Rest.Call("http://localhost/admin/users/makeasfree/3");
    
      var response = Rest.Call<List<Users>>("http://localhost/admin/freeusers");
      response.Count.ShouldBeGreaterThan(0);
    }
    

    我试图用TransactionScope来解决这个问题,但没有成功。

    1 回复  |  直到 14 年前
        1
  •  0
  •   Darrel Miller    14 年前

    不太可能有任何好的解决方案来解决这个问题,因为跨HTTP请求支持分布式两阶段提交事务将违反HTTP请求的无状态性质。事务可以位于REST接口后面,但不应放在前面。

    this 视频:-)。