Я аўтаматызаваў тэсціраванне Dr. Web. А ці зможаце вы?

Я аўтаматызаваў тэсціраванне Dr. Web. А ці зможаце вы?

Я ніколі не карыстаўся Dr. Web. Я паняцця не маю, як ён уладкованы. Але гэта не перашкодзіла мне напісаць для яго шэраг аўтатэстаў (і толькі лянота не дазволіла мне напісаць яшчэ сотню іншых):

  1. Тэст на ўстаноўку Dr. Web;
  2. Тэст на абмежаванне доступу да здымных прылад (флэшак);
  3. Тэст на размежаванне доступу да каталога паміж праграмамі;
  4. Тэст на размежаванне доступу да каталога паміж карыстальнікамі сістэмы (бацькоўскі кантроль).

Такія і многія іншыя тэсты можна кляпаць як гарачыя піражкі, і не толькі ў дачыненні да Dr. Web, і не толькі ў дачыненні да антывірусам. У гэтым артыкуле я раскажу, як гэта зрабіць.

Падрыхтоўка

Для тэстаў нам спатрэбіцца віртуалка з Windows на борце. Я падрыхтаваў яе ўручную, выканаўшы на ёй наступныя маніпуляцыі:

  1. Уласна, усталяваў Windows 10 Pro x64;
  2. Падчас усталёўкі стварыў асноўнага карыстача "testo" у паролем "1111";
  3. Уключыў аўталагін для гэтага карыстальніка;

Для аўтаматызацыі тэстаў я буду выкарыстоўваць платформу Testo. Што гэта такое і як гэтым карыстацца можна пачытаць тут. Нам жа зараз патрабуецца імпартаваць гатовую віртуалку ў аўтатэсты. Зрабіць гэта вельмі проста:

Я аўтаматызаваў тэсціраванне Dr. Web. А ці зможаце вы?

Тут мяркуецца, што /path/to/win10.qcow2 - гэта шлях да дыска той віртуалкі, якую я падрыхтаваў уручную. На гэтым падрыхтоўка заканчваецца, і пачынаецца экшэн.

Тэст №1 - Усталёўваны Dr. Web!

Для пачатку трэба вырашыць пытанне з пераносам дыстрыбутыва Dr. Web на віртуальную машыну. Зрабіць гэта можна (напрыклад) з дапамогай флэшкі:

Я аўтаматызаваў тэсціраванне Dr. Web. А ці зможаце вы?

Усё, што нам трэба зрабіць - гэта пакласці ўсталёўшчык Dr. Web у татачку ${DR_WEB_DIR} (дакладнае значэнне гэтага параметра мы будзем задаваць пры запуску testo). А Testo само паклапоціцца аб тым, каб гэты ўсталёўнік апынуўся на флэшцы.

Цяпер можам прыступіць, уласна, да напісання цеста. Пакуль што пачнем тэст з простых рэчаў: уключым віртуалку (пасля стварэння яна будзе выключана), дачакаемся з'яўлення працоўнага стала, уключым флешку і адкрыем яе змесціва праз правадыр:

Я аўтаматызаваў тэсціраванне Dr. Web. А ці зможаце вы?

Скрыншот на момант заканчэння сцэнара

Я аўтаматызаваў тэсціраванне Dr. Web. А ці зможаце вы?

Можна, вядома, запусціць усталёўнік прама адгэтуль, з самай флэшкі. Але мы лепш зробім усё па-чэснаму - мы скапіюем усталёўнік на працоўны стол і запусцім усталёўнік адтуль. Як жа нам скапіяваць файл? А як бы гэта зрабіў чалавек?

Я аўтаматызаваў тэсціраванне Dr. Web. А ці зможаце вы?

Скрыншот, на якім яшчэ адбываецца капіраванне файла

Я аўтаматызаваў тэсціраванне Dr. Web. А ці зможаце вы?

Усё, капіраванне паспяхова завершана! Цяпер можна зачыніць акно з флэшкай і выцягнуць яе:

Я аўтаматызаваў тэсціраванне Dr. Web. А ці зможаце вы?

Скрыншот пасля закрыцця правадыра

Я аўтаматызаваў тэсціраванне Dr. Web. А ці зможаце вы?

Цяпер, калі ўсталёўнік апынуўся на працоўным стале, нам трэба двойчы клікнуць на яго каб запусціць працэс усталёўкі. А сама ўстаноўка зводзіцца да простага пракліквання кнопак і галачак і не ўяўляе вялікай цікавасці:

Я аўтаматызаваў тэсціраванне Dr. Web. А ці зможаце вы?

Скрыншот на момант заканчэння ўстаноўкі

Я аўтаматызаваў тэсціраванне Dr. Web. А ці зможаце вы?

Завяршаем наш тэст перазагрузкай. І ў канцы не забудземся праверыць, што пасля перазагрузкі на працоўным стале з'явілася абразок з Dr. Web:

Я аўтаматызаваў тэсціраванне Dr. Web. А ці зможаце вы?

Скрыншот пасля перазагрузкі

Я аўтаматызаваў тэсціраванне Dr. Web. А ці зможаце вы?

Выдатная праца! Мы аўтаматызавалі ўстаноўку антывіруса Dr. Web! Давайце крыху перадыхнём і паглядзім, як гэта выглядае ў дынаміцы:

Пераходзім да тэставання фіч.

Тэст №2 — Абмежаванне доступу да флэшак

Першая фіча па спісе - абмежаванне доступу да флэшак. Для гэтага сплануем даволі прамалінейны тэст:

  1. Паспрабуем уставіць флешку і стварыць там пусты файл - павінна атрымацца. Выцягнем флешку;
  2. Уключым блакіроўку здымных прылад у Dr. Web Security Center;
  3. Яшчэ раз уставім флешку і паспрабуем выдаліць створаны файл. Дзеянне павінна быць заблакіравана.

Створым сабе новую флешку, уставім яе ў Windows і паспрабуем стварыць тэчку. Што можа быць прасцей?

Я аўтаматызаваў тэсціраванне Dr. Web. А ці зможаце вы?

Скрыншот на момант заканчэння сцэнара

Я аўтаматызаваў тэсціраванне Dr. Web. А ці зможаце вы?

Ствараем новы тэкставы файл праз кантэкстнае меню правадыра:

Я аўтаматызаваў тэсціраванне Dr. Web. А ці зможаце вы?

Скрыншот пасля перайменавання файла

Я аўтаматызаваў тэсціраванне Dr. Web. А ці зможаце вы?

Адключаем флешку, які робіцца гэта бяспечна:

Я аўтаматызаваў тэсціраванне Dr. Web. А ці зможаце вы?

Цяпер мы пераканаліся, што з флэшкай працаваць можна, а значыць можна прыступаць да яе блакіроўкі ў цэнтры бяспекі Dr. Web. Для гэтага спачатку трэба адкрыць цэнтр бяспекі:

Я аўтаматызаваў тэсціраванне Dr. Web. А ці зможаце вы?

Скрыншот з акном Security Center

Я аўтаматызаваў тэсціраванне Dr. Web. А ці зможаце вы?

Можам заўважыць, што для адкрыцця любога прыкладання ў Windows трэба выканаць фактычна аднолькавыя дзеянні (клікнуць на радок пошуку, дачакацца з'яўленні акна з папулярнымі прыкладаннямі, убіць імя які цікавіць прыкладанні, дачакацца, калі яно з'явіцца ў спісе і, нарэшце, націснуць Enter). Таму гэтую групу дзеянняў можна вылучыць у макрас. open_app, у які ў якасці параметру будзе перадавацца імя адчынянага прыкладання:

Я аўтаматызаваў тэсціраванне Dr. Web. А ці зможаце вы?

Гэты макрас нам яшчэ спатрэбіцца.

Першае, што мы зробім, адкрыўшы цэнтр бяспекі Dr. Web - уключым магчымасць уносіць змены:

Я аўтаматызаваў тэсціраванне Dr. Web. А ці зможаце вы?

Зараз крыху паклікаем па менюшкам і зойдзем у меню "Configure device access rules". У гэтым меню паставім галачку ў пункце "Block removable media".

Я аўтаматызаваў тэсціраванне Dr. Web. А ці зможаце вы?

Скрыншот з акном Devices and Personal Data

Я аўтаматызаваў тэсціраванне Dr. Web. А ці зможаце вы?

Паспрабуем адкрыць флешку зараз:

Я аўтаматызаваў тэсціраванне Dr. Web. А ці зможаце вы?

Скрыншот з паведамленне пра памылку

Я аўтаматызаваў тэсціраванне Dr. Web. А ці зможаце вы?

Вось так паволі-полегоньку мы і напісалі першы тэст з тэставаннем цалкам якая адчуваецца фічы ў Dr. Web. Надышоў час перадыхнуць і памедытаваць, гледзячы на ​​вынікі нашых прац:

Тэст №3 — Размежаванне доступу да каталога паміж праграмамі

Асноўная ідэя гэтага тесткейса - праверыць працу Dr. Web пры абмежаванні доступу да вызначанай тэчкі. Калі канкрэтна, тое неабходна абараніць тэчку ад якія-небудзь змен, але дадаць выключэнне для якой-небудзь іншай праграмы. Уласна, сам тэст выглядае наступным чынам:

  1. Усталюем на АС іншую праграму, для якой крыху пазней дадамо выключэнне пры доступе да абароненай тэчкі. Сёння іншая праграма дня - файлавы менеджэр FreeCommander;
  2. Ствараем тэчку з файлікам, якую будзем абараняць усімі сіламі;
  3. Адкрыем цэнтр бяспекі Dr. Web і ўключым там абарону гэтай тэчкі;
  4. Наладзім выключэнне для FreeCommander;
  5. Паспрабуем выдаліць файл з абароненай тэчкі звычайным спосабам (праз правадыр Windows). Не павінна атрымацца;
  6. Паспрабуем выдаліць файлік праз FreeCommander. Павінна атрымацца.

Ух, шмат працы. Хутчэй пачнем - хутчэй скончым.

Пункт першы, усталёўка FreeCommander не моцна адрозніваецца ад усталёўкі Dr.Web. Звычайная руціна: уставілі флешку, запусцілі ўсталёўнік і гэтак далей. Прапусцім гэта і пяройдзем адразу да цікавага.

Калі ўсё ж цікава, як усталяваць FreeCommander

Пачнём з простага: створым флешку, у якую змесцім дыстрыбутыў FreeCommander, а затым у цесцю ўставім флешку ў АС і адкрыем яе:

Я аўтаматызаваў тэсціраванне Dr. Web. А ці зможаце вы?

Далей некалькі не клікаў каб запусціць усталёўку:

Я аўтаматызаваў тэсціраванне Dr. Web. А ці зможаце вы?

Усталёўка не вельмі цікавая, проста клікаем усюды "Далей", а ў канцы не забываем адключыць галачкі з праглядам ReadMe і неадкладным запускам FreeCommander

Я аўтаматызаваў тэсціраванне Dr. Web. А ці зможаце вы?

Сканчаем тэст, зачыняючы ўсе вокны і выцягваючы флешку

Я аўтаматызаваў тэсціраванне Dr. Web. А ці зможаце вы?

Гатова!

Для працы з Dr. Web створым новы тэст dr_web_restrict_program, які будзе спадзявацца на вынік працы папярэдняга тэсту win10_install_freecommander.

Пачнём тэст са стварэння тэчкі Protected на працоўным стале:

Я аўтаматызаваў тэсціраванне Dr. Web. А ці зможаце вы?

Скрыншот пасля стварэння тэчкі

Я аўтаматызаваў тэсціраванне Dr. Web. А ці зможаце вы?

Заходзім у тэчку Protected і ствараем тамака файл my_file.txt, які будзе гуляць ролю які абараняецца файла:

Я аўтаматызаваў тэсціраванне Dr. Web. А ці зможаце вы?

Ох, трэба было б таксама аформіць гэта ў выглядзе макраса, ну ды добра…

Скрыншот пасля стварэння файла

Я аўтаматызаваў тэсціраванне Dr. Web. А ці зможаце вы?

Выдатна, зараз трэба ўключыць абарону тэчкі. Ідзем знаёмай дарожкай і адчыняем Dr. Web, не забываем уключыць рэжым змен. Пасля чаго пераходзім у меню "Data Loss Prevention".

Я аўтаматызаваў тэсціраванне Dr. Web. А ці зможаце вы?

Скрыншот з акном Data Loss Prevention

Я аўтаматызаваў тэсціраванне Dr. Web. А ці зможаце вы?

Трохі папрацуем мышкай і дадамо нашу тэчку Protected у спіс якія абараняюцца:

Я аўтаматызаваў тэсціраванне Dr. Web. А ці зможаце вы?

Скрыншот з майстрам дадання якая абараняецца тэчкі

Я аўтаматызаваў тэсціраванне Dr. Web. А ці зможаце вы?

Ну а зараз трэба наладзіць выключэнне па доступе да тэчкі для FreeCommander. Яшчэ крыху працы мышкай:

Я аўтаматызаваў тэсціраванне Dr. Web. А ці зможаце вы?

Скрыншот з дададзенай праграмай-выключэннем

Я аўтаматызаваў тэсціраванне Dr. Web. А ці зможаце вы?

Цяпер акуратна закрываем усе вокны і спрабуем выдаліць файл "my_file.txt" стандартным спосабам:

Я аўтаматызаваў тэсціраванне Dr. Web. А ці зможаце вы?

Скрыншот з паведамленнем ад Dr.Web

Я аўтаматызаваў тэсціраванне Dr. Web. А ці зможаце вы?

Але нічога не атрымалася - значыць Dr. Web сапраўды адпрацаваў! Палова тэсту ззаду, але нам яшчэ трэба праверыць, што будзе працаваць выключэнне для FreeCommander. Для гэтага адчыняны FreeCommander і пераходзім у тэчку Protected:

Я аўтаматызаваў тэсціраванне Dr. Web. А ці зможаце вы?

Скрыншот з акном FreeCommander

Я аўтаматызаваў тэсціраванне Dr. Web. А ці зможаце вы?

Ну і паспрабуем выдаліць файл my_file.txt:

Я аўтаматызаваў тэсціраванне Dr. Web. А ці зможаце вы?

Скрыншот пасля выдалення файла

Я аўтаматызаваў тэсціраванне Dr. Web. А ці зможаце вы?

Выключэнне для FreeCommander працуе!

Выдатная праца! Вялікі і складаны тесткейс - і ўсё аўтаматызавана. Трохі расслабона:

Тэст №4 - Бацькоўскі кантроль

Гэты апошні на сёння тесткейс мы пабудуем наступным чынам:

  1. Створым новага карыстальніка MySuperUser;
  2. Залагінімся пад гэтым карыстальнікам;
  3. створым файл my_file.txt ад імя новага карыстальніка;
  4. Адкрыем цэнтр бяспекі Dr. Web і ўключым бацькоўскі кантроль для гэтага файла;
  5. У бацькоўскім кантролі абмяжуем правы карыстача MySuperUser на ім жа створаны файл;
  6. Паспрабуем прачытаць і выдаліць файл my_file.txt ад імя MySuperUser і паглядзім на вынік.

Я не буду прыводзіць тут сцэнар цеста. Ён будуецца па тым жа прынцыпу, што і папярэднія тэсты: актыўна працуем мышкай і клавіятурай. Пры гэтым нам не важна, што мы аўтаматызуем - хоць Dr.Web, хоць стварэнне новага карыстальніка ў Windows. Але давайце ўсё ж паглядзім, як будзем выглядаць прагон такога цеста:

Заключэнне

→ Зыходнікі ўсіх тэстаў Вы можаце паглядзець тут

Больш за тое, усе гэтыя тэсты Вы можаце прагнаць на сваёй машыне. Для гэтага Вам запатрабуецца інтэрпрэтатар тэставых сцэнараў Testo. Спампаваць яго можна тут.

Dr. Web аказаўся нядрэннай трэніроўкай, але натхненне для далейшых подзвігаў я хацеў бы запазычыць з Вашых пажаданняў. Пішыце ў каментарах свае прапановы аб тым, якія аўтатэсты Вы б хацелі ўбачыць у будучыні. У наступным артыкуле я паспрабую іх аўтаматызаваць, паглядзім, што з гэтага выйдзе.

Крыніца: habr.com

Дадаць каментар