public void Can_Query_Accross_Threads() { _context.FieldValueEx <LdapConnection>("_connection").Bind(); Action work = () => { for (int i = 0; i < 50; i++) { _context.Query(IntegrationUserTest.NamingContext).ToList(); } }; Executing.This( () => System.Threading.Tasks.Task.WaitAll(System.Threading.Tasks.Task.Factory.StartNew(work), System.Threading.Tasks.Task.Factory.StartNew(work), System.Threading.Tasks.Task.Factory.StartNew(work))) .Should() .NotThrow(); }