package se.sjv.samladkundbild.infrastructure;
import static org.testng.Assert.assertNull;
import org.testng.annotations.Test;
import se.sjv.samladkundbild.domain.entity.Kund;
public class KundQueryImplTest {
@Test
public void testCreate() {
final KundQueryImpl sut = new KundQueryImpl();
assertNotNull(sut);
}
}
Livslängden för metoden är kort. När man skapat nästa metod så har man troligen gjort det genom att byta namn på create eller raderat den.
Dessutom så vill du ha med dig en massa junk i form av beroende till tex testNG och Mockito. Dessa importer vill man absolut inte reppetera för varje testklass man skapar. Momentet bör automatiseras så mycket det går.
Eclipse Templates
Templates to the rescue! Nås via:/ Windo / preferences / Java / Editor / Templates
Här är mitt Eclipse templat för att skapa koden.
${staticImport:importStatic('org.testng.Assert.*')}
${imp:import(org.testng.annotations.BeforeMethod,org.testng.annotations.Test,org.mockito.Mockito)}
@Test
public void testCreate() {
${type} sut = new ${name};
assertNotNull(sut);
}
Jag har bundit templatet till "create" och skriver altså följande:
create, Ctrl + space + enter
Väl inne i test stim så skapar man testmetoder en serie testmetoder. För detta använder jag följande template:
@Test
public void test${name}() {
${staticImport:importStatic('org.testng.Assert.*')}
${imp:import(org.testng.annotations.BeforeMethod,org.testng.annotations.Test,org.mockito.Mockito)}
${cursor}
}
Jag har bundit templatet till "test" och skriver altså följande:
create, Ctrl + space + enter
som jag nämnde ovan så kan man radera create metoden efter att ha skapat en eller flera testmetoder.
Om du vill ladda ner templaten här:
https://www.dropbox.com/home/java/eclipse/public
Glöm inte att tweaka Eclipse så den gör precis som du vill:
http://sweethashtag.blogspot.se/2012/08/saker-jag-gor-for-varje-nytt-eclipse.html
Happy coding.
Bra tips! Använder inga templates för tester, men det ska jag börja med. Skönt att slippa massa importer för mockito, hamcrest, junit.assert.* etc.
SvaraRaderaBjussar på denna template som importerar slf4j.
${:import(org.slf4j.Logger,org.slf4j.LoggerFactory)}
private static final Logger _logger = LoggerFactory.getLogger(${enclosing_type}.class);
/Nils