skip to main content

kiesler.at

Spaziergang durch einen Einheitenberechner
updated by rck, 2004-10-10

Der Ernstfall ist eingetreten. EPROG. Drei Beispiele, eines schlimmer als das andere. Zu allem Überfluss sind die mitgelieferten "Unterstützungsprogramme" mehr ein Klotz am Bein als sonst was.

Wie geht's weiter, wenn kein Stein und kein Seil verfügbar ist, das einen den Weg in die Donau begleiten könnte?

1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13

Testklasse

Das geniale an dem modularen Aufbau des Programmes ist nicht nur die Verständlichkeit. Es ist außerdem hervorragend durch eine Testklasse testbar.

Eine einfache Testklasse könnte folgendermaßen aussehen:

1 import eprog.*;
2 
3 class TestEinhexpr {
4 
5         public static void berechne(String s) {
6                 try {
7                         EprogIO.print(s + " ==> ");
8                         EprogIO.println(Einhexpr.berechne(s));
9                 } catch(Exception e) {
10                         EprogIO.println("Exception : "+e);
11                         EprogIO.println();
12                         e.printStackTrace();
13                         EprogIO.println();
14                 }
15         }
16 
17 
18         public static void main(String[] args) {
19 
20                 String[] td={
21                         "40cm", "13dm2", "47qm", "16d",
22                         "63.3", "12.5m3" };
23 
24                 int tds=6;
25 
26                 String[] funks={
27                         "23cm+4m*2dm2",
28                         "5m3/0m3",
29                         "5m3/0m",
30                         "(5m*3dm)+5m2",
31                         "1m+2m",
32                         "40m+20m2"
33                 };
34 
35                 int funkss=6;
36 
37                 EprogIO.println("checke berechne()");
38                 EprogIO.println("----------------");
39 
40                 for(int i=0; i<funkss; i++)
41                         berechne(funks[i]);
42 
43         }
44 }

Beschreibung TestEinhexpr

5-15 hier schaffen wir uns die Testumgebung. Gibt's eine Exception, wird nicht nur ERROR ausgegeben. Nein, dank Vorarbeit in TestEinhexpr bekommen wir eine recht detailierte Meldung und können etwaige Probleme schnell korrigieren.

20-33 die eigentlichen Testdaten.

40-41 die Testfälle werden der Reihe nach abgearbeitet.

1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13



RSSComments - Make a comment
The comments are owned by the poster. We are not responsible for its content.
RSSAll Articles
2008, 2007, 2006, 2005, 2004