Тестирајте као Гоогле: Најбоље праксе из индустрије Гиантс (04.20.24)

<п> Од индустријских гиганата можемо много научити посматрајући њихове методе и приступе у току рада. <п> Како успевају да одрже процес тестирања софтвера у милионима линија кода? <п> Како организују ток рада са хиљадама КА инжењера? <п> Како се носе са проширењем пројекта? <п> Искуство компанија попут Гоогле-а или Спотифи-а може помоћи у побољшању процеса тестирања у малим компанијама и тимова. <п> Погледајмо ближе како дивови тестирају. Гоогле: важност покривања кодом <п> Ипак, многи инжењери расправљају о важности такве мере ефикасности тестирања софтвера као покривеност кодом. Гоогле-ови стручњаци инсистирају на томе да подаци о покривености кодом могу бити драгоцене информације за процену ризика и уских грла током тестирања. Царлос Аргуеллес, Марко Иванковић и Адам Бендер деле најбоље праксе за покривање кода: <ул><ли> <стронг> Покривеност кодом може помоћи у смањењу грешака и кварова. Искуство КА-инжењера из Гоогле-а показало је да повећање покривености кодом доводи до промена у приступима и ставовима према тестирању. Тимови којима је покривање кодом примарни циљ имају тенденцију да направе бољу проверивост својих производа. Они пишу ефикаснији код за тестирање како би постигли циљеве тестирања лакше и мање времена. <ли> <стронг> Користите тестирање мутација како бисте осигурали високу покривеност тестом. Потпуно покривање кода може бити расипно и не гарантује висококвалитетно покривање тестом. Висок проценат покривености кодом не значи да су све функције исправно тестиране. То значи да је код укупно тестиран. Да би осигурали висок квалитет покривености тестовима, Гоогле стручњаци препоручују коришћење тестирања мутација. Овај метод укључује примену малих промена кода и проверу како их скупови тестова идентификују. <ли> <стронг> Проценат покривености кодом зависи од многих фактора. Не би требало да тежимо великој покривености кодом, али мала покривеност доводи и до великог броја кварова. Питање је шта је специфично покривање кода за одређени систем? Да бисмо одговорили на ово питање, требало би да узмемо у обзир критичност, сложеност и учесталост промене кода. Покривеност кодом је пословна одлука, а власници производа би је требали дефинисати. <ли> <стронг> Анализирајте шта треба покрити. Не можемо добити 100% покривеност кодом, па би КА инжењери требали да примете да покривени су највреднији делови кода. Тим програмера треба да расправља и размишља не о томе колико је линија кода покривено, већ о томе шта је тачно покривено. Спотифи: поуздана стратегија<п> Спотифи је компанија која брзо расте. Основана је 2008. године са 150 запослених. У 2019. години број запослених порастао је на 4 405. Данас Спотифи опслужује око 300 милиона корисника широм света, што га чини најпопуларнијом услугом стриминга на свету. <п> Можемо научити лекције о томе како Спотифи скалира своје тестирање и развојни процеси. <ул> <ли> <стронг> Поставите циљеве производа за КА-тим. Спотифи има вишефункционалне тимове. Сваки тим има циљеве и скуп посебних вештина да би им приступио. Структура тима зависи од циљева. Стога се неки тимови састоје само од програмера, а неки имају програмере и тестере. Стога тестери тесно сарађују са развојним тимом и фокусирају се на примарне циљеве производа. Такав приступ омогућава Спотифи-у да ефикасно скалира развојни процес. <ли> <стронг> Аутоматско тестирање је алат, али не и лек. Менаџер за тестирање и развој у Спотифи-у Кристиан Карл тврди да тестере софтвера не може заменити аутоматизација. Тестирање захтева људско искуство и знање. Аутоматско тестирање је робусно средство за убрзавање процеса, али људи доносе одлуке и анализирају аутоматизоване извештаје. Спотифи користи аутоматизацију као један од алата за скалирање. Омогућава тестерима да оставе рутину за алгоритме и усредсреде се на циљеве производа. СпацеКс: континуирано тестирање је неопходно <п> СпацеКс је иновативна компанија позната по комерцијалном свемирском транспорту, систему лансирања за вишекратну употребу и висока ефикасност. <п> Ницхолас Цхаиллан, шеф софтверске службе за ваздухопловство, рекао је да је систем одељења за развој СпацеКс пет пута ефикаснији од компанија са класичним радним процесом. Како се СпацеКс са таквим перформансама носи са процесом тестирања? <п> ДевОпс и Агиле приступи омогућавају СпацеКс КА инжењерима да омогуће масовно тестирање аутоматизације. Кроз развојни циклус, тестери пружају континуирано тестирање како би добили тренутне повратне информације и елиминисали постојеће ризике. Стога раде проактивно, тестирају често и рано. <п> Компанија је развила стратегију како да примени континуирано тестирање у развојном процесу. <ли> <стронг> Одредите приоритет вредности. Као и Гоогле, СпацеКс препоручује употребу показатеља покривености кода да бисте разумели шта треба аутоматизовати, а шта не. Помаже у оптимизацији континуираног тестирања и побољшању већ предузетих активности. <ли> <стронг> Кључ је аутоматизовано тестирање од краја до краја. Учините анализу утицаја делом континуиране интеграције. Омогућава компанијама да анализирају како додавање нових функција или промена кода могу утицати на целокупан систем или неке делове његовог система. <ли> <стронг> Тим би требало да има стабилно и лако реплицирано тестно окружење. Алат попут Снимке виртуелних машина може вам помоћи да сачувате стање података, вратите се тестирању или наставите са радом. <ли> <стронг> Користите вештачку интелигенцију и машинско учење за анализу извештаја о тестирању. АИ алати засновани на убрзавању примене и оптимизацији процеса тестирања. <ли> <стронг> Изградите робусну архитектуру континуиране интеграције. Главна предност ЦИ система су кратки периоди између израде и тестова кода . Континуирано тестирање мора бити укључено у развојни процес и укључивати неопходне врсте тестирања. Резиме <п> Свака компанија има своју стратегију, поступак и приступе тестирања. Сваки тим бира и прилагођава поступак тестирања на основу крајњих циљева и могућности производа. Главни задатак било ког стручњака је размишљати о клијенту и крајњем кориснику, прилагодити се новим захтевима и усвојити искуство најбољих у индустрији.

Иоутубе видео: Тестирајте као Гоогле: Најбоље праксе из индустрије Гиантс

04, 2024