ការធ្វើតេស្តនៅលើពិភព DevOps

DevOps គឺជាការបញ្ចូលគ្នានៃការអនុវត្តការអភិវឌ្ឍន៍និងប្រតិបត្តិការសម្រាប់ការអភិវឌ្ឍន៍ផ្នែកទន់និងការចែកចាយ។

អ្នកសាកល្បងដែលពាក់ព័ន្ធនឹងគំរូនៃការចែកចាយ DevOps ចាប់ផ្តើមសួរសំណួរដូចជា៖

  • តើតេស្តសាកសមនឹងគំរូ DevOps នៅឯណា?
  • តើតេស្តនិង QA នៅក្នុង DevOps ខុសគ្នាយ៉ាងណាពីការធ្វើតេស្តក្នុងម៉ូដែល Agile និងទឹកជ្រោះ?
  • ក្នុងនាមជា QA តើជំនាញអ្វីដែលខ្ញុំរំពឹងដឹង?

អត្ថបទនេះពិភាក្សាអំពីឧបករណ៍យុទ្ធសាស្រ្តនិងការអនុវត្តដែលយើងត្រូវការដើម្បីអនុវត្តដើម្បីសាកល្បងប្រកបដោយប្រសិទ្ធភាពនៅក្នុងពិភព DevOps ដោយទទួលយកស្វ័យប្រវត្តិកម្មនិងការសាកល្បងជាបន្តបន្ទាប់នៅក្នុង DevOps ។




សំណួរនិងការសាកល្បងនៅ DevOps

តើការធ្វើតេស្តបានវិវត្តពីទឹកជ្រោះទៅជារហ័សរហួនទៅនឹង DevOps យ៉ាងដូចម្តេច?

គំរូទឹកជ្រោះ

ការអនុវត្តការធ្វើតេស្តនិងការធានាគុណភាពបានមើលឃើញពីការផ្លាស់ប្តូរគួរឱ្យកត់សម្គាល់ចាប់ពីថ្ងៃទឹកជ្រោះ Agile និងឥឡូវនេះ DevOps ។ នៅក្នុងគំរូទឹកជ្រោះការធ្វើតេស្តត្រូវបានគេមើលឃើញថាជាដំណាក់កាលមួយនៃវដ្តនៃការអភិវឌ្ឍសូហ្វវែរ។ អ្នកធ្វើតេស្តនិងកិច្ចខិតខំប្រឹងប្រែងធ្វើតេស្ត៍ស្ងាត់ស្ងៀមខ្លាំងណាស់នៅពេលដែលអ្នកសាកល្បងប្រើជាផ្នែកមួយនៃក្រុមសាកល្បងហើយជារឿយៗបែកចេញពីក្រុមអភិវឌ្ឍន៍។


អ្នកសាកល្បងជាកម្មសិទ្ធិ យុទ្ធសាស្ត្រសាកល្បង ហើយត្រូវបានគេមើលឃើញថាជាអ្នកថែរក្សាទ្វារដែលមានគុណភាព។ ការធ្វើតេស្តគឺភាគច្រើនដោយដៃហើយត្រូវបានគេប្រើដើម្បីកើតឡើងបន្ទាប់ពីកម្មវិធីត្រូវបានបង្កើតឡើងយ៉ាងពេញលេញនិងមុនពេលបញ្ចេញទៅផលិតកម្ម។

ដូចគ្នានេះដែរសូហ្វវែរប្រើពេលយូរដើម្បីចែកចាយ។ ក្រុមប្រតិបត្ដិការដាច់ដោយឡែកមួយទទួលខុសត្រូវចំពោះការចេញផ្សាយកម្មវិធីទៅផលិតកម្មដែលល្អបំផុតបានកើតឡើងរៀងរាល់ពីរបីខែម្តង។ មិនមានកម្រិតនៃការប្រាស្រ័យទាក់ទង / សហការគ្នារវាងក្រុមការងារ Ops និងក្រុម Dev ទេ។

ម៉ូដែល Agile

ម៉ូដែល Agile បានបង្កើតការផ្លាស់ប្តូរកន្លែងអភិវឌ្ឍន៍និងសាកល្បងក៏ដូចជាភាពញឹកញាប់នៃការចេញផ្សាយ។ សូហ្វវែរត្រូវបានបង្កើតឡើងជាបន្តបន្ទាប់។ Scrum ដែលជាវិធីសាស្រ្តក្នុងគំរូចែកចាយ Agile បានក្លាយជាការពេញនិយមយ៉ាងឆាប់រហ័ស។

កិច្ចខិតខំប្រឹងប្រែងអភិវឌ្ឍន៍ត្រូវបានបំបែកទៅជាស៊េរីខ្លីៗដែលជាធម្មតាមានរយៈពេល ២-៤ សប្តាហ៍។ ការនិយាយឡើងវិញនីមួយៗអាចបង្កើតកម្មវិធីដែលអាចផ្លាស់ប្តូរបានដោយបន្ថែមថ្មីឬបង្កើនលក្ខណៈពិសេសដែលមានស្រាប់។


អ្នកធ្វើតេស្ត៍បានក្លាយជាផ្នែកមួយនៃក្រុមអភិវឌ្ឍន៍ហើយការសាកល្បងបានក្លាយជាសកម្មភាពស្របគ្នាទៅនឹងការអភិវឌ្ឍកម្មវិធីជាជាងដំណាក់កាលមួយនៅចុងបញ្ចប់នៃអេឌីស៊ីស៊ី។ សកម្មភាពតេស្តនេះបានក្លាយជាការទទួលខុសត្រូវរួមគ្នានិងគុណភាពត្រូវបានគ្រប់គ្រងដោយក្រុមអភិវឌ្ឍន៍។

គំរូ Agile បានអនុវត្តការអភិវឌ្ឍនិងការសាកល្បងហើយបានត្រួសត្រាយផ្លូវសម្រាប់ការផ្តល់កម្មវិធីលឿនជាងមុនទោះជាយ៉ាងណាក៏ដោយការដាក់ពង្រាយជាក់ស្តែងទៅផលិតកម្មនៅតែត្រូវបានធ្វើឡើងដោយក្រុម TechOps ដាច់ដោយឡែក។

ខណៈពេលដែលក្រុម TechOps នឹងមានចំនេះដឹងអំពីម៉ាស៊ីនមេបណ្តាញនិងការដាក់ពង្រាយជាធម្មតាពួកគេមិនយកចិត្តទុកដាក់ចំពោះព័ត៌មានលំអិតនៃការចេញផ្សាយនីមួយៗទេ។ មតិត្រឡប់ទៅក្រុមអភិវឌ្ឍន៍យឺត។ ប្រសិនបើមានកំហុសកើតឡើងនៅក្នុងការចេញផ្សាយជាធម្មតាវានឹងចំណាយពេលពីរបីម៉ោងដើម្បីឱ្យក្រុមអភិវឌ្ឍន៍ដឹងអំពីបញ្ហានេះ។

ម៉ូដែល DevOps

DevOps នាំយកគំរូរបស់ Agile មួយជំហានទៀតដោយនាំមកនូវសកម្មភាពនៃការចេញផ្សាយនិងការដាក់ពង្រាយឱ្យកាន់តែជិតស្និទទៅនឹងការអភិវឌ្ឍន៍និងការសាកល្បង។ នេះមានន័យថាក្រុមដែលមានភាពវាងវៃដោយខ្លួនឯងទទួលខុសត្រូវចំពោះការអភិវឌ្ឍសាកល្បងនិងដោះលែងកម្មវិធីដែលពួកគេបង្កើត។




យុទ្ធសាស្រ្តសាកល្បង DevOps

ការសាកល្បងនៅ DevOps លាតសន្ធឹងលើការអភិវឌ្ឍន៍កម្មវិធីនិងអាយុកាលនៃការចែកចាយ។ អ្នកសាកល្បងលែងផ្តោតលើការធ្វើតេស្តមុខងារនិងការផ្ទៀងផ្ទាត់មុខងារ។

ក្នុងនាមជាអ្នកសាកល្បងយើងក៏គួរតែចូលរួមក្នុងការសាកល្បងប្រតិបត្ដិការធ្វើតេស្តការធ្វើតេស្ត៍សុវត្ថិភាពមូលដ្ឋានក៏ដូចជាអាចតាមដាននិងវិភាគទិន្នន័យផលិតកម្មនិងកំណត់ហេតុ។

Dan Ashby មានមួយ ការប្រកាសដ៏ល្អបំផុត អំពីការសាកល្បងនៅ DevOps ដែលគាត់ពិពណ៌នា

អ្នកអាចដឹងពីមូលហេតុដែលមនុស្សព្យាយាមយល់ពីកន្លែងដែលការសាកល្បងសាកសមនឹងគំរូដែលមិនបាននិយាយអំពីវា។ សម្រាប់ខ្ញុំការសាកល្បងសាកសមនឹងចំនុចនីមួយៗនៃគំរូនេះ។


ជាការពិតការធ្វើតេស្តអាចនិងគួរតែកើតឡើងនៅដំណាក់កាលនីមួយៗក្នុងគំរូ DevOps ។ ក្នុង ការប្រកាសយុទ្ធសាស្ត្រសាកល្បងរហ័ស យើងបានពិពណ៌នាអំពីរបៀបដែលការសាកល្បងសាកសមនឹងគំរូរបស់ Agile ។

យុទ្ធសាស្រ្តសាកល្បងរបស់ DevOps អាចពង្រីកវាបានដោយបន្ថែមផ្នែកដូចខាងក្រោមៈ

ការធ្វើស្វ័យប្រវត្តិកម្មនិងការធ្វើតេស្តបន្តនៅក្នុង DevOps

ជម្រើសនៃឧបករណ៍និងបច្ចេកវិទ្យាកាន់តែមានសារៈសំខាន់នៅក្នុងគំរូ DevOps ។ ជម្រើសនៃឧបករណ៍អនុញ្ញាតឱ្យសមត្ថភាពរបស់អង្គភាពក្នុងការផ្តល់ពាក្យសុំនិងសេវាកម្មក្នុងល្បឿនលឿន។


មានការសង្កត់ធ្ងន់កាន់តែខ្លាំងទៅលើការសាកល្បងស្វ័យប្រវត្តិកម្មនៅក្នុង DevOps ព្រោះយើងចង់បង្កើតវប្បធម៌មួយដែលយើងអាចរុញច្រានកូដនានាចេញពីប្រព័ន្ធបានយ៉ាងឆាប់រហ័សនិងប្រកបដោយទំនុកចិត្ត។

ក៏ដូចជាការធ្វើតេស្តមុខងារស្វ័យប្រវត្តិកម្មយើងក៏គួរតែមានសំណុំនៃការធ្វើតេស្តការអនុវត្តក៏ដូចជាការធ្វើតេស្តសុវត្ថិភាព / ភាពធន់នៅក្នុងបំពង់ចែកចាយ។

មិនចាំបាច់និយាយទេមុនពេលអាចអនុវត្តការសាកល្បងស្វ័យប្រវតិ្តខាងលើណាមួយដំបូងនិងសំខាន់បំផុតគឺការកសាងបំពង់បង្ហូរនិងការបញ្ជូនដោយស្វ័យប្រវត្តិនៅក្នុងឧបករណ៍សមាហរណកម្មបន្តដូចជាជេនឃីន។

សាកល្បងនៅក្នុងផលិតកម្ម

ការសាកល្បងក្នុងផលិតកម្មមិនមានន័យថាប្រតិបត្តិស្គ្រីបសាកល្បងមុខងារ / ដំណើរការរបស់អ្នកប្រឆាំងនឹងប្រព័ន្ធផ្សាយផ្ទាល់ដែលអ្នកប្រើប្រាស់កំពុងប្រើកម្មវិធីនោះទេ។

យើងអាចចាប់ផ្តើមដោយវិភាគនិន្នាការនៅក្នុងការធ្វើតេស្ត A / B ឬពហុពិសោធន៍។ យើងក៏អាចត្រួតពិនិត្យម៉ាស៊ីនមេសម្រាប់ឥរិយាបថចម្លែកណាមួយដូចជាការលេចធ្លាយអង្គចងចាំការប្រើប្រាស់ស៊ីភីយូខ្ពស់។ ល។



ផលប៉ះពាល់នៃ DevOps លើការធ្វើតេស្ត

តើអ្វីៗទាំងអស់នេះបានផ្លាស់ប្តូរតួនាទីរបស់អ្នកសាកល្បងនិងតេស្តនៅក្នុង DevOps យ៉ាងដូចម្តេច?

ឥឡូវអ្នកធ្វើតេស្តត្រូវបានគេរំពឹងថានឹងមានចំណេះដឹងនិងជំនាញយ៉ាងហោចណាស់ដើម្បីអាចអនុវត្តសកម្មភាពសាកល្បងប្រកបដោយប្រសិទ្ធភាព

  • ចំណេះដឹងអំពីបណ្តាញមូលដ្ឋាន
  • យូនីកមូលដ្ឋាន / ស្គ្រីបសែលឧ។ bash, ពស់ថ្លាន់
  • ការធ្វើសមាហរណកម្មបន្ត / ការដឹកជញ្ជូនជាបន្តបន្ទាប់ឧ។ ជេនគីន,
  • ឧបករណ៍សាកល្បងការសម្តែងដូចជា JMeter ឬ Gatling
  • ត្រៀមខ្លួនសម្រាប់ការសាកល្បងប្រតិបត្តិការនិងភាពធន់
  • ចំណេះដឹងអំពីកុងតឺន័រផែកឃឺរគូប៊ូដេត
  • ឧបករណ៍ត្រួតពិនិត្យសំណួរដូចជា Splunk
  • សេវាកម្មពពកឧ។ អេសអេសអាហ្សូស

ជម្រើសកម្មវិធីនិពន្ធរបស់

អត្ថបទគួរឱ្យចាប់អារម្មណ៍