無法在我的測試在Eclipse擴展的TestCase(Junit的)執行與@Test註解測試無法在我的測試在Eclipse擴展的TestCase(Junit的)執行與@Test註解測試
它正常工作時,我我沒有從TestCase(jUnit)擴展,但我現有的代碼從TestCase擴展,因此我想繼續保持原樣。
無法在我的測試在Eclipse擴展的TestCase(Junit的)執行與@Test註解測試無法在我的測試在Eclipse擴展的TestCase(Junit的)執行與@Test註解測試
它正常工作時,我我沒有從TestCase(jUnit)擴展,但我現有的代碼從TestCase擴展,因此我想繼續保持原樣。
檢查您是否使用JUnit3亞軍。
打開'運行配置'爲您測試,並在Test
選項卡上確保您有JUnit 4
選擇爲您的測試運行。恕我直言,如果您正在爲JUnit4加裝測試套件,只需放棄對JUnit3的支持即可。
順便說一句,如果切換到「JUnit 4中的賽會仍執行舊JUnit3類(你不必@Test註釋添加)。
測試擴展junit.framework.TestCase
被認爲是由JUnit4亞軍JUnit3式測試。有關更多詳細信息,請參見the source code的AllDefaultPossibilitiesBuilder
。
您可以強制JUnit4將類型擴展爲TestCase
作爲JUnit4樣式測試,通過使用@RunWith(JUnit4.class)
註解類,但您幾乎肯定不想這樣做。如果你這樣做,你的測試類仍然繼承junit.framework.TestCase
的所有方法,但這些方法不會被調用。換句話說,你會繼承很多的東西。
即使在測試中,繼承仍然是一種糟糕的共享代碼的方式。如果可以將共享代碼放在另一個類中,並直接從測試類中委託,請執行此操作。
如果您使用JUnit 4.7或更高版本,Rules提供另一種共享代碼的方式。規則可能受測試行爲影響或可能影響測試行爲。
在極少數情況下,多個JUnit4測試類所需的共享代碼可以在Runner中共享,但由於測試類只能指定一個跑步者,因此跑步者與基類有許多相同的缺點。
測試延伸junit.framework
。 TestCase被JUnit4跑步者認爲是JUnit3式的測試。這是對的。
要進行@Test註釋,您需要不是擴展junit.framework
。 TestCase和@Test註釋工作正常