私はユニットテストの慣行に慣れていません。以下のコードで問題があります。メソッドTestEnums
最初のAssert失敗すると、テストエクスプローラにエラーメッセージが1つだけ表示されます。ユニットテスト、コレクション内のすべてのオブジェクトのAssert結果を表示するように自動化
私はテストエクスプローラにアサート失敗すべて、つまり、EnumHasRepeatedValues
方法のアサートに失敗したすべてのテストのEnumを表示するには、このコードを適応したいと思います。
Imports Microsoft.VisualStudio.TestTools.UnitTesting
Imports System.Reflection
<TestClass()>
Public Class Application
<TestMethod()>
Public Sub TestEnums()
Dim ass As Assembly = Assembly.Load("Elektro.Application")
Dim types As IEnumerable(Of Type) =
From t As Type In ass.GetTypes() Where t.IsEnum
For Each t As Type In types
EnumHasRepeatedValues(t)
Next
End Sub
Public Sub EnumHasRepeatedValues(ByVal t As Type)
Assert.AreEqual([Enum].GetValues(t).Length,
[Enum].GetNames(t).Length,
String.Format("Enum {0}.{1} has defined repeated values.",
t.Namespace, t.Name))
End Sub
End Class
データソースの使用については、[this](https://msdn.microsoft.com/en-us/library/ms182527.aspx)をお読みになりましたか? –
@Pro Grammerはコメントをいただきありがとうございます。しかし、この種のソリューションが私を助けてくれるかどうかは分かりませんが、MSDNの例のようなデータベースを生成する必要がありますか? – ElektroStudios
私が見たところでは、[CSV、XMLまたはローカルデータソース](http://stackoverflow.com/a/14139050/6144259)をテストライブラリに埋め込むことができます。それは完全なデータベースである必要はありません。私はまた助けのかもしれない[this](http://stackoverflow.com/a/13710788/6144259)を見つけた –