Jag har automatiserat testerna för Dr. Web. Kan du ocksÄ göra det?

Jag har automatiserat testerna för Dr. Web. Kan du ocksÄ göra det?

Jag har aldrig anvÀnt Dr. Web. Jag har ingen aning om hur det fungerar. Men det har inte hindrat mig frÄn att skriva en rad automatiserade tester för det (och bara lathet har hindrat mig frÄn att skriva hundratals fler):

  1. Installationstest av Dr. Web;
  2. Test av ÄtkomstbegrÀnsning till externa enheter (USB-minnen);
  3. Test av ÄtkomstbegrÀnsning till katalogen mellan program;
  4. Test av ÄtkomstbegrÀnsning till katalogen mellan anvÀndare i systemet (förÀldrakontroll).

SÄdana och mÄnga andra tester kan skapas som varma bullar, och inte bara relaterat till Dr. Web, och inte bara relaterat till antivirusprogram. I denna artikel kommer jag att berÀtta hur man gör det.

Förberedelse

För testerna behöver vi en virtuell maskin med Windows. Jag har förberett den manuellt genom att utföra följande ÄtgÀrder:

  1. Egentligen installerade jag Windows 10 Pro x64;
  2. Under installationen skapade jag en huvud anvÀndare "testo" med lösenordet "1111";
  3. Jag aktiverade autoinloggning för denna anvÀndare;

För att automatisera testerna kommer jag att anvÀnda plattformen Testo. Vad det Àr och hur man anvÀnder det kan man lÀsa hÀr. Nu behöver vi importera den fÀrdiga virtuella maskinen i automatiserade tester. Det Àr vÀldigt enkelt att göra:

Jag har automatiserat testerna för Dr. Web. Kan du ocksÄ göra det?

HĂ€r antas att /path/to/win10.qcow2 — Ă€r sökvĂ€gen till disketten frĂ„n den virtuella maskinen som jag förberett manuellt. HĂ€r slutar förberedelsen och aktionen börjar.

Test Nr 1 — Installerar Dr. Web!

Först mÄste vi lösa frÄgan om att överföra distributionspaketet av Dr. Web till den virtuella maskinen. Det kan göras (till exempel) med hjÀlp av ett USB-minne:

Jag har automatiserat testerna för Dr. Web. Kan du ocksÄ göra det?

Allt vi behöver göra Àr att lÀgga installationsprogrammet för Dr. Web i mappen ${DR_WEB_DIR} (det exakta vÀrdet för denna parameter kommer vi att ange vid starten av testo). Och Testo kommer att se till att denna installerare finns pÄ USB-minnet.

Nu kan vi börja sjÀlva skrivandet av testet. Vi inleder testet med enkla saker: vi slÄr pÄ den virtuella maskinen (efter skapandet kommer den att vara avstÀngd), vi vÀntar pÄ att skrivbordet dyker upp, vi slÄr pÄ USB-minnet och öppnar dess innehÄll genom Utforskaren:

Jag har automatiserat testerna för Dr. Web. Kan du ocksÄ göra det?

SkÀrmdump vid slutet av scenariot

Jag har automatiserat testerna för Dr. Web. Kan du ocksÄ göra det?

Vi kan naturligtvis starta installationsprogrammet direkt hĂ€rifrĂ„n, frĂ„n USB-minnet. Men vi gör det hellre pĂ„ rĂ€tt sĂ€tt — vi kopierar installationsprogrammet till skrivbordet och startar installationsprogrammet dĂ€rifrĂ„n. Hur skulle vi kopiera filen? Hur skulle en mĂ€nniska göra det?

Jag har automatiserat testerna för Dr. Web. Kan du ocksÄ göra det?

SkÀrmdump dÀr filkopieringen fortfarande pÄgÄr

Jag har automatiserat testerna för Dr. Web. Kan du ocksÄ göra det?

Allt kopiering Àr nu framgÄngsrikt avslutat! Du kan nu stÀnga fönstret med USB-minnet och ta ut det:

Jag har automatiserat testerna för Dr. Web. Kan du ocksÄ göra det?

SkÀrmdump efter att vi stÀngt utforskaren

Jag har automatiserat testerna för Dr. Web. Kan du ocksÄ göra det?

Nu nÀr installationsprogrammet ligger pÄ skrivbordet behöver vi dubbelklicka pÄ det för att starta installationsprocessen. SjÀlva installationen handlar om att klicka pÄ knappar och kryssrutor och Àr inte sÀrskilt intressant:

Jag har automatiserat testerna för Dr. Web. Kan du ocksÄ göra det?

SkÀrmdump vid installationens slut

Jag har automatiserat testerna för Dr. Web. Kan du ocksÄ göra det?

Vi avslutar vÄrt test med en omstart. Och glöm inte att kontrollera att det har dykt upp en ikon med Dr. Web pÄ skrivbordet efter omstarten:

Jag har automatiserat testerna för Dr. Web. Kan du ocksÄ göra det?

SkÀrmdump efter omstart

Jag har automatiserat testerna för Dr. Web. Kan du ocksÄ göra det?

Bra jobbat! Vi har automatiserat installationen av antivirusprogrammet Dr. Web! LÄt oss ta en kort paus och se hur det ser ut i aktion:

Spela video

Vi gÄr vidare till testning av funktioner.

Test nr 2 — BegrĂ€nsa Ă„tkomst till USB-minnen

Den första funktionen pĂ„ listan — begrĂ€nsa Ă„tkomst till USB-minnen. LĂ„t oss planera ett rĂ€tt framgĂ„ngsrikt test:

  1. Vi försöker sĂ€tta in ett USB-minne och skapa en tom fil dĂ€r — det borde fungera. Ta ut USB-minnet;
  2. Vi aktiverar blockeringsfunktionen för externa enheter i Dr. Web Security Center;
  3. SĂ€tt in USB-minnet igen och försök ta bort den skapade filen. ÅtgĂ€rden borde blockeras.

Vi skapar ett nytt USB-minne, sÀtter in det i Windows och försöker skapa en mapp. Vad kan vara enklare?

Jag har automatiserat testerna för Dr. Web. Kan du ocksÄ göra det?

SkÀrmdump vid slutet av scenariot

Jag har automatiserat testerna för Dr. Web. Kan du ocksÄ göra det?

Vi skapar en ny textfil via snabbmenyn i utforskaren:

Jag har automatiserat testerna för Dr. Web. Kan du ocksÄ göra det?

SkÀrmdump efter att filen har döpts om

Jag har automatiserat testerna för Dr. Web. Kan du ocksÄ göra det?

Vi kopplar bort USB-minnet, gör det pÄ ett sÀkert sÀtt:

Jag har automatiserat testerna för Dr. Web. Kan du ocksÄ göra det?

Nu har vi sÀkerstÀllt att vi kan arbeta med USB-minnet, och dÀrför kan vi börja blockera det i Dr. Webs sÀkerhetscenter. För att göra detta mÄste vi först öppna sÀkerhetscentret:

Jag har automatiserat testerna för Dr. Web. Kan du ocksÄ göra det?

SkÀrmdump med sÀkerhetscentrets fönster

Jag har automatiserat testerna för Dr. Web. Kan du ocksÄ göra det?

Vi kan mÀrka att för att öppna ett vilket program som helst i Windows mÄste vi faktiskt utföra samma steg (klicka pÄ sökfÀltet, vÀnta pÄ att fönstret med populÀra program dyker upp, skriva in namnet pÄ det intressanta programmet, vÀnta pÄ att det visas i listan och slutligen trycka pÄ Enter). DÀrför kan denna grupp av ÄtgÀrder samlas i ett makro open_app, dÀr namnet pÄ det öppnade programmet kommer att skickas som parameter:

Jag har automatiserat testerna för Dr. Web. Kan du ocksÄ göra det?

Detta makro kommer att vara anvÀndbart för oss.

Det första vi gör nÀr vi öppnar Dr. Webs sÀkerhetscenter Àr att aktivera möjligheten att göra Àndringar:

Jag har automatiserat testerna för Dr. Web. Kan du ocksÄ göra det?

Nu klickar vi lite i menyerna och gÄr till menyn "Konfigurera enhetstillgÄngsregler". I denna meny markerar vi alternativet "Blockera flyttbara medier".

Jag har automatiserat testerna för Dr. Web. Kan du ocksÄ göra det?

SkÀrmdump med fönstret Enheter och Personlig data

Jag har automatiserat testerna för Dr. Web. Kan du ocksÄ göra det?

LÄt oss försöka öppna USB-minnet nu:

Jag har automatiserat testerna för Dr. Web. Kan du ocksÄ göra det?

SkÀrmdump med felmeddelande

Jag har automatiserat testerna för Dr. Web. Kan du ocksÄ göra det?

SÄ hÀr har vi lÄngsamt och metodiskt skrivit det första testet med att testa en ganska konkret funktion i Dr. Web. Det Àr dags att ta en paus och meditera medan vi ser pÄ resultaten av vÄrt arbete:

Spela video

Test nr 3 - ÅtkomstbegrĂ€nsning till katalogen mellan program

Den grundlÀggande idén med detta testfall Àr att kontrollera hur Dr. Web fungerar nÀr Ätkomsten till en viss mapp begrÀnsas. Mer specifikt, vi mÄste skydda mappen frÄn att Àndras, men lÀgga till ett undantag för nÄgot tredjepartsprogram. SjÀlva testet ser ut som följer:

  1. Vi installerar ett tredjepartsprogram pÄ operativsystemet, för vilket vi senare kommer att lÀgga till ett undantag nÀr det gÀller Ätkomst till den skyddade mappen. Dagens tredjepartsprogram Àr filhanteraren FreeCommander;
  2. Vi skapar en mapp med en fil som vi kommer att skydda med alla medel;
  3. Vi öppnar Dr. Webs sÀkerhetscenter och aktiverar skyddet för denna mapp;
  4. Vi konfigurerar undantaget för FreeCommander;
  5. LÄt oss försöka ta bort filen frÄn den skyddade mappen pÄ vanligt sÀtt (via Windows Utforskaren). Det borde inte gÄ;
  6. Vi försöker ta bort filen via FreeCommander. Det borde gÄ.

Oj, mycket arbete. LÄt oss börja snabbare - sÄ slutför vi snabbare.

Punkt ett, installationen av FreeCommander skiljer sig inte mycket frÄn installationen av Dr.Web. Vanlig rutin: vi sÀtter i USB-minnet, startar installationsprogrammet och sÄ vidare. Vi hoppar över det och gÄr direkt till det intressanta.

Om du Àr intresserad av hur man installerar FreeCommander

Vi börjar enkelt: vi skapar ett USB-minne dÀr vi lÀgger distributionspaketet av FreeCommander, och sedan sÀtter vi in USB-minnet i operativsystemet och öppnar det:

Jag har automatiserat testerna för Dr. Web. Kan du ocksÄ göra det?

Sedan nÄgra klick för att starta installationen:

Jag har automatiserat testerna för Dr. Web. Kan du ocksÄ göra det?

Installationen Àr inte sÀrskilt intressant, vi klickar bara pÄ "NÀsta" överallt, och glöm inte att avmarkera rutorna för att visa ReadMe och omedelbart starta FreeCommander i slutet.

Jag har automatiserat testerna för Dr. Web. Kan du ocksÄ göra det?

Vi avslutar testet genom att stÀnga alla fönster och ta ut USB-minnet.

Jag har automatiserat testerna för Dr. Web. Kan du ocksÄ göra det?

Klart!

För att arbeta med Dr. Web skapar vi ett nytt test dr_web_restrict_program, som kommer att basera sig pÄ resultatet av det föregÄende testet win10_install_freecommander.

Vi börjar testet med att skapa en mapp som heter Protected pÄ skrivbordet:

Jag har automatiserat testerna för Dr. Web. Kan du ocksÄ göra det?

SkÀrmdump efter att ha skapat mappen

Jag har automatiserat testerna för Dr. Web. Kan du ocksÄ göra det?

Vi gÄr in i mappen Protected och skapar en fil dÀr my_file.txt, som kommer att fungera som den skyddade filen:

Jag har automatiserat testerna för Dr. Web. Kan du ocksÄ göra det?

Åh, jag skulle ocksĂ„ ha ordnat detta som ett makro, men jaja 


SkÀrmdump efter skapandet av filen

Jag har automatiserat testerna för Dr. Web. Kan du ocksÄ göra det?

UtmÀrkt, nu mÄste vi aktivera skyddet för mappen. Vi gÄr den vÀlkÀnda vÀgen och öppnar Dr. Web, kom ihÄg att aktivera lÀget för Àndringar. DÀrefter gÄr vi till menyn "Data Loss Prevention".

Jag har automatiserat testerna för Dr. Web. Kan du ocksÄ göra det?

SkÀrmdump av Data Loss Prevention-fönstret

Jag har automatiserat testerna för Dr. Web. Kan du ocksÄ göra det?

Lite musarbete, och vi lÀgger till vÄr mapp Protected till listan över skyddade:

Jag har automatiserat testerna för Dr. Web. Kan du ocksÄ göra det?

SkÀrmdump av guiden för att lÀgga till skyddad mapp

Jag har automatiserat testerna för Dr. Web. Kan du ocksÄ göra det?

Nu mÄste vi stÀlla in ett undantag för att fÄ Ätkomst till mappen för FreeCommander. Lite mer musarbete:

Jag har automatiserat testerna för Dr. Web. Kan du ocksÄ göra det?

SkÀrmdump med det tillagda undantagsprogrammet

Jag har automatiserat testerna för Dr. Web. Kan du ocksÄ göra det?

Nu stÀnger vi försiktigt alla fönster och försöker ta bort filen "my_file.txt" pÄ det vanliga sÀttet:

Jag har automatiserat testerna för Dr. Web. Kan du ocksÄ göra det?

SkÀrmdump med meddelande frÄn Dr.Web

Jag har automatiserat testerna för Dr. Web. Kan du ocksÄ göra det?

Men inget fungerade — sĂ„ Dr. Web har verkligen fungerat! HalvvĂ€gs genom testet, men vi mĂ„ste fortfarande kontrollera att undantaget för FreeCommander fungerar. För detta öppnar vi FreeCommander och gĂ„r till mappen Protected:

Jag har automatiserat testerna för Dr. Web. Kan du ocksÄ göra det?

SkÀrmdump av FreeCommander-fönstret

Jag har automatiserat testerna för Dr. Web. Kan du ocksÄ göra det?

LÄt oss försöka ta bort filen my_file.txt:

Jag har automatiserat testerna för Dr. Web. Kan du ocksÄ göra det?

SkÀrmdump efter att filen har tagits bort

Jag har automatiserat testerna för Dr. Web. Kan du ocksÄ göra det?

Undantaget för FreeCommander fungerar!

Bra jobbat! En stor och komplex testfall — och allt Ă€r automatiserat. Lite avkoppling:

Spela video

Test nr 4 — FörĂ€ldrakontroll

Detta sista testfall för idag kommer att byggas upp pÄ följande sÀtt:

  1. Vi skapar en ny anvÀndare MySuperUser;
  2. Logga in som denna anvÀndare;
  3. Skapa en fil my_file.txt i namnet pÄ den nya anvÀndaren;
  4. Öppna sĂ€kerhetscentret Dr. Web och aktivera förĂ€ldrakontrollen för denna fil;
  5. I förÀldrakontrollen begrÀnsar vi behörigheterna för anvÀndaren MySuperUser för filen som han skapat;
  6. Försök lÀsa och ta bort filen my_file.txt i namnet av MySuperUser och se pÄ resultatet.

Jag kommer inte att ange testscenariot hĂ€r. Det baseras pĂ„ samma princip som de tidigare testen: vi arbetar aktivt med mus och tangentbord. Det spelar ingen roll vad vi automatiserar — vare sig Dr.Web eller skapandet av en ny anvĂ€ndare i Windows. Men lĂ„t oss Ă€ndĂ„ se hur ett sĂ„dant test kommer att se ut:

Spela video

Slutsats

→ KĂ€llkoden för alla tester kan du se hĂ€r

Dessutom kan du köra alla dessa tester pÄ din egen maskin. För detta behöver du testscenario-tolken Testo. Du kan ladda ner den. hÀr.

Dr. Web visade sig vara en ganska bra trÀning, men jag skulle vilja hÀmta inspiration för framtida prestationer frÄn era önskemÄl. Skriv gÀrna i kommentarerna dina förslag pÄ vilka automatiserade tester ni skulle vilja se i framtiden. I nÀsta artikel kommer jag att försöka automatisera dem, lÄt oss se vad som kommer ut av det.

KĂ€lla: habr.com

Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar đŸ”„ Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster