JavaRush /Java блогу /Random-KY /Автоматташтырылган тестирлөө менен кантип баштоо керек, 1...

Автоматташтырылган тестирлөө менен кантип баштоо керек, 1-бөлүк

Группада жарыяланган
Сизди автоматташтырылган тестирлөөдө сапарын баштагандарга жардам берүү үчүн түзүлгөн онлайн программалык тестирлөө үчүн QA платформасынын негиздөөчүсү Тим Эбинин орусча адаптациясын окууга чакырабыз.
Автоматташтырылган тестирлөө менен кантип баштоо керек, 1-1-бөлүк
Биз рынокто веб-тиркемелердин санынын өсүшүн жана кызыгуунун өсүшүн көрүп жатабыз. Алар менен бирге программалоону, техникалык көндүмдөрдү жана ар кандай автоматташтыруу көндүмдөрүн талап кылган жумуш орундары көбөйөт. Натыйжада, кол менен тестирлөөчүлөр суроо-талапты сактап калуу үчүн таза кол менен тестирлөөдөн сапат кепилдигине (QA) өтүү зарылдыгын көрүп, автоматташтырылган тестирлөөнү карап жатышат. Кол менен тестирлөөдөн автоматташтырылган тестирлөөгө өтүү - акылдуу тандоо, анткени көптөгөн QA кызматтары code жазууга байланыштуу бир катар техникалык көндүмдөрдү талап кылат. Өзгөрүүнү жактырбагандар үчүн мындай өзгөртүү ыңгайсыз болушу мүмкүн. Башка иштеп чыгуучулар, экинчи жагынан, бул "өзгөрүү мезгorн" кийинки баскычка карьерасын жана көндүмдөрүн көтөрүү жана алардын актуалдуулугун жогорулатуу мүмкүнчүлүгү катары карашат. Талаптар көбөйгөн сайын мүмкүнчүлүктөр кеңейет. Туура көндүмдөр топтому бар иштеп чыгуучулар поездге секирип, мыкты, жакшы маяналуу карьерага ээ боло алышат. Эгер сиз кол менен тестирлөөдөн автоматташтырууга өтүүнү каалап жатсаңыз, ал тургай программалык камсыздоону иштеп чыгуунун башка тармагынан өтүүнү ойлонуп жатсаңыз, ийгorкке жетүү үчүн бир нече кадамдарды жасоонун мааниси бар.

1-кадам: Рынокту баалоо

Доктор Стивен А. Ковинин «Жогорку эффективдүү адамдардын 7 адаты» китебиндеги «Экинчи адат» деп айтылат : «Акырын эске алуу менен башта.» . Автоматташтырылган тестирлөөдөн баштоого келгенде бул принцип туура деп эсептейм. Автоматташтыруу боюнча инженерлерди жалдап жаткандардын муктаждыктарын рыноктук баалоодон баштаңыз. Иш берүүчүлөрдүн техникалык муктаждыктарын түшүнгөндөн кийин, тиешелүү көндүмдөрдү ала аласыз. Баштоо үчүн жакшы жер - бул каалаган сайттагы жумуш сүрөттөмөлөрүн карап көрүү (мисалы, Indeed.com , Dice , Monster , LinkedIn , ж.б.).
Автоматташтырылган тестирлөө менен кантип баштоо керек, 1-2-бөлүк
Бул жерде рыноктук баа түзүү үчүн колдонулушу мүмкүн издөө сөздөрдүн мисалдары келтирилген:
  • Сыноолорду автоматташтыруу боюнча инженер;
  • Automation Developer;
  • автоматташтырылган тестирлөө/сыноочу (автоматташтырылган тестирлөө) (Automation Testing/Automation Tester);
  • QA Automation Engineer ;
  • Сыноодо программалык камсыздоону иштеп чыгуу инженери (SDET).
Иш берүүчүлөр кандай ойлойт жана алар талапкерлерден эмнени күтөт, түшүнүү үчүн, издөө учурунда төмөнкү суроолорду эстен чыгарбаңыз:
  • Алар кандай конкреттүү көндүмдөрдү жана технологияларды айтып жатышат?
  • Сиз бул көндүмдөр үчүн көндүмдөрдүн же технологиялардын өзүнчө топтомун же "блогун" көрүп жатасызбы?
  • Канча жылдык тажрыйба керек, эгер бар болсо?
  • Башкаларга караганда автоматташтыруу боюнча инженерлерди көбүрөөк жалдаган айрым тармактар ​​барбы?
  • Кандай эмгек акы күтсө болот?
  • Бизди кызыктырган куралдар же технологиялар биринчи кезекте ачык жеткorктүүлүкбү же коммерциялык продуктыларбы?
Эми келгиле, базар эмне издеп жатканын сезүү үчүн бир нече жумуш сүрөттөмөлөрүн карап чыгалы. Сураныч, каралып жаткан жумуштар Америка Кошмо Штаттарында жайгашканын эстен чыгарбаңыз. Эгер сиз Америка Кошмо Штаттарында жашабасаңыз, анда өлкөңүздөгү жумуш издөө куралдарын карап чыгыңыз. Программалык камсыздоону автоматташтыруу боюнча иштеп чыгуучу I:
  • an objectиге багытталган программалоо тилдерин так түшүнөт ;
  • Jenkins , Test Complete, VersionOne, Git, Visual Studio, Oracle, MSSQL, Hyper-V, AQTime менен тааныш ;
  • Иштеп чыгуучулар, бизнес-аналитиктер жана башка тестирлөөчүлөр менен тыгыз кызматташып , иштелип чыккан программага талаптарды текшерүү үчүн колдонула турган тесттин автоматташтырылган компоненттерин аныктайт .
Автоматташтырылган тестирлөө менен кантип баштоо керек, 1-3-бөлүк
QA сыноочу (автоматташтырылган тестирлөө):
  • автоматташтырылган тесттерди тиешелүү version башкаруу системаларында сактайт - TFS, GitHub ж.б.;
  • автоматташтыруу үчүн алдын ала аныкталган автоматташтыруу стандарттарын жана DevOps стандарттарын , ошондой эле үзгүлтүксүз интеграциялоо жана жайылтуу процесстерин аткарат ;
  • ALM куралдары (TFS, Jira, HP QC) жана автоматташтыруу куралдарын сыноо (жакшы Selenium WebDriver) менен тажрыйба .
Сапатты камсыздоо боюнча автоматташтыруу боюнча инженер - QA ( Сапатты камсыздоо боюнча автоматташтыруу боюнча инженер ):
  • Selenium WebDriver менен тажрыйба ;
  • Python, Java же ушул сыяктуу тилдерде программалоо көндүмдөрү;
  • мобилдик тестирлөө тажрыйбасы / Appium .
Сыноочу программалык камсыздоону иштеп чыгуучу:
  • C#, TypeScript, JavaScript тилдеринде тестирлөө чөйрөсүн жана тестирлөө куралдарын жаңыртуу жана кеңейтүү ...;
  • C# же Java жана/же JavaScript тилдеринде күчтүү программалоо көндүмдөрү жана an objectке багытталган программалоо түшүнүктөрүн так түшүнүү ;
  • Visual Studio, Subversion, GitHub, Unity, Teamcity, Jira Cloud, Confluence менен тажрыйба.
Автоматташтырылган тестирлөө менен кантип баштоо керек, 1-4-бөлүк
Бул жерде бул жумуш сүрөттөмөлөрүнүн кээ бир негизги түшүнүктөрү бар. Гибриддик / Аралаштырылган ролдор: Жумуштун наамдарына жана бул компаниялар автоматташтырылган программалык камсыздоону сыноого кандай карайт. Муну алар тизмелеген ролдордун аталыштарынан көрүүгө болот (Программалык камсыздоону автоматташтыруу боюнча иштеп чыгуучу, Сыноодогу программалык камсыздоону иштеп чыгуучу ж.б. Үлгүгө көңүл бурсаңыз? Бул компаниялар аздыр-көптүр QA инженерлерин иштеп чыгуучулар деп аташат Программалык камсыздоо: Кол менен тестирлөөчүлөр үчүн бул убакыт келди дегенди билдирет. кол менен тестирлөө иштерин автоматташтырылган тест скрипттерине айландыруу үчүн codeду жазууну үйрөнүңүз. Автоматташтырылган тестирлөөгө өтүүнү көздөгөн иштеп чыгуучулар үчүн бул программалык камсыздоону тестирлөөнүн методологиялары, Программаны сыноонун жашоо цикли жөнүндө көбүрөөк билүү жана колдоо көрсөтүү үчүн автоматташтырылган тест учурларын кантип курууну үйрөнүү керек дегенди билдирет. бул жашоо циклдери. Бул маанилүү өзгөрүүнү өткөрүп жибербеңиз, болбосо артта каласыз. Agile методологияларынын жана Agile негизиндеги долбоорлордун өсүшү менен, барган сайын көбүрөөк уюмдар QA менен иштеп чыгуучуларды аралаштырып жатышат. Демек, сиз үчүн даярданууга убакыт келди. жаңы жоопкерчorктер. Программалык камсыздоону тестирлөө дүйнөсүндө негизги бorмге ээ болгон жана ошол эле учурда программалык камсыздоону иштеп чыгуучунун көндүмдөрүн жакшы түшүнгөн адамдар алтын менен бааланат. Open Source Technologies/Programming Languages: Сураныч, сыпаттамаларда кара тамга менен белгиленген технологияларга жана программалоо тилдерине көңүл буруңуз . Бул технологиялар жана тилдер багытталган, рынокто суроо-талапка ээ болуу үчүн, аларды үйрөнүү керек. Бир жогорку суроо-талапка ээ технологияны тандап, аларды практика жүзүндө колдонуп, реалдуу дүйнөдөгү, практикалык тиркемелерге жана долбоорлорго катышуу менен өз жөндөмүңүздү түзө баштаңыз. Бул сиздин окууну тездетет. Эгерде сиз кайсы программалоо тor менен баштоону билбей жатсаңыз , келгиле, талааны бир аз кыскарталы.

2-кадам: Объектке багытталган программалоо тorн (OOP) өздөштүрүү

Келгиле, ачык айталы: кол менен тестирлөөчүлөрдүн көбү программалоодон коркушат. Капоттун астына түшүү жана системалар менен тиркемелер чындыгында кантип иштээрин көрүү жөнүндө ой көптөгөн кол менен тестирлөөчүлөрдү коркутат. Бул коркуу, негизинен, алардын кол менен сыноочу болуп калышынын себеби.
Автоматташтырылган тестирлөө менен кантип баштоо керек, 1 - 5-бөлүк
Программалоо – автоматташтырылган тестирлөөнүн негизи. Эгер сиз автоматташтырылган тестирлөөгө өтүүнү кааласаңыз, codeдоону бorшиңиз керек жана программалоону канчалык жакшы билсеңиз, автоматташтырылган тестирлөөдө же автоматташтырууда ошончолук ийгorктүү болосуз. Ошондуктан, эгерде сиз бул дайыма өзгөрүп турган өнүгүү жана технология дүйнөсүндө атаандаштыкка жөндөмдүү болгуңуз келсе, анда бул коркунучту жеңип, талап кылынган автоматташтырылган тестти иштеп чыгуучу болууну чечишиңиз керек. Жакшы нерсе, тажрыйбалуу кесиптештин минималдуу жетекчorги менен, тырышчаактык жана туруктуулукту колдонуу, тынымсыз көнүгүү (JavaRushтагыдай) сиз сөзсүз түрдө программалоо жөндөмүңүздү өркүндөтө аласыз. Кийинки логикалык суроо: мен кайсы программалоо тorн үйрөнүшүм керек? Биздин рыноктук баалообуздун негизинде, биз иш берүүчүлөр "an objectке багытталган программалоо тилдерин жакшы түшүнгөн" адамдарды жумушка алууну каалаарын билебиз. Жана биздин анализибиз боюнча, биз алар шилтеме кылган бир нече an objectиге багытталган программалоо тилдерин көрө алабыз. Мисалы, Java, C#, JavaScript жана Python. Сиз алардын каалаганынан баштасаңыз болот. Эгерде сиз OOP тorн үйрөнө баштаган болсоңуз, автоматташтырылган тестирлөөдө жакшыраак өздөштүрүүгө жетишүү үчүн бул жерде бир нече түшүнүктөр бар:
  • an objectиге багытталган программалоо (класстар, an objectтер, инстанциялар, мурас, атрибут ж.б.);
  • Модулдар, Стандарттык китепканалар (кайсы тилде болбосун);
  • маалымат структуралары (сөздүктөр, тизмелер, кортеждер ж.б.);
  • маалымат түрлөрү (саптар, символдор, бүтүн сандар, калкыма чекит, логикалык же логикалык типтер, NoneType ж.б.);
  • өзгөрмөлөр;
  • ката/бөтөнчөлүк менен иштөө;
  • арифметикалык операторлор/артыкчылык тартиби;
  • салыштыруу, логикалык логикалык операторлор;
  • proceduresалар/функциялар/методдор;
  • башкаруу агымы: If операторлору, for циклдери, while циклдери ж.б.
  • окуу/файлдарга жазуу;
Программалоо – автоматташтырылган тестирлөөнүн негизи. Программалоону үйрөн, ошондо автоматташтырууга үйрөнөсүң.

3-кадам: Автоматташтыруу куралдарын өздөштүрүү

Мен муну айтам: канчалык жакшы программаласаң, ошончолук автоматташтыра аласың. Программалоо тorн үйрөнө баштагандан кийин, кийинки кадам автоматташтыруу куралдарын кантип колдонууну үйрөнүү болуп саналат. Анткени көпчүлүк компаниялар чыгашага байланыштуу коммерциялык лицензияланган өнүмдөрдүн ордуна ачык булактуу автоматташтыруу куралдарына (же бекер программалык камсыздоого) ыктап жатышат.
Автоматташтырылган тестирлөө менен кантип баштоо керек, 1-6-бөлүк
Коомдук доменде тапса болот сонун курал Selenium WebDriver болуп саналат. Селендин бир нече тилдик байланыштары бар (Python, Java, C#, Ruby, PHP, JavaScript, ж. Ишенимдүү, функционалдык жана эффективдүү автоматташтырылган тест учурларын түзүү үчүн бир нече негизги түшүнүктөрдү өздөштүрүү керек:
  • дизайн үлгүлөрү: бет an objectинин модели;
  • ар кандай локаторлор аркылуу веб-баракчанын элементтерин издөө (CSS Selector, XPATH, ID, Name, ж.б.);
  • Windows/iFrames которуу;
  • рефакторинг;
  • бирдикти сыноо;
  • булут тести/параллель тести;
  • маалыматтарды текшерүү;
  • ар кандай веб-браузерлерде тестирлөө (Firefox, Internet Explorer, Chrome, Safari, Opera, ж.б.);
  • жашыруун жана ачык күтүүлөр;
  • иш-аракеттердин чынжырлары
Эгер сиз an objectиге багытталган программалоо тorн тандап алган болсоңуз жана рынокту баалоо үчүн автоматташтыруу куралдарына таянган болсоңуз, анда кийинки логикалык кадам... Сиз эмне деп ойлойт элеңиз?...

4-кадам: Практика, практика, практика

Эмне кылба, эч качан таштаба. Жаңы нерсени үйрөнүү ар дайым кыйынчылык жаратат. Бирок ар бир кыйынчылыкты жетиштүү машыгуу жана берилгендик менен жеңсе болот. Жаңы көндүмдөрдү жана технологияларды өздөштүрүү үчүн канча убакыт талап кылынары толугу менен сизге жана бул көндүмдөрдү өздөштүрүү үчүн канчалык көп тажрыйба жана арналууга байланыштуу.
Автоматташтырылган тестирлөө менен кантип баштоо керек, 1-7-бөлүк
Ар бир профессионал спортсмен өзүнүн машыгуусу жана аракети менен саякаттын бийиктигине жеткенин айтат. Алар Майкл Джордан катуу ойногон, бирок андан да катуу машыккан дешет. Бул ыкманы автоматташтырууну каалагандардын баары кабыл алышы керек - жаңы жөндөмдөрүңүздү экинчи табиятка айланганга чейин көнүгүү, машыгуу, практикалоо. Бул сиздин жөндөмүңүздү өркүндөтүп, тестиер катары суроо-талапка ээ болуунун бирден-бир жолу. Окутуунун жакшы жолдорунун бири - бул программалоо тorн жана автоматташтыруу куралдарын бир эле учурда активдүү үйрөнүү, алар менен "ойноо". Башкача айтканда, кичинекей программаларды же автоматташтырылган тестирлөө скрипттерин жазыңыз, аларды бузуп, өзгөртүңүз жана анын азыр кандай иштээрин көрүңүз. Кылган нерсеңизден сабак алып, кайра аракет кылыңыз. Ойноо, жасоо жана үйрөнүү менен машыгыңыз. Муну кылсаңыз, окуу ийри сызыгыңыз жогорулайт.

баштоого убакыт

Жаңы бизнесте эң негизги нерсе – бул баштоо. Биз ар дайым создуктуруп же баштай албай калабыз, себеби биздин багытыбызды аныктоого жардам бере турган жол картасы же оюн планыбыз жок.
Автоматташтырылган тестирлөө менен кантип баштоо керек, 1-8-бөлүк
Карьераңыздын багытын түп-тамырынан бери өзгөртүүгө аракет кылуу коркунучтуу сезorши мүмкүн, бирок баалуу жана рыноктук болуу маанилүү. Сиз программалык камсыздоону иштеп чыгуунун дайыма өзгөрүп турган дүйнөсүндө калуу үчүн жаңы көндүмдөрдү иштеп чыгууңуз керек жана иш берүүчүлөр чындыгында издеген нерсе болушуңуз керек. Кичинеден баштаңыз: рыноктун талаптарын баалаңыз, an objectке багытталган программалоону жана автоматташтыруу куралдарын үйрөнүңүз жана тынымсыз машыгыңыз. Жана сиз муну биле электе жаңы жумуш мүмкүнчүлүктөрүнө даяр болосуз. Булак: https://simpleprogrammer.com/2017/07/28/start-automation-testing-part-1/
Комментарийлер
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION