2009-06-30 4 views
4

Ähnlich wie How to use MsTest in Continuous Integration without VS? möchte ich mstest.exe auf einem TeamBuild-Server ausführen.Ausführen von MSTEST.exe/auf einem TeamBuild-Server veröffentlichen, was sind die Voraussetzungen?

Mein Kontext ist Trapping Error Status in MSBuild - d.h. ich versuche nur, mstest.exe/publish zu verwenden, um die Ergebnisse in das TFS-Repository hochzuladen. So ist das volle Paket in http://www.shunra.com/shunrablog/index.php/2009/04/23/running-mstest-without-visual-studio/ (Sie würden hoffen) wahrscheinlich zu viel, vor allem wie MSTEST.exe, wie in http://social.msdn.microsoft.com/Forums/en-US/tfsgeneral/thread/e4575890-8f88-413c-a7f3-0d09d3b9cb01 behandelt schlägt vor, alles, was ich tun muss, ist Team Explorer zu installieren.

Ich habe VS2008 Team Explorer SP1 installiert, und mstest.exe /? erzählt mir immer noch nicht von den Veröffentlichungsoptionen.

Daran erinnern, dass es nur Team Explorer sagt aus MSTest.exe erforderlich /? für die Veröffentlichung:

Folgende Optionen sind auch wenn Team Explorer installiert ist, zur Verfügung:

/veröffentlichen: [Servername] veröffentlichen Ergebnisse der Team Foundation Server .

/publishbuild: [Build-Name] Die Build-ID, die für die Veröffentlichung der Testergebnisse verwendet werden soll.

/publishresultsfile: [Dateiname] Der Name der Testergebnisdatei zu veröffentlichen. Wenn keine angegeben ist, verwenden Sie die Datei , die vom aktuellen Testlauf erstellt wurde.

/teamproject: [Teamprojektname] Der Name des Teamprojekts, zu dem der Build gehört. Geben Sie dies bei der Veröffentlichung der Testergebnisse an.

/Plattform: [Plattform] Die Plattform des Builds gegen die Testergebnisse veröffentlichen.

/geschmack: [geschmack] Der geschmack der build gegen die Testergebnisse zu veröffentlichen.

Ich werde die procmon.exe Weg nach unten, um herauszufinden, was fehlt, sondern im Idealfall jemand in der wissen würde einspringen und beantworten: -

Sollte MSTest.exe/veröffentlichen erfordern nur Team Explorer als angegeben, oder erfordert es VSTT und Team Explorer?

+0

haben seit installiert Team Suite nur mit den Test-Tool, das natürlich als erfolgreiche Abhilfe wirkt :(noch Interesse an einer geeigneten Lösung für VS08 (auch in 2010, aber zumindest beginnen, einfache Dinge wie Testläufer zu spalten ...) –

Antwort

6

Die/veröffentlichen Möglichkeit MSTest.exe ist eine Lizenzprüfung, dass ein „Team“ Version von Visual, um sicherzustellen, Studio wird installiert (dh die Entwickler- oder Testversion), bevor es den Veröffentlichungsteil des Codes veröffentlicht.

Diese Einschränkung wurde eingeführt, um die grundlegenden Funktionen zum Testen von Einheiten in Standardversionen von Visual Studio zu ermöglichen, erfordert jedoch eine der teureren Team-Editionen von Visual Studio zum Aktivieren der Team-bezogenen Funktionen beim Testen. So veröffentlichen Sie Ihre Testergebnisse in TFS.

Insgesamt gibt es 3 fehlende Features, wenn Sie keine Team Edition von Visual Studio mit Team Epxlorer installiert haben.

  • Publishing TFS
  • Codeabdeckung
  • Verbindung zum Remote-Agenten.

Wenn Sie die Development Edition installiert haben, dann erhalten Sie veröffentlichen und Testabdeckung, nicht aber die Remote-Agent-Funktionen (das heißt für Load lesting tun).

Die Test Edition und die Visual Studio Team Suite haben alles.

Wenn Sie ein Beispiel für eine benutzerdefinierte MSBuild-Task sehen möchten, die MSTest.exe zum Veröffentlichen von Komponententestdaten von einem Buildserver verwendet (in diesem Beispiel JUnit-Testdaten), dann werfen Sie einen Blick auf die von mir geschriebene Teamprise Build Extensions . Der Quellcode hierfür steht unter der Open Source-Lizenz MS-PL zur Verfügung.

+0

Danke Martin, das ist genau das, was ich gesucht habe! (Übrigens, du und die Jungs machen einen fantastischen Job auf Radio TFS - ich hoffe, dass ein soliliquoy auf diesem nicht irgendwann über meinen Kopf ging!). Der Code sieht sauber und ordentlich aus und ich würde es verwenden, wenn ich nicht alles schon mit Pressengarne arbeiten würde - alles was es jetzt braucht ist ein NUnit to trx style sheet und es kann die Referenz Weg zu laufen und veröffentlichen NUnit und xUnit.net Sachen a la http://stackoverflow.com/questions/1063779/msbuild-task-for-combining-nunit-or-msstest -xml-results –

+0

In Bezug auf NUnit zu trx - hast du das gesehen? http://nunit4teambuild.codeplex.com/ Sollte hoffentlich y enthält die XSLT, die Sie benötigen. –

+0

Wird sich die Lizenzprüfung von mstest.exe für VS 2010 Pro mit MSDN ändern? Wir befinden uns derzeit in einer VS 2008 Pro & TFS 2008-Umgebung (kein Team-System) und möchten Tests mit Team Build ausführen. Ich möchte jetzt nicht zu viel Zeit verschwenden, wenn es 2010 unterstützt wird. Danke für die Info Martin - auch ein Teamprise-Kunde und liebe es! – Aaron

2

Ich habe on the MSDN forums gelesen, dass die /publish Funktionalität von MSTest den Kauf entweder VS Team Developer oder VS Team Test Edition erfordert. Alle kleineren Editionen wie Standard/Professional oder Team Explorer haben es nicht.

Ich würde gerne noch mehr Beweise sehen, da es ziemlich unvernünftig erscheint, dass man mit "Standard" VS2008 Komponententests schreiben und ausführen kann, aber man kann sie nicht beliebig auf der eigenen Maschine ausführen :-(

die Frage zu beantworten:

Sollte nur erforderlich Team Explorer MSTest.exe/veröffentlichen, oder ist es VSTT und Team Explorer benötigen?

Es scheint, dass es erfordert VSTT (was ich Visual Studio Team-Tester Ausgabe übernehmen bedeutet)

+0

Danke - der Beitrag, den du zitierst, scheint sich sehr zu überlappen. Wie auch immer, IMO, der/publish Arm von mstest.exe ist ein komplett anderer Teil des allgemeinen Testlaufproblems, das du erwähnst - das beinhaltet, sich darüber im Klaren zu sein, wie man mit einem TFS kommuniziert, während der laufende Test natürlich nur grundlegende Neuimplementierung durchführt von dem, was Testläufer seit mehr als 10 Jahren machen (auch wenn ich dies nicht explizit erwähnte, ist es einfach genug, die Tests zu starten, indem ich nur ein paar Bins kopiere, wie in anderen Fragen, die ich gestellt und beantwortet habe). Danke für den jeweiligen Weg. –

+0

Laufende Tests funktionieren einwandfrei, aber soweit dieser Thread anzeigt (und soweit meine eigenen Tests dies bestätigen), existiert der/publish-Zweig von MSTEST überhaupt nicht, es sei denn, Sie haben VSTS Developer oder Tester Edition installiert. –

+0

Hallo, habe ich den Beitrag erweitert (jetzt einschließlich der /? Hilfetext und einen defekten Link reparieren). Die Stoßrichtung meiner Frage lautet: "Es sagt, dass der _Team Explorer_ in der Hilfe - in welchem ​​Ausmaß lügt, ist es wirklich der schlimmste Fall - ist es wirklich TT oder TD?". Zumindest in 2010 werden wir einen Test haben Agent Installer ... Ich verstehe, dass die Idee des Publizierens es mit den Team X Editionen verbindet, aber in welchem ​​Umfang _und why_? –

2

Nun, die Nachricht, die Sie erhalten, wenn mstest.exe /? läuft, ist eigentlich sehr irreführend. Es teilt Ihnen mit, dass Team Explorer Ihre Testergebnisse veröffentlichen muss, aber die Installation von Team Explorer ändert leider nichts. Wie Martin erklärte, führt MsTest eine Lizenzprüfung durch, um sicherzustellen, dass die entsprechende Edition von Visual Studio installiert ist und somit "/ publish" und andere Switches nicht verfügbar sind.

Und durch 'geeignete' Edition MsTest bedeutet Premium oder Ultimate, nicht sicher über andere Editionen.

Microsoft sagt, Sie sollten Visual Studio auf Ihrem Server installieren, um ein voll funktionsfähiges CI zu haben und dies ist die einzige offizielle und unterstützte Lösung, aber wenn Sie dieses Konzept wirklich nicht mögen (und ich nicht), können Sie Machen Sie MsTest zu der Annahme, dass Visual Studio auf Ihrem Server installiert ist.

Es reicht aus, einige Registrierungsschlüssel von Ihrem Entwicklungscomputer auf Ihren CI-Server zu exportieren und voila! - MsTest veröffentlicht Ihre Testergebnisse in TFS. Die Registrierungsschlüssel sind bei HKLM\SOFTWARE\Microsoft\VisualStudio\12.0\Licenses oder bei HKLM\Software\Wow6432Node\Microsoft\VisualStudio\12.0\Licenses je nach System.

können Sie weitere Informationen zu dieser Lösung finden Sie hier: http://blog.foxxtrot.net/2010/02/hacking-mstest-out-of-visual-studio.html

+0

Danke für das Teilen des Wissens. Ich bete, dass ich es nicht für den Rest meines Lebens brauche. –

Verwandte Themen