TestRail - Індывідуальныя наладкі пад праект

Увядзенне

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

Невялікі дысклеймер. У дадзеным артыкуле няма апісання базавага функцыяналу TestRail (на гэта ёсць шмат гайдаў) і якія прадаюць выразаў маляўніча якія апісваюць чаму трэба абраць менавіта гэтага вендара для стварэння рэпазітара з тэстамі.

План-абгрунтаванне (што будзе рэалізавана)

  1. агульныя патрабаванні

    1. Кейс павінен прайсці абсалютна любы чалавек

    2. Кейсы павінны захоўваць актуальнасць як мага даўжэй

    3. Кейсы павінны максімальна старанна пакрываць функцыянал мабільнага прыкладання ў той меры, у якой гэта не супярэчыць першым двум пунктам.

  2. Падзел на TestCase і TestScenario

  3. Хуткае фарміраванне TestRun розных тыпаў

    1. Дым

    2. Рэгрэс

    3. Impact тэсціраванне і г.д.

  4. Аптымізацыя падтрымкі кейсаў

    1. Адмова ад «мёртвых» захардскураных скрыншотаў і пераход на «movable data»

Патрабаванне

Для рэдагавання палёў Вам запатрабуецца адміністратарскі доступ

Выбар тыпу праекта

Можна выбраць тры тыпы праекту:

TestRail - Індывідуальныя наладкі пад праект

Мы выберам тып па змаўчанні. У ім будуць даступныя адначасова ўсе кейсы. Мы будзем карыстацца разумным фільтраваннем і дынамічна кіраваць усімі кейсамі адразу.

Даданне палёў для прагляду спісу тэст кейсаў

Дадамо поле для адлюстравання priority тэст кейсаў:

TestRail - Індывідуальныя наладкі пад праект

Таксама можна дадаць і іншыя палі.

Настройка палёў і тэгаў тэст кейса

Адкрываем меню наладкі:

TestRail - Індывідуальныя наладкі пад праект

Нам спатрэбяцца такія палі:

Поле "Summary" (шапка тэст кейса)

TestRail - Індывідуальныя наладкі пад праект

Дадзенае поле ўжо існуе, мы толькі сістэматызуем яго выкарыстанне. Будзем падзяляць кейсы на TestCase і TestScenario. Для лепшай чытальнасці вялікага спісу кейсаў лепш загадзя дамовіцца па рэгламенце напісання summary.

TestScenario:

Прыклад: TestScenario - Асноўны сцэнар выкарыстання мабільнага прыкладання

TestCase:

Прыклад: MainScreen - Раздзел аўтарызацыі - Увод лагіна

Разам мы бачым у summary кейса класічнае разуменне: "што, дзе, калі". Таксама візуальна мы падзяляем верхнеўзроўневыя тэставыя сцэнары і нізкаўзроўневыя тэст кейсы ў найбольш прыдатным для аўтаматызацыі выглядзе.

Тэг "StartScreen" (экран з якога пачынаецца TestScenario, таксама многія тэст кейсы могуць падзець суседнія экраны)

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

Ствараем новае поле:

TestRail - Індывідуальныя наладкі пад праект

Запаўняем кампаненты новага поля:

TestRail - Індывідуальныя наладкі пад праект

У дадзеным выпадку мы ствараем поле выбару са спісу значэнняў. Уводзім значэнні гэтага поля:

TestRail - Індывідуальныя наладкі пад праект

Звярніце ўвагу, што id значэнняў пачынаюцца не з адзінкі і ідуць не запар. Чаму так зроблена? Справа ў тым, што калі ў нас будуць запісаныя тесткейсы з уведзеным id,

TestRail - Індывідуальныя наладкі пад праект

і пасля гэтага нам спатрэбіцца стварыць трэці экран паміж двума існуючымі,

TestRail - Індывідуальныя наладкі пад праект

то нам давядзецца перапісаць id, і бо да яго ўжо прывязаныя тэгі існых тэкст кейсаў, то яны проста выдаляцца. Гэта будзе вельмі непрыемна.

Тэг "Screen" (назва экрана які закранае TestCase)

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

Прыклад: home_screen, MapScreen, PayScreen і г.д.

TestRail - Індывідуальныя наладкі пад праект

Поле «MovableData» (спасылка на проксі БД з змянянымі тэставымі дадзенымі)

Далей мы пастараемся вырашыць праблему падтрымкі актуальнасці дадзеных у тэсткейсах:

  1. Спасылкі на актуальныя макеты (гэта значна лепш, чым рабіць мёртвыя скрыншоты)

  2. Тыпавыя крокі да экрана з тэставай сітуацыяй

  3. SQL запыты

  4. Спасылкі на вонкавыя дадзеныя і іншыя дадзеныя

Замест прапісвання тэставых дадзеных усярэдзіне кожнага тэст кейса мы створым адзін вонкавы файл, і на ўсіх тэст кейсах зробім спасылку на яго. Пры абнаўленні гэтых дадзеных нам не давядзецца перабіраць усе тэст кейсы і змяняць іх, а можна будзе змяніць гэтыя дадзеныя толькі ў адным месцы. Калі хтосьці непадрыхтаваны адкрые тэст кейс, ён убачыць у целе тэст кейса спасылку на файлік і падказку, што трэба ў яго ісці за тэставымі дадзенымі.

Усе гэтыя дадзеныя мы спакуем у адзін вонкавы файлік, які будзе даступны ўсім жадаючым на праекце. Напрыклад можна выкарыстоўваць Google Sheet або Excel і наладзіць усярэдзіне файла пошук. Чаму менавіта гэтыя вендары? Справа ў тым, што мы адштурхваемся ад парадыгмы, што адкрыць і прайсці тэст кейс павінен змагчы любы чалавек у камандзе без неабходнасці папярэдне ўсякія тулзы ўсталёўваць.

Для Google Sheet можна выкарыстоўваць SQL запыты. Прыклад:

=query(DATA!A1:M1146;"
SELECT C,D
WHERE
C contains '"&SEARCH!A2&"'")

Для Пераўзыходзіць можна наладзіць зручныя макрасы імгненнага пошуку. (фільтрацыі) Прыклад па спасылцы.

Уласна ідэя не новая і апісана ў першай кніжцы тэсціроўшчыка "Тэставанне dot com". (аўтар Савін Раман) Мы толькі толькі інтэгруемся ў TestRail прапанаваныя Раманам Савіным методыкі. Для гэтага створым поле са спасылкай на створаны файлік:

TestRail - Індывідуальныя наладкі пад праект

запаўняем дэфолтнае значэнне спасылкі, каб у кожным новым тэст кейсе ўжо спасылка была:

TestRail - Індывідуальныя наладкі пад праект

Калі месцазнаходжанне вонкавага файла зменіцца (мы прадугледжваем любы форс мажор) то можна зручна ва ўсіх тэст кейсах адразу змяніць адно або некалькі палёў:

TestRail - Індывідуальныя наладкі пад праектTestRail - Індывідуальныя наладкі пад праект

Поле “Descriptions” (апісанне ці ідэя тэст кейса, тыпавыя інструкцыі)

Для чаго можа спатрэбіцца: У дадзенае тэкставае поле мы змесцім кароткае апісанне тэст кейса і тыпавыя інструкцыі.

Прыклад: Усе тэставыя дадзеныя (актуальныя макеты, выкарыстанне тулоў і іншыя дадзеныя) з дадзенага тэст кейса пазначаныя спасылкамі {…} і знаходзяцца ў файле MovableData. Спасылка на MovableData у адпаведным полі уверсе.

TestRail - Індывідуальныя наладкі пад праект

Тэг «Component» (кампанент мабільнага дадатку)

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

Прыклад кампанентаў: GooglePay, Order, Users, Map, Authorization і т.д.

TestRail - Індывідуальныя наладкі пад праект

Тэг «TAG» (Іншыя тэгі для фільтрацыі)

Тэгіраванне тэст кейса пазнакамі для адвольнага фільтравання. 

Вельмі карысна для: 

  1. хуткага складання TestRun для розных тыпавых задач: smoke, рэгрэс і г.д.

  2. ці будуць тэсты аўтаматызаваны ці ўжо аўтаматызаваны

  3. любыя іншыя тэгі

Прыклад: Smoke, Automated, WhiteLabel, ForDelete і г.д.

TestRail - Індывідуальныя наладкі пад праектTestRail - Індывідуальныя наладкі пад праект

Наладжваем парадак адлюстравання палёў у тэст кейсе

Мы стварылі шмат новых палёў, прыйшоў час размясціць іх у зручным парадку:

TestRail - Індывідуальныя наладкі пад праект

Стварэнне TestRun

Цяпер мы створым новы test run з актуальнымі кейсамі для правядзення smoke тэставання ў тры клікі:

TestRail - Індывідуальныя наладкі пад праект

Іншыя карысныя парады

  1. Калі ў TestRail некалькі праектаў, то не забывайце ствараць новыя палі толькі пад Ваш праект інакш калегі з суседніх каманд вельмі моцна здзівяцца з'яўленню новых незвычайных палёў. Магчымыя лакальныя непрытомнасці.

TestRail - Індывідуальныя наладкі пад праект

2. Кейсы з вялікай колькасцю палёў прасцей капіяваць з аналагічнай групы тыпу чым ствараць новыя:

TestRail - Індывідуальныя наладкі пад праект

3. Можна выкарыстоўваць уліковыя запісы сумесна. Напрыклад: адна адміністратарская, некалькі карыстацкіх.

Заключэнне

Вышэйапісаныя прыклады былі ўкаранёны на некалькі праектаў і паказалі сваю эфектыўнасць. Спадзяюся яны дапамогуць палепшыць Ваша разуменне дадзенай тулы і дапамогуць ствараць эфектыўныя і зручныя "тэстасховішча". Буду вельмі ўдзячны, калі Вы ў каментарах апішыце Ваш досвед выкарыстання TestRail і карысныя парады.

спасылкі:

Сайт вендара TestRail

Кніга: «Тэставанне .COM» (аўтар Раман Савін)

Дзякуй вялікі за ўвагу!

Крыніца: habr.com

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