Kurs Diskussion:Software-Test/Test-Techniken

Seiteninhalte werden in anderen Sprachen nicht unterstützt.
Aus Wikiversity

Inter-lingua[Bearbeiten]

  • Hier kannst du sehen, was die Teilnehmer des englischen Kurses zu diesem Kapitel zu sagen haben.

Unit-Tests[Bearbeiten]

Hier steht was in den Wikibooks dazu. --Erkan Yilmaz 22:43, 2. Nov. 2006 (CET)[Beantworten]


Verknüpfung mit Programmier-Kursen[Bearbeiten]

Unterstütze Exxus Vorschlag, hier z.B. anzufangen: Kurs:Algorithmen_und_Datenstrukturen/Kapitel_2/MergeSort. Mögliche Anwendung:

  • mit Unit Tests verknüpfen (Frameworks für die diversen Sprachen hier): so zB. zur Überprüfung des Verhaltens bei
    • Aufruf mit fehlerhaften Argumenten
    • Aufruf mit leeren Arrays
    • Aufruf mit bereits sortierten Arrays
    • Aufruf mit bereits invers sortierten Arrays
    • Aufruf mit mehrfach gleichen Array-Elementen
    • Aufruf mit iterierenden Array-Elementen
    • Aufruf mit zufallsverteilten Array-Elementen
      • Gleichverteilung
      • Normalverteilung
      • Binomialverteilung
    • Aufruf mit sehr großen Arrays
    • Aufruf zur Analyse des Zeitverbrauchs
    • Aufruf zur Analyse des Speicherverbrauchs
  • Oder auch mit anderen Test-Tools, die eine Analyse über den Code geben oder auch die verschiedenen Whitebox-Techniken "durchgehen",
  • aber auch Techniken "fast ohne Tools" wie z.B. Reviews.

weitere Ideen? --Erkan Yilmaz 05:50, 10. Nov. 2006 (CET)[Beantworten]

Update hier. Ausser Exxu scheint keiner dran Interesse zu zeigen, was schade ist. --Erkan Yilmaz 16:42, 27. Nov. 2006 (CET)[Beantworten]

Kontrollflussgraph[Bearbeiten]

Version1[Bearbeiten]

Hallo zusammen, habe mal ein Tutorial erstellt.
Zweck: der Test-Anfänger soll mal zuerst sehen, wie so ein Kontrollflussgraph aussieht, bevor man dran geht, ihm das eigentlich zu erklären.
Ist noch unfertig, da ich gerne Feedback hätte, ob das Video (jetzt im exe-Format, ist aber auch als Shockwave möglich) so ok ist. Oder ob man an der GUI und dergleichen noch was ändern sollte. So, hier downloadbar. --Erkan Yilmaz 14:12, 12. Nov. 2006 (CET)[Beantworten]

Hm, als "exe"-Datei schließt Du schon mal die Linux- und Mac-User aus. Und vorsichtige Windowsnutzer werden sich auch überlegen, ob sie mal eben eine "exe"-Datei, die ja von jedem (noch so verseuchten PC) hochgeladen worden sein kann, ausführen. Ordentlich administrierte Firewalls lassen ein Zip-Archiv mit Exe-Dateien als Inhalt gar nicht erst durch. --Exxu 14:19, 12. Nov. 2006 (CET)[Beantworten]
P.S.: Gehts nicht auch als gif-, avi-, mov- oder mpeg-Datei? --Exxu 14:29, 12. Nov. 2006 (CET)[Beantworten]
hier mal die Option mit Shockwave. Am liebsten wäre mir ja eine avi-Datei oder so, da das wirklich jeder hat (nicht so bei shockwave beispielsweise :-) ). Und danke für die schnelle Reaktion. AVI würde auch gehen, dann aber mit nem andren Tool, das nicht so komfortabel ist. Das obige ist mit diesem Wink erstellt. Ganz easy. --Erkan Yilmaz 14:34, 12. Nov. 2006 (CET)[Beantworten]
es geht auch pdf bzw. HTML mit Wink. --Erkan Yilmaz 14:34, 12. Nov. 2006 (CET)[Beantworten]

ah noch was, bei der exe-Datei muss man STRG+F (für Vollbild) drücken, damit man den Text besser lesen kann. --Erkan Yilmaz 14:40, 12. Nov. 2006 (CET)[Beantworten]

hoho. ich kann ja die exe-Datei mit dem anderen Programm AviScreen ja abfilmen :-) Falls ich kein besseres Tool finde, dann haben wir eine avi-Datei :-) Ist zwar umständlich, dafür kostenlos. --Erkan Yilmaz 14:52, 12. Nov. 2006 (CET)[Beantworten]

Hab mir die Shockwave-Variante mal angesehen. Sieht gut aus. Das Einstiegsbild bis die weiter-Buttons erscheinen, scheint mir relativ lang. Eventuell wäre ja auch ein Hinweis zu Beginn nicht schlecht, wo man sich jGRASP herholen kann. Eine PDF-Datei mit entsprechenden Darstellungen halte ich für eine gute Idee. Avi-Datei ist auf jedenfall kompatibler als Shockwave. --Exxu 14:54, 12. Nov. 2006 (CET)[Beantworten]
das mit jGRASP wird natürlich gemacht, schliesslich wird hier alles wegen dem Copyright beachtet werden.
AVI: anscheinend kann man swf zu avi konvertieren - also wäre das Problem auch erledigt: [1] - bin mal gespannt wie das klappt, probiere es gleich mal aus
mit dem Einstiegsbild lasse ich mir noch was einfallen.
Gut, dann ist das für mich schon mal ein erstes Feedback.
Bis denne, --Erkan Yilmaz 15:04, 12. Nov. 2006 (CET)[Beantworten]

Version2[Bearbeiten]

Sodele, hier ist Version2 (bin noch nicht fertig, aber bevor ich weitermache, wäre wieder Feedback gut) in swf. Bitte wenn es geht, maximieren. Leider konnte ich keinen gescheiten avi-Konverter finden :-( Die Frage ist auch, ob wir es bei swf belassen, denn da kann man Sprünge innerhalb des swf machen (so dass Kurs-Teilnehmer selbst bestimmen können, was sie sehen wollen). Also, Ziel bei diesem Tutorial ist es, den Teilnehmern ein Video zu zeigen, wie denn so ein Kontrollflussgraph aussieht, bevor er erstellt wird. Natürlich mit Werkzeug, da man sonst ja mit der Zeit "verrückt" werden würde (wenn man es nicht schon ist :-) ) --Erkan Yilmaz 18:35, 12. Nov. 2006 (CET)[Beantworten]

  • Die Verzweigungsmöglichkeiten am Anfang sind einerseits gut, wenn man Nachschlagen will, lenken aber andererseits vom eigentlichen Tutorial ab. Ich würde die Verlinkung zu jGRASP eher im Wikiversity-Text aufschreiben, als sie mit ins Video aufzunehmen. Auch der Link zur Wikiversity scheint mir (eigentlich) unnötig - jedenfalls solange das Videotutorial im Zusammenhang mit diesem Kurs steht. Falls allerdings jemand das Tutorial einzeln verwendet - ist so ein Link wiederum gut. --Exxu 19:03, 12. Nov. 2006 (CET)[Beantworten]
jGRASP: ok
Link Wikiversity: würde ich zur Sicherheit drin lassen, man weiss j anicht, wo die swf mal landet :-) --Erkan Yilmaz 19:24, 12. Nov. 2006 (CET)[Beantworten]
  • Den Text: "Wir erstellen nun den Kontrollflussgraphen zu diesem Quelltext" fine ich noch OK. Aber die nachfolgende Aufforderung: "Öffne dazu den Menüpunkt: VIEW > Generate CSD" finde ich irreführend. Denn ich kann dieser Auffroderung gar nicht folgen. Tatsächlich soll ich nämlich den grünen Button mit dem schwarzen Pfeil klicken, stimmts? --Exxu 19:03, 12. Nov. 2006 (CET)[Beantworten]
du hast vollkommen recht. Asche auf mein Haupt. --Erkan Yilmaz 19:24, 12. Nov. 2006 (CET)[Beantworten]
  • Die nächste Auswahlmöglichkeit, verbunden mit der Aufforderung "Klicke bitte hier" finde ich prinzipiell OK. Allerdings wird einem Zuschauer nicht erklärt, was es bedeutet, wenn er der Meinung ist, nur den Kontrollflussgraphen sehen zu wollen. Vielleicht wäre hier ein Hinweis im Sinne: "Fortgeschrittene können sich auch nur den Kontrollflussgraphen anzeigen lassen. Dafür hier klicken" angebrachter? --Exxu 19:03, 12. Nov. 2006 (CET)[Beantworten]
richtig - werde ich so übernehmen. --Erkan Yilmaz 19:24, 12. Nov. 2006 (CET)[Beantworten]
Danke (rot-werd). --Erkan Yilmaz 19:24, 12. Nov. 2006 (CET)[Beantworten]
  • Mit dem Verschwindenlassen dess Quelltextes gibts am Ende wohl ein Problem? Jedenfalls kommt man aus einer immer wiederkehrenden Schleife nicht weiter. Ich kann mir immer nochmal den Grafen mit Text anzeigen lassen, Text verschwinden lassen und wieder anzeigen lassen. Aber "noch mehr" ist nicht verschwindbar ;-) --Exxu 19:03, 12. Nov. 2006 (CET)[Beantworten]
das war noch nicht fertig. Ich bin noch am Überlegen. Werde aber wohl am Ende wirklich nur das Skelett da lassen ohne Quellcode - bei Bedarf kann der Kurs-Teilnehmer zurückspringen. --Erkan Yilmaz 19:24, 12. Nov. 2006 (CET)[Beantworten]
  • Mal noch eine Frage: Von welcher Bildschirmauflösung gehst Du aus? 800x600 bis 1024x768 würde ich voraussetzen. Aber 1200x1024 ist vielleicht nicht unbedingtes Muss? --Exxu 19:03, 12. Nov. 2006 (CET)[Beantworten]
Ich glaube die Einstellungen sind 1152x... - damit der komplette Sourcecode sichtbar ist - ich weiss sieht etwas blöd aus. Ich schaue mal, dass ich das resizen kann. --Erkan Yilmaz 19:24, 12. Nov. 2006 (CET)[Beantworten]
ich hätte schon mal eine erste Idee:
da die swf auch verwendet werden kann von anderen sollte das Logo der Wikiversity oder vom Kurs auftauchen im Video. Frage: nur am Anfang und am Ende oder irgendwo durchgängig? --Erkan Yilmaz 18:49, 12. Nov. 2006 (CET)[Beantworten]
Ich denke auch, dass dies notwendig wäre. Zur konkreten Realisierung sollten wir uns noch Gedanken machen. --Exxu 19:03, 12. Nov. 2006 (CET)[Beantworten]
bin gerne offen dafür. --Erkan Yilmaz 19:24, 12. Nov. 2006 (CET)[Beantworten]

Version3[Bearbeiten]

eben noch Version2, jetzt schon Version3 (komme mir vor wie bei Rudi Carell :-) ). Hier Version3 der swf. --Erkan Yilmaz 19:40, 12. Nov. 2006 (CET)[Beantworten]

hier auch der zugehörige Text im Kurs. --Erkan Yilmaz 19:53, 12. Nov. 2006 (CET)[Beantworten]

Einführung zu Kontrollflussgrafen[Bearbeiten]

Hallo Erkan, was meinst Du, wäre eine Einführung in die Nutzung bzw. den Sinn von Kontrollflussgrafen nötig? (Ob nun im Video bzw. extra sei mal dahingestellt.) --Exxu 08:22, 13. Nov. 2006 (CET)[Beantworten]

Guten Morgen Exxu, von meiner Seite aus ja, da ich nicht weiss, ob alle Kurs-Teilnehmer Experten (also auf dem selben Stand) sind. Ausserdem werden ja, White-Box-Techniken in dem Kapitel vorher noch durchgenommen und da sollte jeder auf dem selben Stand sein. Ich denke mir, bevor ich die kontrollflussbasierten Techniken richtig erkläre, werde ich einen Verweis machen zum Tutorial und sagen a la: hier schauts euch mal an, bevor ihr nur denkt, das ist reine Theorie (ist also nicht langweilig, es ist auch noch super trivial). Quasi zum Auflockern, denn wie man ja im Tutorial sieht, gehe ich nicht auf alle Elemente eines Kontrollflussgraphen ein. Einfach nur: so sieht es aus - ist einfach, und jetzt gehen wi rmal motiviert an die Theorie ran (nun ja, es gibt ja Werkzeuge, die das alles berechnen...).
Nebenbei ist es auch so ein bisschen eine Demonstration von einem Werkzeug (jGRASP). --Erkan Yilmaz 08:39, 13. Nov. 2006 (CET)[Beantworten]
Sag mal Exxu, ich habe jetzt mal dargelegt, wieso ich das für wichtig erachte, was für Gründe sprechen denn deinerseits dagegen? --Erkan Yilmaz 22:22, 13. Nov. 2006 (CET)[Beantworten]
Also, meinerseits spricht gar nichts dagegen. Vielleicht hast Du meine Frage als skeptisch verstanden? Wenn ich sie jetzt noch mal so lese, fällt mir auf, dass ich da ein Wörtchen vergessen hatte. Ich meinte:
Hallo Erkan, was meinst Du, wäre nicht eine Einführung in die Nutzung bzw. den Sinn von Kontrollflussgrafen nötig?
Also, ich bin dafür :) Ich denke auch, dass der Sinn und der Nutzen eines solchen Werkzeugs erklärt werden sollte.
--Exxu 23:31, 13. Nov. 2006 (CET)[Beantworten]
Hi Exxu, gut dass ich nachgefargt habe, sonst würde ich immer noch auf ne Begründung warten :-)
habe es mal als TODO hier aufgeschrieben. --Erkan Yilmaz 00:04, 14. Nov. 2006 (CET)[Beantworten]

CSD[Bearbeiten]

Übrigens: heißt dieses Werkzeug auf deutsch tatsächlich "Kontrollflussgraph"? Im Englischen nennt man es doch "Control Structure Diagram" - also "Programmablaufplan" oder "Programmflussdiagramm"? Laut ieee ist CSD:
... a graphical stepwise refinement tool for use in the development and maintenance of software. The CSD can be used as a natural extension to popular high-level representations such as data-flow diagrams and structure charts. It includes graphical constructs for refinement, sequence, concurrency, selection, iteration, and exit, which are clearly distinguishable, have meaningful connotations, and provide for a high degree of connectivity in the CSD. The CSD is easy to use manually since it can be virtually superimposed on structured pseudocode or source code. ... --Exxu 23:31, 13. Nov. 2006 (CET)[Beantworten]
wegen dem Namen: jGRASP sagt zu dem eigenen Menu "CSD":
Control Structure Diagram (CSD)
The Control Structure Diagram, or CSD, is an algorithmic level diagram intended to improve the comprehensibility of source code by clearly depicting control constructs, control paths, and the overall structure of each program unit. The CSD is an alternative to flow charts and other graphical representations of algorithms. The major goal behind its creation was that it be an intuitive and compact graphical notation that was easy to use manually and relatively straightforward to automate.
wenn man es genau nimmt und das wollen wir ja, ist es dann kein Kontrollflussgraph
Dann würde ich es entweder allgemeiner formulieren: ein Tool, um die Struktur des Quelltexts (vereinfacht) anzuzeigen.
oder CSD nennen und dann sagen, dass es auch Kontrollflussgraphen gibt.
Wobei es bestimmt auch Open Source Tools gibt, die auch einen Kontrollflussgraphen hinzaubern, man muss sie nur suchen :-)
--Erkan Yilmaz 23:57, 13. Nov. 2006 (CET)[Beantworten]
BTW: Ich will für mich auch persönlich immer wenn es geht zu jedem Tutorial ein anderes Werkzeug verwenden, damit ich auch selbst ein bisschen von dem ganzen hier profitiere. Wenn Ihr was Gutes kennt, dann hier rein :-) Ich weiss ja, da Ihr noch nicht wisst, wo die Reise im Kurs geht, aber vielleicht habt Ihr schon was super gutes, was Ihr euch unbedingt von der Seele reden wollt :-)grins --Erkan Yilmaz 00:17, 14. Nov. 2006 (CET)[Beantworten]

File Upload auf Wikiversity möglich?[Bearbeiten]

Du Exxu, ich stelle gerne meinen Web-PLatz zur Verfügung, um alles zu hosten. Gaebe es auch ne Möglichkeit, die Dateien (sind in der Zukunft zum Teil recht gross) irgendwo auf der Wikiversity abzulegen? --Erkan Yilmaz 00:22, 14. Nov. 2006 (CET)[Beantworten]

Naklar kannst (und sollst) Du Dateien auf Wikiversity hochladen. Am linken Bildschirmrand gibts den Link "Hochladen" ;) Nicht vergessen - es wird eine Lizenzangabe verlangt. --Exxu 06:54, 14. Nov. 2006 (CET)[Beantworten]
Ai super, wie gut, dass ich dich als wandelnden Ratgeber habe Exxu. --Erkan Yilmaz 08:26, 14. Nov. 2006 (CET)[Beantworten]
Tja, was soll ich dagegen sagen? ;) Übrigens, ich bin jetzt für zwei Tage weg vom (Browser-)Fenster. Ich werde mich mal am Beta-Test der LPI-3-Zertifizierung auf der Linuxworldexpo beteiligen. Kannst mir ja die Daumen drücken. --Exxu 08:31, 14. Nov. 2006 (CET)[Beantworten]
Nix - einfach annehmen und versuchen nicht rot zu werden :-)
Du, wenn ich dir DEINE Daumen drücke, dann bist du beim Testen etwas eingeschränkt - soll ich wirklich? Mache ich ja gerne, wenn du unbedingt möchtest. :-)
Also, Waid manns Heil und bis die Tage. --Erkan Yilmaz 08:44, 14. Nov. 2006 (CET)[Beantworten]

Version4[Bearbeiten]

Hier Version4 der swf:
Verkleinert und mit angepasstem Sound.--Erkan Yilmaz 11:41, 17. Nov. 2006 (CET)[Beantworten]

Liste + Links dazu reingesetzt[Bearbeiten]

Hallo zusammen, ich habe mal einen ersten Satz an Test-Techniken reingeschrieben und auch Links (nur Wikipedia) zu diesen. Ich würde vorschlagen, dass man in der Wikipedia die Artikel updatet und hier dann nur darauf referenziert.
Ansonsten würde ich hier eine weitere Unterteilung des Menus vorschlagen (Test-Techniken und dann ein Sub-Menu mit statisch und dynamisch), sonst wird es zu unübersichtlich :-( --Erkan Yilmaz 16:48, 27. Nov. 2006 (CET)[Beantworten]

Liste von Werkzeugen für statische Analyse[Bearbeiten]

Ein Startpunkt wäre:
englisches Wikipedia
www.opensourcetesting.org
hier oder hier.
Primär sollte der Vorzug auf Open Source Werkzeuge gesetzt werden, damit Kurs-Teilnehmer diese auch ohne Einschränkungen benutzen können. --Erkan Yilmaz 17:00, 27. Nov. 2006 (CET)[Beantworten]


Englische Wikipedia-Artikel: Nachholbedarf bei White box tests[Bearbeiten]

Hallo, seht [[2]]: Irgendwie scheint noch keiner Artikel bzgl. White Box Tests erstellt zu haben. In der deutschen Wikipedia ist das besser. --Erkan Yilmaz 21:12, 1. Dez. 2006 (CET)[Beantworten]