我有像下面這樣的單元測試實例方法的內部類。如何運行TestClass的所有單元測試及其內部TestClass測試?
我的問題是,當我去FooClassTests
並使用VS在上下文中運行所有測試時,它跳過內部類的測試。
如果你正在使用這種結構,你知道如何將所有測試與內部類中的測試一起運行嗎?
[TestClass]
public class FooClassTests
{
[TestMethod]
public void CanGuardConstructorParameters()
{
// Asserts here
}
[TestClass]
public class DoWorkTests //Tests method DoWork
{
[TestMethod]
public void CanDoTheWork()
{
// Asserts here
}
}
}
你爲什麼使用內部測試類? –
因爲 1)我不想在我的所有單元測試方法中重複測試的名稱, 2)它幫助我將每個方法的所有測試分組在一個特定的內部類中, 3)更容易重命名重命名一個類所有的單元測試方法,以防我重命名測試方法。 – pencilCake
@Erno這樣做管理一大套測試變得更容易。當您將測試用作文檔時,尤其如此,通過爲每個方法指定一個類,您可以指定所有無效的斷言以及有效的斷言。如果您返回自定義異常,您可以提供一組測試,以顯示如何處理這些問題,而不會混淆主要測試類。 – deanvmc