Ich habe die Testautomatisierung von Dr. Web implementiert. Können Sie das auch?

Ich habe die Testautomatisierung von Dr. Web implementiert. Können Sie das auch?

Ich habe Dr. Web noch nie verwendet. Ich habe keine Ahnung, wie es funktioniert. Aber das hat mich nicht davon abgehalten, einige Autotests dafür zu schreiben (und nur meine Faulheit hat mich davon abgehalten, hundert weitere zu schreiben):

  1. Test zur Installation von Dr. Web;
  2. Test zur Einschränkung des Zugriffs auf Wechseldatenträger (USB-Sticks);
  3. Test zur Zugriffsverteilung auf ein Verzeichnis zwischen Programmen;
  4. Test zur Zugriffsverteilung auf ein Verzeichnis zwischen Benutzern des Systems (Elternkontrolle).

Solche und viele andere Tests lassen sich im Handumdrehen erstellen, und das nicht nur im Zusammenhang mit Dr. Web und nicht nur bei Antivirenprogrammen. In diesem Artikel werde ich erklären, wie das geht.

Vorbereitung

Für die Tests benötigen wir eine virtuelle Maschine mit Windows. Ich habe sie manuell vorbereitet, indem ich folgende Schritte durchgeführt habe:

  1. Tatsächlich habe ich Windows 10 Pro x64 installiert;
  2. Während der Installation habe ich den Hauptbenutzer "testo" mit dem Passwort "1111" erstellt;
  3. Ich habe den Autologin für diesen Benutzer aktiviert;

Für die Automatisierung der Tests werde ich die Plattform Testo verwenden. Was das ist und wie man es nutzt, kann man nachlesen. hier. Wir müssen jetzt die fertige virtuelle Maschine in die automatisierten Tests importieren. Das ist ganz einfach:

Ich habe die Testautomatisierung von Dr. Web implementiert. Können Sie das auch?

Hier wird angenommen, dass /path/to/win10.qcow2 — der Pfad zur Festplatte der virtuellen Maschine ist, die ich manuell vorbereitet habe. An dieser Stelle endet die Vorbereitung und der eigentliche Prozess beginnt.

Test Nr. 1 — Dr. Web installieren!

Zuerst müssen wir klären, wie wir das Installationspaket von Dr. Web auf die virtuelle Maschine übertragen. Dazu kann man zum Beispiel einen USB-Stick verwenden:

Ich habe die Testautomatisierung von Dr. Web implementiert. Können Sie das auch?

Alles, was wir tun müssen, ist, den Dr. Web-Installer in den Ordner ${DR_WEB_DIR} zu legen (den genauen Wert dieses Parameters legen wir fest, wenn wir testostarten). Testo sorgt dann dafür, dass dieser Installer auf dem USB-Stick landet.

Jetzt können wir mit dem Schreiben des Tests beginnen. Zunächst starten wir die virtuelle Maschine (nach der Erstellung ist sie ausgeschaltet), warten auf das Erscheinen des Desktops, stecken den USB-Stick ein und öffnen dessen Inhalt im Explorer:

Ich habe die Testautomatisierung von Dr. Web implementiert. Können Sie das auch?

Screenshot zum Zeitpunkt des Szenariumsabschlusses

Ich habe die Testautomatisierung von Dr. Web implementiert. Können Sie das auch?

Es ist natürlich möglich, den Installer direkt von dem USB-Stick aus zu starten. Aber wir machen es lieber richtig — wir kopieren den Installer auf den Desktop und starten ihn von dort. Wie kopieren wir die Datei? Wie würde es eine Person machen?

Ich habe die Testautomatisierung von Dr. Web implementiert. Können Sie das auch?

Screenshot, auf dem das Kopieren der Datei noch läuft

Ich habe die Testautomatisierung von Dr. Web implementiert. Können Sie das auch?

Alles klar, das Kopieren wurde erfolgreich abgeschlossen! Jetzt können wir das Fenster mit dem USB-Stick schließen und ihn herausziehen:

Ich habe die Testautomatisierung von Dr. Web implementiert. Können Sie das auch?

Screenshot nach dem Schließen des Datei-Explorers

Ich habe die Testautomatisierung von Dr. Web implementiert. Können Sie das auch?

Jetzt, da der Installer auf dem Desktop ist, müssen wir zweimal darauf klicken, um den Installationsprozess zu starten. Die Installation selbst besteht aus einfachem Klicken auf Schaltflächen und Setzen von Häkchen und ist nicht besonders interessant:

Ich habe die Testautomatisierung von Dr. Web implementiert. Können Sie das auch?

Screenshot zum Zeitpunkt des Abschlusses der Installation

Ich habe die Testautomatisierung von Dr. Web implementiert. Können Sie das auch?

Wir beenden unseren Test mit einem Neustart. Und am Ende vergessen wir nicht zu überprüfen, dass nach dem Neustart das Symbol von Dr. Web auf dem Desktop erschienen ist:

Ich habe die Testautomatisierung von Dr. Web implementiert. Können Sie das auch?

Screenshot nach dem Neustart

Ich habe die Testautomatisierung von Dr. Web implementiert. Können Sie das auch?

Hervorragende Arbeit! Wir haben die Installation des Antivirus Dr. Web automatisiert! Lassen Sie uns eine kurze Pause machen und sehen, wie das in der Praxis aussieht:

Video abspielen

Wir gehen zur Überprüfung der Funktionen über.

Test Nr. 2 — Zugriff auf USB-Sticks einschränken

Die erste Funktion auf der Liste ist die Einschränkung des Zugriffs auf USB-Sticks. Dafür planen wir einen recht einfachen Test:

  1. Wir werden einen USB-Stick anschließen und dort eine leere Datei erstellen – das sollte klappen. Dann ziehen wir den USB-Stick wieder heraus;
  2. Wir aktivieren die Blockierung von removable devices im Dr. Web Security Center;
  3. Wir stecken den USB-Stick erneut ein und versuchen, die erstellte Datei zu löschen. Diese Aktion sollte blockiert werden.

Wir erstellen einen neuen USB-Stick, stecken ihn in Windows und versuchen, einen Ordner zu erstellen. Was könnte einfacher sein?

Ich habe die Testautomatisierung von Dr. Web implementiert. Können Sie das auch?

Screenshot zum Zeitpunkt des Szenariumsabschlusses

Ich habe die Testautomatisierung von Dr. Web implementiert. Können Sie das auch?

Wir erstellen eine neue Textdatei über das Kontextmenü des Explorers:

Ich habe die Testautomatisierung von Dr. Web implementiert. Können Sie das auch?

Screenshot nach der Umbenennung der Datei

Ich habe die Testautomatisierung von Dr. Web implementiert. Können Sie das auch?

Wir ziehen den USB-Stick ab und tun dies sicher:

Ich habe die Testautomatisierung von Dr. Web implementiert. Können Sie das auch?

Jetzt haben wir uns vergewissert, dass wir mit dem USB-Stick arbeiten können. Daher können wir mit der Blockierung im Dr. Web Security Center beginnen. Zuerst müssen wir das Security Center öffnen:

Ich habe die Testautomatisierung von Dr. Web implementiert. Können Sie das auch?

Screenshot mit dem Fenster des Security Centers

Ich habe die Testautomatisierung von Dr. Web implementiert. Können Sie das auch?

Wir können feststellen, dass das Öffnen einer Anwendung unter Windows in der Regel dieselben Schritte erfordert (auf die Suchleiste klicken, warten, bis das Fenster mit den beliebten Anwendungen erscheint, den Namen der gewünschten Anwendung eingeben, warten, bis sie in der Liste angezeigt wird, und schließlich Enter drücken). Daher können wir diese Gruppe von Aktionen in einem Makro zusammenfassen. open_app, bei dem der Name der zu öffnenden Anwendung als Parameter übergeben wird:

Ich habe die Testautomatisierung von Dr. Web implementiert. Können Sie das auch?

Dieses Makro wird uns noch nützlich sein.

Das Erste, was wir tun werden, wenn wir das Dr. Web Sicherheitszentrum öffnen, ist, die Erlaubnis zu aktivieren, Änderungen vorzunehmen:

Ich habe die Testautomatisierung von Dr. Web implementiert. Können Sie das auch?

Jetzt klicken wir ein wenig durch die Menüs und gehen zu "Geräteeinstellungsregeln konfigurieren". In diesem Menü setzen wir ein Häkchen bei "Wechselmedien blockieren".

Ich habe die Testautomatisierung von Dr. Web implementiert. Können Sie das auch?

Screenshot mit dem Fenster Geräte und persönliche Daten

Ich habe die Testautomatisierung von Dr. Web implementiert. Können Sie das auch?

Versuchen wir jetzt, den USB-Stick zu öffnen:

Ich habe die Testautomatisierung von Dr. Web implementiert. Können Sie das auch?

Screenshot mit der Fehlermeldung

Ich habe die Testautomatisierung von Dr. Web implementiert. Können Sie das auch?

So haben wir langsam aber sicher unseren ersten Test mit der Überprüfung einer greifbaren Funktion in Dr. Web geschrieben. Es ist Zeit, eine Pause zu machen und die Ergebnisse unserer Arbeit zu betrachten:

Video abspielen

Test Nr. 3 – Zugriffseinschränkung für Verzeichnisse zwischen Programmen

Die Hauptidee dieses Testfalls besteht darin, die Funktionsweise von Dr. Web zu überprüfen, wenn der Zugriff auf einen bestimmten Ordner eingeschränkt ist. Konkret geht es darum, den Ordner vor Änderungen zu schützen, aber eine Ausnahme für ein fremdes Programm hinzuzufügen. Der Test selbst sieht folgendermaßen aus:

  1. Wir installieren ein fremdes Programm auf dem Betriebssystem, für das wir später eine Ausnahme für den Zugriff auf den geschützten Ordner hinzufügen werden. Heute ist das fremde Programm des Tages — ein Dateimanager. FreeCommander;
  2. Wir erstellen einen Ordner mit einer Datei, den wir mit allen Mitteln schützen werden;
  3. Wir öffnen das Sicherheitscenter von Dr. Web und aktivieren den Schutz dieses Ordners;
  4. Wir konfigurieren eine Ausnahme für FreeCommander;
  5. Wir versuchen, die Datei auf herkömmliche Weise (über den Windows Explorer) aus dem geschützten Ordner zu löschen. Das sollte nicht gelingen;
  6. Wir versuchen, die Datei über FreeCommander zu löschen. Das sollte gelingen.

Puh, viel Arbeit. Lass uns schneller anfangen — desto schneller sind wir fertig.

Punkt eins: Die Installation von FreeCommander unterscheidet sich nicht stark von der Installation von Dr. Web. Gewöhnliche Routine: USB-Stick eingesteckt, Installer gestartet und so weiter. Lassen wir das hinter uns und kommen wir gleich zum Interessanten.

Falls es dich interessiert, wie man FreeCommander installiert.

Lassen Sie uns einfach beginnen: Wir erstellen einen USB-Stick, auf dem wir das FreeCommander-Installationspaket speichern, und stecken dann den USB-Stick in das Betriebssystem und öffnen ihn:

Ich habe die Testautomatisierung von Dr. Web implementiert. Können Sie das auch?

Nun folgen einige Klicks, um die Installation zu starten:

Ich habe die Testautomatisierung von Dr. Web implementiert. Können Sie das auch?

Die Installation ist nicht besonders spannend, wir klicken einfach überall auf "Weiter", und am Ende vergessen wir nicht, die Häckchen bei der Anzeige von ReadMe und dem sofortigen Start von FreeCommander zu entfernen.

Ich habe die Testautomatisierung von Dr. Web implementiert. Können Sie das auch?

Wir beenden den Test, indem wir alle Fenster schließen und den USB-Stick herausziehen.

Ich habe die Testautomatisierung von Dr. Web implementiert. Können Sie das auch?

Fertig!

Um mit Dr. Web zu arbeiten, erstellen wir einen neuen Test. dr_web_restrict_program, der auf den Ergebnissen des vorherigen Tests basieren wird. win10_install_freecommander.

Wir beginnen den Test mit der Erstellung eines Ordners "Protected" auf dem Desktop:

Ich habe die Testautomatisierung von Dr. Web implementiert. Können Sie das auch?

Screenshot nach der Erstellung des Ordners.

Ich habe die Testautomatisierung von Dr. Web implementiert. Können Sie das auch?

Betreten Sie den Ordner "Protected" und erstellen Sie dort eine Datei. my_file.txt, die als geschützte Datei fungieren wird:

Ich habe die Testautomatisierung von Dr. Web implementiert. Können Sie das auch?

Oh, ich hätte das auch in Form eines Makros umsetzen sollen, aber gut …

Screenshot nach der Erstellung der Datei.

Ich habe die Testautomatisierung von Dr. Web implementiert. Können Sie das auch?

Ausgezeichnet, jetzt müssen wir den Ordnerschutz aktivieren. Gehen Sie den bekannten Weg und öffnen Sie Dr. Web, vergessen Sie nicht, den Änderungsmodus zu aktivieren. Danach gehen wir zum Menü "Data Loss Prevention".

Ich habe die Testautomatisierung von Dr. Web implementiert. Können Sie das auch?

Screenshot des Fensters zur Datensicherung.

Ich habe die Testautomatisierung von Dr. Web implementiert. Können Sie das auch?

Ein wenig mit der Maus arbeiten und unseren Ordner "Protected" zur Liste der geschützten Ordner hinzufügen:

Ich habe die Testautomatisierung von Dr. Web implementiert. Können Sie das auch?

Screenshot mit dem Assistenten zum Hinzufügen eines geschützten Ordners

Ich habe die Testautomatisierung von Dr. Web implementiert. Können Sie das auch?

Jetzt müssen wir eine Ausnahme für den Zugriff auf den Ordner in FreeCommander einstellen. Noch etwas Arbeit mit der Maus:

Ich habe die Testautomatisierung von Dr. Web implementiert. Können Sie das auch?

Screenshot mit dem hinzugefügten Programm-Ausschluss

Ich habe die Testautomatisierung von Dr. Web implementiert. Können Sie das auch?

Jetzt schließen wir vorsichtig alle Fenster und versuchen, die Datei "my_file.txt" auf die übliche Weise zu löschen:

Ich habe die Testautomatisierung von Dr. Web implementiert. Können Sie das auch?

Screenshot mit einer Nachricht von Dr.Web

Ich habe die Testautomatisierung von Dr. Web implementiert. Können Sie das auch?

Aber es hat nicht funktioniert – das bedeutet, dass Dr. Web tatsächlich reagiert hat! Die erste Hälfte des Tests ist vorbei, aber wir müssen noch überprüfen, dass die Ausnahme für FreeCommander funktioniert. Dazu öffnen wir FreeCommander und navigieren zum Ordner Protected:

Ich habe die Testautomatisierung von Dr. Web implementiert. Können Sie das auch?

Screenshot mit dem Fenster von FreeCommander

Ich habe die Testautomatisierung von Dr. Web implementiert. Können Sie das auch?

Und versuchen wir nun, die Datei my_file.txt zu löschen:

Ich habe die Testautomatisierung von Dr. Web implementiert. Können Sie das auch?

Screenshot nach dem Löschen der Datei

Ich habe die Testautomatisierung von Dr. Web implementiert. Können Sie das auch?

Die Ausnahme für FreeCommander funktioniert!

Gute Arbeit! Ein großer und komplexer Testfall – und alles automatisiert. Ein bisschen Entspannung:

Video abspielen

Test Nr. 4 – Elternkontrolle

Diesen letzten Testfall für heute gestalten wir folgendermaßen:

  1. Wir erstellen einen neuen Benutzer MySuperUser;
  2. Wir melden uns mit diesem Benutzer an;
  3. Wir erstellen eine Datei my_file.txt im Namen des neuen Benutzers;
  4. Wir öffnen das Dr. Web Sicherheitszentrum und aktivieren die Elternkontrolle für diese Datei;
  5. Im Bereich der elterlichen Kontrolle werden wir die Berechtigungen des Benutzers MySuperUser für die von ihm erstellte Datei einschränken;
  6. Versuchen wir, die Datei zu lesen und zu löschen my_file.txt im Namen von MySuperUser und sehen wir uns das Ergebnis an.

Ich werde hier das Testszenario nicht darstellen. Es basiert auf demselben Prinzip wie die vorherigen Tests: aktives Arbeiten mit Maus und Tastatur. Dabei ist es unwichtig, was wir automatisieren — sei es Dr.Web oder die Erstellung eines neuen Benutzers in Windows. Aber schauen wir uns trotzdem an, wie solch ein Testablauf aussehen könnte:

Video abspielen

Fazit

→ Die Quellcodes aller Tests können Sie einsehen hier

Darüber hinaus können Sie all diese Tests auf Ihrer Maschine durchführen. Dazu benötigen Sie den Testscript-Interpreter Testo. Sie können ihn herunterladen hier.

Dr. Web war ein ganz gutes Training, aber ich würde gerne Inspiration für zukünftige Herausforderungen aus Ihren Wünschen schöpfen. Schreiben Sie in die Kommentare, welche automatisierten Tests Sie in Zukunft sehen möchten. Im nächsten Artikel werde ich versuchen, sie zu automatisieren, mal sehen, was dabei herauskommt.

Quelle: habr.com

Zuverlässiges Webhosting mit DDoS-Schutz, VPS- und VDS-Server kaufen 🔥 Zuverlässiges Webhosting mit DDoS-Schutz, VPS- und VDS-Server kaufen | ProHoster