Ich versuche, alle Testläufe innerhalb eines bestimmten Teamprojekts abzufragen. Die Abfrage funktioniert, enthält jedoch nur einige der Ergebnisse. Unten ist die Liste der letzten Läufe. Die für DEV fragen gut ab, aber die für QA kommen in der Abfrage nicht durch. . Leider sind die QA diejenigen, die einzigen, die mich interessiertAbfrage aller Testläufe mit QueryTestRuns()
Hier ist der Code Ich habe zur Zeit:
// Get the catalog of team project collections
CatalogNode catalogNode = configurationServer.CatalogNode;
ReadOnlyCollection<CatalogNode> tpcNodes = catalogNode.QueryChildren(
new Guid[] { CatalogResourceTypes.ProjectCollection },
false, CatalogQueryOptions.None);
CatalogNode teamProject = null;
// List the team project collections
foreach (CatalogNode tpcNode in tpcNodes)
{
// Use the InstanceId property to get the team project collection
Guid tpcId = new Guid(tpcNode.Resource.Properties["InstanceId"]);
tpc = configurationServer.GetTeamProjectCollection(tpcId);
if (tpc.Name == TPC_NAME)
{
teamProject = tpcNode;
break;
}
}
if (teamProject == null)
throw new Exception(string.Format(@"Missing team project collection '{0}'", TPC_NAME));
_testManagementService = tpc.GetService<ITestManagementService>();
// Get the test runs
IEnumerable<ITestRun> testRuns = _testManagementService.QueryTestRuns(string.Format("select * From TestRun")).OrderByDescending(x => x.DateCompleted);
foreach (var testRun in testRuns)
{
Console.WriteLine("Test run: '{0}'", testRun.Title);
}
Dies ist mit VS und TFS 2015
Warum kommen nur einige Builds durch? Gibt es eine andere Art der Abfrage oder gibt es einen versteckten Filter, von dem ich nichts weiß? Ich wollte mir das TFS-Schema ansehen, für den Fall, dass noch eine andere Tabelle vorhanden ist, aber anscheinend ist das unmöglich, weil Microsoft uns wachsam vor uns selbst schützt.
Ich habe diesen Vorschlag an ein oder zwei anderen Orten gesehen, und es scheint die einzige Möglichkeit zu sein, dies zu umgehen, die ich derzeit finden kann. Seufzer. – Dan