2012-10-02 72 views
5

Estoy intentando obtener planes de prueba mediante la API TFS.TFS API TestManagementService siempre devuelve nulo

TfsTeamProjectCollection tfs = TfsTeamProjectCollectionFactory.GetTeamProjectCollection(new Uri("http://xxxxxxx:8080/tfs/DefaultCollection")); 

var service = (ITestManagementService)tfs.GetService(typeof(ITestManagementService)); 

La variable "servicio" siempre devuelve nulo.

¿Tiene alguna idea, por qué?

+0

tfs.GetService (typeof (WorkItemStore)) devuelve el objeto de la tienda pero ItestManagementService devuelve nulo – cerezza

Respuesta

2

Tal vez usted es el ligado con diferentes versiones de conjuntos de referencia, la mezcla de diferentes versiones de los conjuntos de Visual Studio? Ejemplo:

  • Microsoft.TeamFoundation.Client v11.0 (VS 2012)
  • Microsoft.TeamFoundation.TestManagement.Client v12.0 (VS 2013)

Yo tenía el mismo problema de GetService<ITestManagementService>() volviendo siempre nula, incluso cuando GetService<VersionControlServer>() volvería buena valor (no nulo)

La solución publicada en MSDN - VersionControlServer always returns null funcionó para mí: tenía referencias a algunos ensamblajes v11.0 (VS2012) y v12.0 (VS2013). Cambiar todas las referencias a la v11.0 me lo arregló.

4

Intente asegurarse de que está autenticado en Team Project Collection antes de llamar al comando Obtener servicio. Este fragmento de código funciona correctamente para mí:

TfsTeamProjectCollection tpc = TfsTeamProjectCollectionFactory.GetTeamProjectCollection(new Uri("https://tfs.companyname.com/tfs/DefaultCollection")); 
tpc.EnsureAuthenticated(); 

ITestManagementService service = tpc.GetService<ITestManagementService>(); 
Cuestiones relacionadas