使用xUnit.net自动回滚和多线程

| 我正在尝试使用xUnit.net和xunit扩展提供的AutoRollback属性编写测试用例。 我的测试用例是这样的
[Fact, AutoRollback]<br>
public void TestCase()<br>
{

    // insert into data table
    repository.Insert(data);

    // spawn a new thread and read data which you just inserted in the data table
    Task.Factory.StartNew(action_to_read_data);
}
该测试用例失败,并在读取新线程中的数据时引发连接超时异常。我发现的问题是,由于AutoRollback属性的缘故,测试用例启动了事务,而在插入数据时,它锁定了表以在最后进行回滚。测试用例产生的新线程无法从同一表中读取数据,因为它被父线程锁定。我可以在同一线程中读取数据。 有人有解决办法吗?我想运行多个线程来读取上面插入的数据。     
已邀请:
到目前为止,我发现您无法在使用AutoRollback功能时在单元测试中使用另一个与同一数据库进行交互的线程。最后,我从测试用例中删除了该属性,并跟踪了测试用例自己插入的所有对象。     

要回复问题请先登录注册