In vielen Tutorials für UnitTesting war die Vorgehensweise zum Markieren einer Testmethode anders. Ich sah diese Optionen:Warum setzen Sie das TestMethod-Attribut in UnitTest in Klammern?
[TestMethod]
[TestMethod()]
Was ist der Unterschied?
In vielen Tutorials für UnitTesting war die Vorgehensweise zum Markieren einer Testmethode anders. Ich sah diese Optionen:Warum setzen Sie das TestMethod-Attribut in UnitTest in Klammern?
[TestMethod]
[TestMethod()]
Was ist der Unterschied?
Mit und ohne Klammern seine genau das gleiche:
[TestMethod]
[TestMethod()]
Die leeren Klammern rufen Sie einfach den Standard-Konstruktor dieses Attributs, die keine Parameter hat. So auch [TestMethod]
. Beide rufen den Standardkonstruktor auf.
wäre diese anders:
[TestMethod(SomeParameter)]
Und [Test]
ist ein Attribut, das NUnit Bibliothek herkommt und unterscheidet sich von dem Attribut .Net [TestMethod]
ist.
Ich habe einige [TestMethod] mit Parameter und verwendet es in der TestMethod wie: actual = target.TextToDouble (textBoxText); Wo und wie sollte ich den SomeParameter verwenden? Kannst du ein Beispiel geben? – Johnny
Überprüfen Sie die verfügbaren Parameter und Eigenschaften http://msdn.microsoft.com/en-us/library/microsoft.visualstudio.testtools.unittesting.testmethodattribute.aspx. Sie könnten zum Beispiel '[TestMethod (TypeId =" test ")]' 'verwenden – RononDex
Die leeren Klammern sind redundant, die beiden Zeilen sind äquivalent. Tools wie ReSharper bieten Ihnen die Möglichkeit, diese Redundanz aus Ihrem Code zu entfernen.
[TestMethod]
[TestMethod()]
Beide sind gleich, aber wenn Visual Studio Autotestmethode erzeugen kommt es mit [TestMethod()]
'[Test]' Attribut gehört zu 'NUnit' Api. – Ravi