NetBeans - Jak spustit JUnit test?
Dobrý den,
Vytvořil jsem nový java projekt s jednou třídou
public class Example {
public static void main(String[] args) {
var color = new Example();
System.out.println(color.isTextBlack("black"));
System.out.println(color.isTextBlack("white"));
}
public boolean isTextBlack(String color) {
return color.equals("black");
}
}
Následně jsem přes žárovku na řádku třídy vytvořil JUnit Test
Třída se vygenerovala s tímto kódem.
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.*;
public class ExampleTest {
public ExampleTest() {
}
@BeforeAll
public static void setUpClass() {
}
@AfterAll
public static void tearDownClass() {
}
@BeforeEach
public void setUp() {
}
@AfterEach
public void tearDown() {
}
/**
* Test of main method, of class Example.
*/
@Test
public void testMain() {
System.out.println("main");
String[] args = null;
Example.main(args);
// TODO review the generated test code and remove the default call to fail.
fail("The test case is a prototype.");
}
/**
* Test of isTextBlack method, of class Example.
*/
@Test
public void testIsTextBlack() {
System.out.println("isTextBlack");
String color = "";
Example instance = new Example();
boolean expResult = false;
boolean result = instance.isTextBlack(color);
assertEquals(expResult, result);
// TODO review the generated test code and remove the default call to fail.
fail("The test case is a prototype.");
}
}
Ale, když pustím test (přes pravé tlačítko na projekt nebo pomocí ALT + F6), tak to zobrazí pouze No tests executed.
Jak se s tím, prosím Vás, pracuje?
Děkuji
Zkusil jsem a funguje normálně. Nemáš tam i nějakou chybovou hlášku?
Tak teď jsem úplně zmatený. Když jsem před třídu napsal @RunWith(JUnit4.class) a importoval požadované knihovny, už to šlo. Avšak, když jsem to smazal, tak to jde taky. Nevíte, co to má být, prosím?
JUnit mas jako dependency? Zkus pridat nad testovaci tridu anotaci: @RunWith(JUnit4.class)
Díky, už to funguje. Ale, proč? Když soubor smažu a vytvořím JUnit 4 test, tak to funguje okamžitě. Proč teda u verze 5 není možné kód okamžitě spustit?