Testen der Pakete#

Bevor Pakete in unseren Softwarepool aufgenommen werden, müssen diese sich einer Reihe von Tests unterziehen. Wir empfehlen das Testen in einer virtuellen Maschine (kurz: VM).

Aufnehmen des Paketes in die Datenbank#

Nachdem das Paket fertiggestellt wurde und nun getestet werden soll, muss dieses zunächst in die Datenbank eingetragen werden. Der Softwareverteilung muss also gesagt werden, dass es vorhanden ist. Dieses kann entweder mit iservchk:

iservchk

oder mit dem Befehl chkdeploy, welcher einen Abgleich der Softwarepakete mit der Datenbank durchführt:

chkdeploy

Einrichten einer Testumgebung/VM#

Eine geeignete Testumgebung ist ein frisch installiertes Windows. Bei einer virtuellen Maschine hat man dann die Möglichkeit einen sogenannten Snapshot (ein Abbild der Festplatte zu machen, zu dem man zurückkehren kann, wenn nötig). Dies ist sehr hilfreich, um schnell eine saubere Testumgebung wiederherzustellen.

Es ist auch wichtig die Programme mit verschiedenen Profilen zu testen. Mit diesem Befehl lässt sich ein Test-Profil wieder aufräumen, ohne das man es neu anlegen muss:

rm -rf /home/mein.testaccount/Windows; chkhomes mein.testaccount

Testszenarien#

  • Aktionen zuweisen, Rechner neu starten und Installation abwarten

  • Aktionen zuweisen und Übernehmen klicken, während niemand am Rechner angemeldet ist

  • Aktionen zuweisen und Übernehmen klicken, während jemand am Rechner angemeldet ist

  • Paket zweimal nacheinander installieren; läuft die zweite Installation ohne Fehler durch und ist das Programm anschließend benutzbar? Ansonsten vor jeder Installation erst die alte Version deinstallieren.

  • Paket zweimal nacheinander deinstallieren; die zweite Deinstallation sollte keinen Fehler ausgeben, obwohl das Programm nicht mehr installiert ist.

Hinweis

Bei einem Update muss zusätzlich getestet werden, ob die alte Version korrekt aktualisiert wird.

Debugging beim MSI#

Für den msiexec-Aufruf gibt es einen nützlichen Parameter, der dabei hilft, Probleme einzugrenzen, die während der Arbeit des MSI-Installers auftauchen. So schreibt der folgende Befehl ein ausführliches Log nach C:msi-log.txt. Auf diese Weise kommt man z.B. durch den Eintrag

msiexec /passive /i "Pfad zu Msi-Datei" /Lime C:\msi_log.txt
DEBUG: Error 2103:  Could not resolve path for shell folder 26.

direkt via Suche im Internet z.B. per Google an eine mögliche Lösung:

msiexec /passive /i "Pfad zu Msi-Datei" ALLUSERS=1