Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
Veröffentlicht von:Eva Hofmann Geändert vor über 8 Jahren
1
Tests mit Junit und DBUnit Warum Tests? Verhindert weitreichende Auswirkung bei großen Projekten Änderung kosten viel Geld und Zeit Führt oft zu einem besseren Design Weniger Bugs Test-Driven-Development – Wichtiger Bestandteil von Extreme Programming (XP) – TDD gibt vor: bevor Funktionen hinzu/ergänzt werden, müssen zuerst Tests implementiert werden Benny Brand | Paul Fuchs | Gui Rong Ko| Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld 1
2
Testcases Junit Initialisierung Benny Brand | Paul Fuchs | Gui Rong Ko| Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld 2 private static Mitarbeiter TestMitarbeiter; private static ArrayList Testdaten; private static TestTableModel TestModel; private static TestJTable TestTable; @BeforeClass public static void setUpClass() { TestMitarbeiter = new Mitarbeiter(1, "Herr", "Mustermann", "Hans", "Hans.Mustermann@test.de", "0111/123456", 2,"testphase"); Testdaten = new ArrayList (); TestModel = TestTableModel.getInstance(); TestTable = new TestJTable(); } @Before public void setUp() { Testdaten.add(TestMitarbeiter); TestModel.fülleModelmitDaten(Testdaten); TestTable.TestTable().setModel(TestModel); }
3
Testcases Junit @Test public void TestMitarbeiter() { Assert.assertTrue(TestMitarbeiter.getNachname().equals("Mustermann")); } @Test public void TestMitarbeiter2() { TestMitarbeiter.setNachname("Musterfrau"); if (TestMitarbeiter.getNachname().equals("Mustermann")) { Assert.assertTrue(true); } else { Assert.fail("Test Fehlgeschlagen."); }} @Test public void MitarbeiterModelTest() { if (Testdaten.get(0).getVorname().equals("Hans")) { Assert.assertTrue(true); } else { Assert.fail("Test Fehlgeschlagen."); }} Benny Brand | Paul Fuchs | Gui Rong Ko| Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld 3
4
Testcases 1# mit DBUnit @Before public void setUp() throws SQLException, FileNotFoundException, IOException, DataSetException { // Dataset initialisieren IDataSet dataSet = new FlatXmlDataSet(new FileInputStream("src/com/hsulm/wf5/fleetmanagement/tests/dataset.xml")); try { DatabaseOperation.CLEAN_INSERT.execute(getConnection(), dataSet); } catch (DatabaseUnitException e) { System.out.print(e); } Benny Brand | Paul Fuchs | Gui Rong Ko| Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld 4 Dataset.xml
5
Testcases 1# mit DBUnit @Test public void test1() throws Exception { //Datensatz und spezielle Tabelle werden aus Datenbank geladen IDataSet databaseDataSet = getConnection().createDataSet(); getConnection().getConnection().prepareStatement("UPDATE Mitarbeiter SET Vorname='Test', Nachname='Test', Email='test@kontakt.de', Passwort='test' Where MitarbeiterID='7'").execute(); ITable actualTable = databaseDataSet.getTable("Mitarbeiter"); IDataSet expectedDataSet = new FlatXmlDataSet(new File("src/com/hsulm/wf5/fleetmanagement/tests/ErwarteteMitarbeitertabelle.xml")); ITable expectedTable = expectedDataSet.getTable("Mitarbeiter"); Assertion.assertEquals(expectedTable, actualTable); } Benny Brand | Paul Fuchs | Gui Rong Ko| Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld 5
6
Testcases 1# mit DBUnit ErwarteteMitarbeiterTabelle.xml Benny Brand | Paul Fuchs | Gui Rong Ko| Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld 6 MitarbeiterTabelle in Datenbank
7
Testcase 2# mit DBUnit //Absichtliches Fehlschlagen der Tests, um FileOutstream zu testen if (actualTable.equals(expectedTable)) { Assert.assertTrue(true); } else { FlatXmlDataSet.write(databaseDataSet, new FileOutputStream("src/com/hsulm/wf5/fleetmanagement/tests/Mitar beitertest2fail.xml")); Assert.fail("Test Fehlgeschlagen, siehe Mitarbeitertest2fail"); } Benny Brand | Paul Fuchs | Gui Rong Ko| Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld 7 Screenshot aus Eclipse
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.