
កំណែដែលមិនអាចទុកចិត្តបាននៃការតេស្តអ៊ីមែលមានតែខ្លី: បង្កើតអាសយដ្ឋាន, ចុចសម្រាកប្រាំវិនាទី, អានសារដំបូង, ហើយសង្ឃឹមថាវាសម្រាប់ការប្រតិបត្តិនេះ។
កំណែដែលអាចទុកចិត្តបាននៅតែសាមញ្ញ, ប៉ុន្តែវាគិតថាការដឹកជញ្ជូនជាអាសីនក្រូន។ វាបង្កើតអាសយដ្ឋានតែមួយ, កត់ត្រាពេលចាប់ផ្តើម, ស្ទង់មើលក្នុងពេលកំណត់, ផ្គូផ្គងសារដែលចង់បាន, ផ្ទៀងផ្ទាត់សកម្មភាពផលិតផល, ហើយរាយការណ៍ព័ត៌មានគ្រប់គ្រាន់នៅពេលមានកំហុស។
កុំដាក់កូនសោ API នៅក្នុង URL
ផ្ញើកូនសោ GPTMail នៅក្នុងក្បាល X-API-Key។ កុំដាក់វានៅក្នុងប៉ារ៉ាម៉ែត្រ ?api_key=។ URL ត្រូវបានរក្សាទុកជារឿយៗក្នុងប្រវត្តិរបស់កម្មវិធីរុករក, កំណត់ហេតុចូល, ប្រព័ន្ធតាមដាន, និងទិន្នន័យអ្នកយោង។
X-API-Key: YOUR_API_KEYរក្សាកូនសោនៅក្នុងកម្មវិធីគ្រប់គ្រងសម្ងាត់ CI របស់អ្នក និងបិទបាំងវានៅក្នុងកំណត់ហេតុ។ កូនសោសាធារណៈប្រចាំថ្ងៃមានភាពងាយស្រួលសម្រាប់ការស្វែងរក; ស៊ុមអូតូម៉ាតិកដែលបានគ្រប់គ្រងគួរប្រើកូនសោដែលអ្នកអាចតាមដានកូតា និងការប្រើប្រាស់។
ចំណុចចុង និងឧទាហរណ៍ចម្លើយបច្ចុប្បន្នត្រូវបានរក្សាទុកនៅលើ ទំព័រឯកសារ GPTMail API។
អាសយដ្ឋានមួយសម្រាប់ការប្រតិបត្តិមួយ
បង្កើតអាសយដ្ឋានថ្មីសម្រាប់ការតេស្តដែលអាចដំណើរការដោយឯករាជ្យរាល់មួយ។ កុំយកភាពត្រឹមត្រូវពីប្រអប់សំបុត្រដែលចែករំលែកដោយស៊ុមតេស្តទាំងមូល។
កត់ត្រាអាសយដ្ឋាន, លេខសម្គាល់សេណារីយ៉ូ, បរិស្ថាន, និងពេលចាប់ផ្តើមតេស្ត។ តម្លៃទាំងនេះអនុញ្ញាតឱ្យអ្នកច្រានចោលសារចាស់ និងវាយតម្លៃការប៉ះទង្គិចដោយមិនចាំបាច់កត់ហេតុសម្ងាត់សារ។
ស្ទង់មើលតាមពេលកំណត់, មិនមែនការសម្រាកថេរ
ពេលវេលាដឹកជញ្ជូនអ៊ីមែលមានការប្រែប្រួល។ ការសម្រាកប្រាំវិនាទីថេរនេះគឺសមនឹងការចំណាយពេលពេលដឹកជញ្ជូនលឿន និងមិនស្ថិតស្ថេរពេលវេលាដឹកជញ្ជូនយឺត។
ប្រើរង្វង់ដែលមានដែនកំណត់៖
deadline = now + 90 seconds
delay = 2 seconds
while now < deadline:
messages = list inbox
candidate = newest message matching sender, subject, and start time
if candidate exists:
read candidate and continue the product test
wait delay with a small random jitter
delay = min(delay * 1.5, 10 seconds)ពេលកំណត់ជាផ្នែកនៃកិច្ចសន្យាតេស្ត។ ដំណើរការកំណត់ពាក្យសម្ងាត់អាចត្រូវការកំណត់ពេលខុសពីការមើលជាមុននៃព្រឹត្តិប័ត្រព័ត៌មានច្រើន។ រក្សាកំណត់ឲ្យច្បាស់ ដើម្បីឲ្យភាពយឺតនៃអាស្រ័យមិនបន្ថែមពេលវេលាទាំងមូលនៃការងារ CI។
ផ្គូផ្គងយ៉ាងច្បាស់
“សារដំបូងក្នុងប្រអប់សំបុត្រ” មិនមែនជាអ្នកជ្រើសរើសដែលមានប្រយោជន៍។ ផ្គូផ្គងសញ្ញាច្រើន៖
- អ្នកទទួលស្មើនឹងអាសយដ្ឋានដែលបានបង្កើតសម្រាប់ការប្រតិបត្តិនេះ;
- ពេលបង្កើតក្រោយពេលចាប់ផ្តើម (trigger);
- អ្នកផ្ញើជាសេវាកម្មដែលបានរំពឹងទុក;
- ប្រធានបទ ឬ ប្រភេទសារផ្គូផ្គងនឹងដំណើរការ;
- លេខសម្គាល់សារ (message ID) មិនត្រូវបានប្រើរួចទេ។
នៅពេលអ្នកផ្ញើអាចចេញកូដច្រើន, ជ្រើសរើសសារថ្មីបំផុតដែលផ្គូផ្គង។ រក្សាទុកលេខសម្គាល់របស់វានៅក្នុងលទ្ធផលតេស្ត ដើម្បីការបង្វិលមិនអាចប្រើវាឡើងវិញដោយចៃដន្យ។
អានតែបន្ទាប់ពីផ្គូផ្គងបញ្ជី
ការបញ្ជីប្រអប់សំបុត្រគួរតែជាជំហានស្វែងរកដែលមានតម្លៃទាប។ ទាញយកសារពេញលេញតែសម្រាប់បេក្ខជនដែលបានជ្រើសរើស។ វាធ្វើឲ្យការងារដែលមិនចាំបាច់កាត់បន្ថយ និងជៀសវាងការបកស្រាយអ៊ីមែលផ្សព្វផ្សាយដែលមិនពាក់ព័ន្ធ។
ផ្ទៀងផ្ទាត់លទ្ធផលអាជីវកម្ម, មិនមែនតែការមានស្ទ្រីងប្រាំមួយលេខទេ។ ដាក់ស្នើកូដ ឬបើកតំណដែលរំពឹងទុក, បន្ទាប់មកបញ្ជាក់ថាគណនីឈានដល់ស្ថានភាពត្រឹមត្រូវ។
ដោះស្រាយកំណត់អត្រា (rate limits) ជាសញ្ញា
ប្រសិនបើ API ត្រឡប់ចម្លើយកូតា ឬកំណត់អត្រា, បញ្ឈប់ការប៉ុនបងបច្ចុប្បន្ន និងបង្ហាញព័ត៌មានកំណត់ឡើងវិញ។ ការបង្វិលយ៉ាងតឹងរ៉ឹងនឹងបម្លែងសញ្ញាសមត្ថភាពច្បាស់ទៅជាសំឡេងរំខាន និងអាចយឺតការតេស្តដែលមិនពាក់ព័ន្ធ។
កំណត់ភាពស្របគ្នានៅក្នុងកម្មវិធីដំណើរការតេស្ត, ជាពិសេសនៅពេលស៊ុមបង្កើតអាសយដ្ឋានច្រើនក្នុងពេលតែមួយ។ ក្រុមអ្នកធ្វើការ (worker pool) តូចជាងសង្ស័យស្ដាប់ស្ទង់មើលរាប់រយករណីនៅពេលតែមួយ។
សម្អាតដោយមិនលាក់កំហុស
ការសម្អាតគួរតែដំណើរការបន្ទាប់ពីបានចាប់យកភស្តុតាង។ នៅពេលជោគជ័យ, លុបសារ ឬអនុញ្ញាតឱ្យការរក្សាទុកខ្លីគ្រប់គ្រង។ នៅពេលបរាជ័យ, រក្សាអាសយដ្ឋាន និងលេខសម្គាល់សារ (message ID) ក្នុងសិទ្ធិ CI ដែលបានការពារ រយៈពេលគ្រប់គ្រាន់សម្រាប់ការស៊ើបអង្កេត, បន្ទាប់មកលុប។
កុំបោះពុម្ពកូដផ្ទៀងផ្ទាត់, តំណឯកជន, ឬតួអក្សរ HTML ពេញលេញទៅក្នុងកំណត់ហេតុសំណង់សាធារណៈ។
ធ្វើឱ្យការបង្វិលក្លាយជាដំណើរការដែលអាចធ្វើឡើងម្តងទៀតដោយមិនប៉ះពាល់
បង្វិលតេស្តជាការប្រតិបត្តិថ្មីជាមួយអាសយដ្ឋានថ្មី។ កុំសន្មតថាការធ្វើសំណើដដែលលើគណនី និងប្រអប់សំបុត្រដូចគ្នា នឹងចាប់ផ្តើមពីស្ថានភាពស្អាត។ អ្នកផ្ញើអាចធ្វើឲ្យកូដចាស់មិនមានសុពលភាព, កំណត់ល្បឿនសំណើដែលធ្វើឡើងម្តងទៀត, ឬបដិសេធការអញ្ជើញស្ទួន។
ប្រសិនបើសំណើបណ្តាញអស់ពេល, បំបែក “មិនទទួលបានចម្លើយ” ពី “ប្រតិបត្តិការមិនបានកើតឡើង”。 ពិនិត្យស្ថានភាពដែលអាចមើលឃើញមុនពេលចេញសំណើបង្វិលដែលអាចបំផ្លាញ។
រាយការណ៍ចំណុចកំហុស
កំហុសអូតូម៉ាតិកដែលមានប្រយោជន៍កំណត់មួយក្នុងចំណោមដំណាក់កាលទាំងនេះ៖
១. ការបង្កើតអាសយដ្ឋានបានបរាជ័យ;
២. សកម្មភាពផលិតផលបានបរាជ័យមុនពេលដាក់អ៊ីមែលក្នុងកំណត់ត្រា;
៣. មិនមានសារដែលត្រូវគ្នាមកមុនពេលកំណត់ពេលកំណត់;
៤. សារមកដល់ប៉ុន្តែមាតិកាមិនត្រូវគ្នា;
៥. សកម្មភាពផ្ទៀងផ្ទាត់បានបរាជ័យ;
៦. ការសម្អាតបានបរាជ័យ។
ការបែងចែកនេះបម្លែង “ការតេស្តអ៊ីមែលបរាជ័យ” ដែលមិនស្ថិតស្ថេរទៅជាការងារដែលក្រុមអាចទទួលខុសត្រូវ។
សម្រាប់ម៉ាត្រីសតេស្តធំជាងនេះ, អាន ផែនការតេស្តអ៊ីមែលពិតប្រាកដ។ សម្រាប់ការវិភាគការដឹកជញ្ជូន, ប្រើ អ៊ីមែលផ្ទៀងផ្ទាត់មិនមកដល់: រកជំហានខូច។