Dado este conjunto de prueba:Forzar MSTest utilizar un solo hilo
[TestClass]
public class MSTestThreads
{
[TestMethod]
public void Test1()
{
Trace.WriteLine(Thread.CurrentThread.ManagedThreadId);
}
[TestMethod]
public void Test2()
{
Trace.WriteLine(Thread.CurrentThread.ManagedThreadId);
}
}
Ejecución de la prueba con MSTest través de línea de comandos de Visual Studio o imprime dos números de los hilos diferentes (sin embargo, se ejecutan secuencialmente todos modos).
¿Hay alguna manera de obligar a MSTest a ejecutarlas con un solo hilo?
automatizados de pruebas de interfaz de usuario que tendrán que funcionar con la misma hebra de aplicación de interfaz de usuario, ya que todos ellos tienen que usar una sola clase de aplicación WPF estática que no se puede instanciar más de una vez (restricción de WPF, no la mía). La técnica funciona en NUnit. –
Lo resolví creando un nuevo dominio de aplicación para cada prueba, ejecutando el cuerpo de la prueba dentro de ese dominio de aplicación y creando una nueva instancia de aplicación en cada prueba. Puedo ver por qué esto sería doloroso en la mayoría de los casos, pero en mi caso, escribí mi propia clase de aplicación, así que no estaba realmente duplicando ninguna prueba al agregar ese texto repetitivo. –
Además, si comparte una instancia de aplicación, teóricamente podría crear un hilo de interfaz de usuario para ella y compartir eso también. –