តេស្តទំនើប - ការវិវឌ្ឍន៍នៃតួនាទី QA

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

ទោះយ៉ាងណាក៏ដោយនៅតែមានការយល់ច្រឡំដ៏ធំនិងការយល់ឃើញមិនត្រឹមត្រូវអំពីតួនាទីរបស់អ្នកសាកល្បងនិងការធានាគុណភាពទាំងមូល។

នៅក្នុងអត្ថបទនេះយើងក្រឡេកមើលថាតើការធ្វើតេស្តបានវិវត្តយ៉ាងដូចម្តេចជាពិសេសនៅក្នុងទសវត្សចុងក្រោយនេះនិងអ្វីដែលអ្នកជំនាញ QA ត្រូវធ្វើដើម្បីបន្តការប្រកួត។

ការសាកល្បងអាចទទួលបានការចាប់អារម្មណ៍កាន់តែច្រើន!

ខណៈពេលដែលសកម្មភាពសាកល្បងកម្មវិធីត្រូវបានផ្លាស់ប្តូរដើម្បីសម្របខ្លួនទៅនឹងវិធីថ្មីនៃការងារខ្ញុំនៅតែមើលឃើញទស្សនៈចាស់ៗជាច្រើនលើការធ្វើតេស្តនិងតួនាទីរបស់ QA ។

វាជាការគួរឱ្យសង្វេគដែលបានឃើញថាមានមនុស្សជាច្រើននៅក្នុងឧស្សាហកម្មអាយធីដែលមើលឃើញ QAs ឬ Testers ជាជួរសំខាន់។ អ្នកធ្វើតេស្ត៍ត្រូវបានគេមើលឃើញថាគ្រាន់តែជាអ្នកសាកល្បងមុខងារប៉ុណ្ណោះដែលសាកល្បងនៅពេលដែលអ្នកអភិវឌ្ឍន៍បានធ្វើការលើលក្ខណៈណាមួយ។ “ ការធានាគុណភាព” ត្រូវបានគេដឹងថាជាការសាកល្បងការស្វែងរកនិងរាយការណ៍អំពីកំហុសនិងការផ្តល់ភ្លើងខៀវសម្រាប់ការដោះលែង។

អ្វីដែលគួរឱ្យព្រួយបារម្ភជាងនេះទៅទៀតនោះគឺថាការយល់ឃើញរបស់តួនាទី QA គឺសំខាន់បំផុតក្នុងចំណោមអ្នកសាកល្បងនិងអ្នកជំនាញ QA ដោយខ្លួនឯង។

ការធ្វើតេស្តផ្នែកទន់តាមបែបប្រពៃណី

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

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

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

QA នៅក្នុងយុគសម័យ Agile

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

ក្នុងករណីខ្លះវាពិបាកនឹងមើលឃើញពីភាពខុសគ្នារវាង 'អ្នកសាកល្បង' និង 'អ្នកអភិវឌ្ឍន៍' ព្រោះថាពួកគេម្នាក់ៗមានសមត្ថភាពអនុវត្តសកម្មភាពរបស់គ្នាទៅវិញទៅមក។

“ គុណភាព” ឈប់ក្លាយជាទំនួលខុសត្រូវតែមួយគត់របស់អ្នកសាកល្បងហើយបានក្លាយជាការទទួលខុសត្រូវរួមគ្នារបស់មនុស្សគ្រប់គ្នាដែលពាក់ព័ន្ធក្នុងការអភិវឌ្ឍនិងចែកចាយផលិតផល។

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

ការផ្តោតអារម្មណ៍បានផ្លាស់ប្តូរពីការស្វែងរកភាពខ្វះចន្លោះនៅក្នុងកម្មវិធីដែលបានបង្កើតឡើងដើម្បីការពារពីការខ្វះខាតពីការចូលទៅក្នុងកម្មវិធីដំបូង។

ជាមួយនឹងគោលដៅរួមដើម្បីធានាថាមិនត្រឹមតែផលិតផលឬមុខងារមានមុខងារនិងបំពេញតាមតម្រូវការប៉ុណ្ណោះទេប៉ុន្តែវាក៏សមនឹងគោលបំណងនិងផ្តល់នូវការពេញចិត្តខ្ពស់របស់អ្នកប្រើប្រាស់ផងដែរ។

ពាក់ព័ន្ធ៖

ការចូលរួមរបស់អ្នកសាកល្បងក្នុងការកែសំរួលសាច់រឿងការពិនិត្យឡើងវិញនូវលេខកូដមិត្តរួមការធ្វើតេស្តិ៍ឯកតានិងការអនុវត្តន៍ផ្សេងៗដូចជា TDD, BDD និងការធ្វើតេស្តជាបន្តដែលធានាថាការធ្វើតេស្តនិងគុណភាពគឺស្ថិតនៅជួរមុខហើយត្រូវបានបញ្ចូលទៅក្នុងការអភិវឌ្ឍន៍

ប៉ុន្តែខណៈពេលដែលអាហ្គ្រីលបានធ្វើដំណើរដ៏វែងដើម្បីបញ្ចូលសកម្មភាពនិងការអនុវត្តនៃការអភិវឌ្ឍន៍និងការសាកល្បងក្រុមប្រតិបត្តិការនៅតែស្ងាត់ស្ងៀម។ ការងារស្ទ្រីមពីរ (ឌីសនិងអូប) ច្រើនតែមិនដឹងពីសកម្មភាពរបស់គ្នា។

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

សូមស្វាគមន៍មកកាន់ DevOps

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

DevOps អនុញ្ញាតឱ្យវិធីសាស្រ្តនៃការធ្វើសមាហរណកម្មជាបន្តបន្ទាប់និងការផ្តល់តម្លៃដល់អ្នកប្រើប្រាស់ចុងក្រោយ។

ចលនា DevOps បានជំរុញទស្សនវិស័យថ្មីលើការសាកល្បងនិងបង្កើតឱកាសថ្មីៗសម្រាប់អ្នកសាកល្បងខ្លួនឯង។

នៅក្នុងអ្នកសាកល្បងយុគសម័យថ្មីនេះចាំបាច់ត្រូវមានទាំងផ្នែកអភិវឌ្ឍន៍និងប្រតិបត្តិការ។

ការសាកល្បងដែលនៅសល់មិនត្រូវបានកំណត់ចំពោះផលិតផលនោះទេប៉ុន្តែក៏ជាការសាកល្បងហេដ្ឋារចនាសម្ព័ន្ធដែលផលិតផលត្រូវបានប្រតិបត្តិនៅទីបំផុត។

ការធ្វើសមាហរណកម្មជាបន្តបន្ទាប់ (ស៊ីអ៊ី) និងការចែកចាយបន្ត (ស៊ីឌី) បានក្លាយជាស្តង់ដារជាក់ស្តែងក្នុងការអភិវឌ្ឍនិងការចែកចាយសូហ្វវែរហើយដូច្នេះការខិតខំសាកល្បងភាគច្រើនត្រូវបានចំណាយលើការធានាបំពង់ស៊ីអាយអេសបរិស្ថាននិងហេដ្ឋារចនាសម្ព័ន្ធ។

នេះគឺជាឆ្អឹងខ្នងដែលគាំទ្រទាំងការអភិវឌ្ឍនិងការសម្រាល។

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

ការធ្វើតេស្ត៍ទំនើប - ការអភិវឌ្ឍន៍ដោយជំរុញដោយគុណភាព

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

QAs ភាគច្រើនមិនបានដឹងពីសារៈសំខាន់នៃតួនាទីរបស់ពួកគេនិងផលប៉ះពាល់ដែលពួកគេអាចមានចំពោះការអភិវឌ្ឍន៍និងការចែកចាយឡើយ។

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

ការធ្វើតេស្ត៍ជាអាជីពនិងតួនាទីរបស់អ្នកសាកល្បងត្រូវបានគេសាកល្បងអស់មួយរយៈជាមួយនឹងការកើនឡើងនៃ“ តេស្តស្វ័យប្រវត្តិ” ។ ហើយពិតអ្នកជំនាញឧស្សាហកម្មជាច្រើននៅតែជឿជាក់ថាតួនាទីរបស់អ្នកសាកល្បងគឺគ្រាន់តែសាកល្បងកម្មវិធីដែលអ្នកអភិវឌ្ឍន៍បង្កើតប៉ុណ្ណោះដែលទាំងអស់នេះអាចត្រូវបានធ្វើដោយស្វ័យប្រវត្តិ។

ប្រសិនបើអ្នកអភិវឌ្ឍន៍មានភាពល្អប្រសើរនិងមានបទពិសោធច្រើនក្នុងការសរសេរកូដដែលត្រូវការសម្រាប់ការសាកល្បងស្វ័យប្រវត្តិបន្ទាប់មកតើមានអ្វីដែលត្រូវការសម្រាប់អ្នកធ្វើតេស្តលើក្រុម?

វាដល់ពេលហើយដែលយើងផ្លាស់ប្តូរការយល់ឃើញនោះ។ យើងត្រូវទទួលស្គាល់ភាពខុសគ្នានៃតម្លៃនិងជំនាញរវាង“ ការធ្វើតេស្ត” និង“ ការធានាគុណភាព” ដែលការធ្វើតេស្តគឺជាការផ្ទៀងផ្ទាត់មុខងារនិងសុពលភាពនៃសូហ្វវែរការធានាគុណភាពមិនមែនជាសកម្មភាពតែមួយទេ។ QA គឺជាដំណើរការជាបន្តបន្ទាប់រួមទាំងការធ្វើតេស្តនិងការអនុវត្តល្អបំផុតដើម្បីធានាថាផលិតផលដែលមានគុណភាពត្រូវបានចែកចាយសម្រាប់អ្នកប្រើប្រាស់។

យើងត្រូវតែខិតខំដើម្បីការអភិវឌ្ឍដែលមានគុណភាពនិងមើលវិជ្ជាជីវៈ QA ដែលជាមុខងារស្នូលនិងស្នូលក្នុងការអភិវឌ្ឍនិងការចែកចាយកម្មវិធីដូច្នេះ តេស្តទំនើប

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

តើនរណាជាម៉ូឌែល QA

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

វាតម្រូវឱ្យមានការយល់ដឹងទូលំទូលាយអំពីបញ្ហាប្រឈមនៃការអនុវត្តការសរសេរកូដការកោតសរសើរពីវិធីដាក់ពង្រាយនិងបរិស្ថានក៏ដូចជាការអនុវត្តនិងស្តង់ដារសុវត្ថិភាពវិធីសាស្ត្រនិងបញ្ហាប្រឈម។

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

អង្គុយនៅកណ្តាលនៃគម្រោងណាមួយ QA សម័យទំនើបគួរតែមានការយល់ដឹងល្អអំពីស្ថាបត្យកម្មការសម្តែងសន្តិសុខនិងការផ្តល់ពពកមានសម្លេងខាងបច្ចេកទេសនិងមានបំណងប្រាថ្នារៀនបច្ចេកវិទ្យាថ្មីដើម្បីស្ថិតក្នុងហ្គេម។

សម្គាល់ៈតំបន់មួយផ្សេងទៀតដែលកំពុងក្លាយជាការពេញនិយមយ៉ាងខ្លាំងនិងការធ្វើតេស្តគុណភាពទិន្នន័យចាំបាច់ការធ្វើតេស្តទិន្នន័យធំបឹងទិន្នន័យនិងឃ្លាំងទិន្នន័យ។

ពេលវេលាបានមកដល់ហើយដើម្បីផ្លាស់ប្តូរការយល់ឃើញរបស់តួនាទី QA និងអ្វីដែលអ្នកសាកល្បងធ្វើ។ នេះត្រូវចាប់ផ្តើមពីអ្នកសាកល្បងខ្លួនឯង។ ចំណុចចាប់ផ្តើមគឺត្រូវយកចិត្តទុកដាក់ខ្ពស់ចំពោះគុណភាព។

អ្នកធ្វើតេស្ត៍មិននៅទីនោះគ្រាន់តែដើម្បីអនុវត្តមុខងារសាកល្បងនិងរាយការណ៍កំហុស។ តួនាទី QA គឺធំជាងនេះទៅទៀត។ យើងត្រូវបានដាក់នៅលើគម្រោងទៅ ធានាបាននូវការអនុវត្តប្រកបដោយគុណភាព

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

ដើម្បីមានចំនេះដឹងជិតស្និទ្ធនោះយើងត្រូវរៀនបន្តនិងថែរក្សាបច្ចេកវិទ្យាថ្មីៗនិងវិធីនៃការធ្វើការ។ អ្វីដែលសំខាន់ QAs ចាំបាច់ត្រូវចេះសម្របខ្លួន។

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