F: Ist es möglich, xUnit-Tests Seite an Seite mit MSTest in VS 2013 auszuführen? Wenn ja, was mache ich falsch?Visual Studio 2013 - nicht mehr in der Lage, xunit-Tests Seite an Seite mit MSTest auszuführen
Hintergrund:
ich eine .NET-Lösung von VS 2012-Format VS 2013
Ich war nicht in der Lage zu bekommen die xUnit Tests zu arbeiten migriert haben. Nach eingehender Fehlersuche (Experimentieren mit Projekttypen, MS Tools-Versionen, Erstellen neuer Projekte mit nur xUnit und Experimentieren mit xUnit-Versionen und Abhängigkeiten) konnte ich das Problem auf MSTests im selben Projekt wie xUnit-Tests eingrenzen. Dies funktionierte vorher in VS 2012.
Sobald ich nur eine Testmethode mit dem Attribut [TestMethod]
markiert, wird keiner der xUnit-Tests ausgeführt. Sie können entweder in den Kontrollfeldern VS Test Explorer oder ReSharper Unit Testsitzungen angezeigt werden, aber sie werden entweder mit einem [!] Unter Not Run Tests (für Test Explorer) oder [?] (Für Unit Test Sessions) angezeigt. Wenn eine Klasse mit dem Attribut [TestClass]
, aber nicht eine mit [TestMethod]
markierte Methode ausgeführt wird, können weiterhin xUnit-Tests ausgeführt werden.
Es kann sich herausstellen, dass dies ein Fehler in einer xUnit-Komponente ist, aber ich würde gerne sehen, ob irgendjemand anders Erfahrung im Gegenteil hatte.
Hinweis: Fast alle Komponententests basieren auf xUnit, der MSTest ist nur als Proof-of-Concept vorhanden, um sicherzustellen, dass er für den Fall unterstützt wird, dass MSTests später verwendet werden sollen.
-Code Auszüge:
MSTest:
using Microsoft.VisualStudio.TestTools.UnitTesting;
namespace YYY.XXX.Test.Unit
{
[TestClass]
public class MSTests
{
[TestMethod]
public void Test_Blah()
{
Assert.AreEqual(2, 2);
}
}
}
xUnit:
using Xunit;
namespace YYY.XXX.Test.Unit
{
public class FactTests
{
[Fact]
public void Test_Blah()
{
Assert.Equal(2, 2);
}
}
}
SW-Versionen:
- MS Visual Studio Ultimate 2013 12.0.210051 REL
- JetBrains ReSharper 8.1
- xUnit.net Läufer für Visual Studion 2012 und 2013 v0.99.2
- ReSharper Erweiterung:
- xUnit.net Testunterstützung v1 .3.0
- xUnit Projektpakete:
- xunit.1.9.2
- xunit.extensions.1.9.2
Falls es anderen hilft, dies löste es für mich (schlechte zwischengespeicherte xunit-Bibliotheken): http://stackoverflow.com/a/39353876/284598 – GaTechThomas