[英]java.lang.Exception: No runnable methods exception in running JUnits
[英]java.lang.Exception: No runnable methods
我正在為我的項目做一些JUnit 4測試。 我已經閱讀了stackOverflow解決方案,但是它們都沒有幫助。 在運行單個JUnit測試期間,出現錯誤
java.lang.Exception: No runnable methods
at org.junit.runners.BlockJUnit4ClassRunner.validateInstanceMethods(BlockJUnit4ClassRunner.java:191)
at org.junit.runners.BlockJUnit4ClassRunner.collectInitializationErrors(BlockJUnit4ClassRunner.java:128)
at org.junit.runners.ParentRunner.validate(ParentRunner.java:416)
at org.junit.runners.ParentRunner.<init>(ParentRunner.java:84)
at org.junit.runners.BlockJUnit4ClassRunner.<init>(BlockJUnit4ClassRunner.java:65)
at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.<init>(SpringJUnit4ClassRunner.java:111)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:422)
我試圖使緩存無效,在我的庫根目錄中有junit-4.12.jar和hamcrest-core-1.3.jar。 仍然有錯誤。 這是我的代碼
import org.junit.Before;
import org.junit.Test;
import static org.junit.Assert.*;
/**
* Created by Asus on 2018-01-06.
*/
public class ZamowieniaRepositoryTest {
ZamowieniaRepository zamRepo;
@Before
public void setUp() throws Exception {
zamRepo = new ZamowieniaRepository();
Zamowienie zamowienie = new Zamowienie();
zamRepo.zamowienie = zamowienie;
}
@Test
public void utworzPozycjeZamowienia() throws Exception {
Towar towar = new Towar(2,"Wkladki",870);
PozycjaZamowienia pozycja = new PozycjaZamowienia(0,towar);
assertEquals(0,zamRepo.utworzPozycjeZamowienia(towar).getId());
assertEquals(pozycja.getTowar(),zamRepo.utworzPozycjeZamowienia(towar).getTowar());
}
@Test
public void sprawdzDostepnoscTowaru() throws Exception {
zamRepo.zamowienie.dodajPozycje(new PozycjaZamowienia(0,new Towar(0,"Srubki",30),25,5));
zamRepo.zamowienie.dodajPozycje(new PozycjaZamowienia(1,new Towar(0,"Wkrety",85),47,2));
assertEquals(true,zamRepo.sprawdzDostepnoscTowaru(0,25));
assertEquals(false,zamRepo.sprawdzDostepnoscTowaru(0,38));
}
@Test
public void usunPozycje() throws Exception {
zamRepo.zamowienie.dodajPozycje(new PozycjaZamowienia(0,new Towar(0,"Srubki",30),25,5));
zamRepo.zamowienie.dodajPozycje(new PozycjaZamowienia(1,new Towar(0,"Wkrety",85),47,2));
zamRepo.zamowienie.usunPozycje(1);
assertEquals(1,zamRepo.zamowienie.getSize());
}
}
對不起,不是英文代碼。 謝謝你的幫助! ;)
我建議您仔細檢查您的進口。 為了進行調試,請使用諸如testMyFlow()
類的模式來命名您的方法。 出於某種原因,您可能導入了JUnit或將其作為運行器使用。
您還可以嘗試通過以下方式為課程添加注釋:
@RunWith(JUnit4.class)
這將始終調用JUnit的4個默認運行程序。 更多信息在這里 。
此外,如果要使用Mockito
,則需要使用測試運行器注釋該類:
@RunWith(MockitoJUnitRunner.class)
public class ZamowieniaRepositoryTest {
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.