2009-12-11 3 views
27

Tengo algunas pruebas que necesitan ser alimentadas con datos externos de archivos de Excel. Los archivos están incluidos en el proyecto de prueba, y en Visual Studio, he editado el archivo de configuración de prueba (Local.testsettings) para implementar los archivos de datos. Esto hace que funcione bien i VS.¿Cómo obtener MSTest para encontrar mis archivos de datos de prueba?

Sin embargo, también estamos ejecutando una integración continua con TeamCity, y en TeamCity esto no funciona. Mis archivos de datos no están disponibles para la prueba. Parece que las pruebas se ejecutan desde una carpeta temporal llamada "C: \ TeamCity \ buildAgent \ temp \ buildTmp \ ciuser_AS40VS6 2009-12-11 09_40_17 \ Out", y los archivos de datos no se copian allí.

He intentado cambiar la acción de compilación para los archivos de datos a "Recurso" y configurar copiar a dir de salida a "Siempre", pero eso no ayudó.

¿Alguien sabe cómo hacer esto?

Me postulo Visual Studio 2010 Beta 2 y TeamCity 4.5.5, por lo que estoy corriendo MSTest en primer lugar, y no NUnit ...

+0

También he estado utilizando la solución de recursos, pero ¿por qué lo necesitamos en primer lugar? ¿Cómo difiere la construcción de TC de la de nuestras PC de desarrollo? –

Respuesta

20

consigo alrededor de esto mediante la adición de mis archivos de datos (en mi caso usualmente XML) como recursos incrustados y los extraigo del ensamblaje de prueba.

[TestInitialize] 
public void InitializeTests() 
{ 
    var asm = Assembly.GetExecutingAssembly(); 
    this.doc = new XmlDocument(); 
    this.doc.Load(asm.GetManifestResourceStream("TestAssembly.File.xml")); 
} 
+0

Suena como un plan, ¡lo intentaré de inmediato! Gracias! –

+0

¡No hay problema, me alegra ayudar! –

+0

Funcionó bien. Debería haberlo pensado yo mismo. :-) ¡Muchas gracias por la respuesta rápida! –

4

Este post responde a esta pregunta: MSTest copy file to test run folder

+1

¿Esto ayuda con las pruebas que se ejecutan en un servidor de CI donde la solución no está disponible? –

+0

Si los archivos xml se mantienen en el ensamblaje de prueba, seguro :) –

Cuestiones relacionadas