2009-10-06 9 views
7

Estoy creando pruebas de unidad para una aplicación de Windows Forms. Una de mis métodos es un controlador de eventos para un formulario (no sé si esta es la fuente de mi problema):Solución del error: Error al crear el acceso privado para 'Microsoft.VisualStudio.TestTools.TypesAndSymbols.Assembly'

private void ImportButton_Click(object sender, System.EventArgs e) 
{ 
    // blah blah 
} 

Ahora, cuando intento crear una prueba unitaria para este método a través derecha clic en la fuente -> "Crear pruebas unitarias" todo parece funcionar bien hasta que abra la unidad de código de prueba generado:

/// <summary> 
///A test for ImportButton_Click 
///</summary> 
[TestMethod()] 
[DeploymentItem("FooBar.exe")] 
public void ImportButton_ClickTest() 
{ 
    // Creation of the private accessor for 'Microsoft.VisualStudio.TestTools.TypesAndSymbols.Assembly' failed 
    Assert.Inconclusive("Creation of the private accessor for \'Microsoft.VisualStudio.TestTools.TypesAndSy" + 
      "mbols.Assembly\' failed"); 
} 

Alguna idea de cómo solucionar este problema? Encontré este MSDN forum post que detalla un problema similar que no creo que se aplique a mi problema.

Respuesta

1

Esto parece ser más o menos fijo en VS2010 SP1, pero el tema apareció de nuevo El ensamblado que estaba creando una prueba contenía interfaces genéricas covariantes. Al creador de accesos no le gustó. Eliminar las directivas "in" resolvió el problema y pude vivir con que mis interfaces no eran covariantes por el momento.

1

Quité el proyecto de pruebas de unidades, ya que solo había un par de clases y agregué un nuevo proyecto ect con un nuevo conjunto de archivos, y funcionó. También pude generar accesos para probar métodos privados.

1

Esto no es un error, debe construir su proyecto para generar la DLL requerida por el descriptor de acceso y luego crear la prueba unitaria para la función privada. Funcionará.

Cuestiones relacionadas