Multithreading Silverlight单元测试中的线程重命名

Multithreading Silverlight单元测试中的线程重命名,multithreading,silverlight,unit-testing,Multithreading,Silverlight,Unit Testing,在我的silverlight单元测试中,我有一个单元测试类的几个单元测试方法,在每个方法中,我将Thread.Name设置为某个字符串。现在,这应该在第一个线程之后崩溃,因为Thread.Name在分配之后无法设置,我还检查了每个测试方法是否在一个与其他方法具有相同托管id的线程上运行,所以我不明白为什么它没有抛出错误,线程是否以某种方式“重置”每个单元测试运行后?所以我猜您正在使用MSTest-MSTest为每个测试使用线程池中的新线程(它还为每个测试创建一个全新的测试类)。 虽然有点慢,但它

在我的silverlight单元测试中,我有一个单元测试类的几个单元测试方法,在每个方法中,我将Thread.Name设置为某个字符串。现在,这应该在第一个线程之后崩溃,因为Thread.Name在分配之后无法设置,我还检查了每个测试方法是否在一个与其他方法具有相同托管id的线程上运行,所以我不明白为什么它没有抛出错误,线程是否以某种方式“重置”每个单元测试运行后?

所以我猜您正在使用MSTest-MSTest为每个测试使用线程池中的新线程(它还为每个测试创建一个全新的测试类)。
虽然有点慢,但它确保了测试的隔离(如果并行运行测试,这一点更为重要)


您(可能)不应该为测试之间的共享状态而烦恼,因为每个测试都应该独立运行…

您使用的是哪个测试运行程序?我使用的是Silverlight for Windows Phone单元测试框架,设置与此完全相同,我不认为我是,在本页上,他提到了桌面单元测试(我假设这是mstest)为每个单元测试使用新线程和应用程序域;然而,它说silverlight单元测试执行主ui线程中的所有单元测试,这是有道理的,但它没有解释每个单元测试之间发生了什么,这让我可以反复重命名线程。