The pragmatic programmer စာအုပ်ဖတ်ပြီးတော့ ကိုယ့်ဘာသာကိုယ် ပြန်မေးမိတဲ့ မေးခွန်းက
အခြား တစ်ယောက် က ငါ program ထဲမှာ bugs ရှာတွေ့ ရင် ငါ ရှက်မိသလား ?
ရုတ်တရက် ဖြေမိရင်တော့ မရှက်မိဘူး။ Program တိုင်းမှာ bug ရှိတာပဲ။ bug ဖြစ်ရင် ပြန်ပြင်ပေါ့လို့ ပဲ လွယ်လွယ် ဖြေမိမှာပဲ။ The Pragmatic Programmer ဖတ်ပြီးတဲ့ အခါမှာ bug ရှိနိုင်ပေမယ့် လျော့ချနိုင်တယ်။ Testing အပိုင်းမှာ developer တွေ ရဲ့ ပေါ့လျော့တာကြောင့် bug များရခြင်း ဆိုရမယ်။ ဒါဟာ ရှက်စရာ ဆိုတာကို သဘောပေါက်လာတယ်။
ကျွန်တော်တို့ project တစ်ခုကို ပြီးဖို့ကို အဓိက ထားပြီးတော့ ရေးပါတယ်။ အဓိကပြီးမှသာ test ကိစ္စကို သွားပါတယ်။ အများအားဖြင့် ကိုယ်ပိုင် timeline ကို သတ်မှတ်တဲ့ အခါမှာ test လုပ်ဖို့ အချိန် ကို ထည့်မစဉ်းစားကြပါဘူး။ နောက်ပြီးတော့ Unit Testing ကိုလည်း ထည့် မရေးကြပါဘူး။
ဒါကြောင့် ပြီးပြီ ဆိုပြီး ပျော်နေရုံပဲ ရှိသေးတယ် Bugs List ကြီး ကို မြင်ပြီး စိတ်ဓာတ်ကျတဲ့ အခါတွေ ခဏခဏ ကြုံရတတ်တယ်။ အဓိက ကျွန်တော်တို့ developer တွေ ရဲ့ ပြဿနာက ကိုယ့် code ကို ကိုယ်တိုင် သေချာ test မလုပ်တာပဲ။ Test လုပ်တဲ့ အခါမှာလည်း မှန်ကန်တဲ့ data တွေကိုပဲ ထည့်သွင်းပါတယ်။ Developer တစ်ယောက် အနေနဲ့ test လုပ်တဲ့ အခါမှာ ကိုယ့် code မှန် မ မှန်ပဲ စမ်းသပ်ပါတယ်။ ကိုယ်ရေးထားတဲ့ code တွေက ကိုယ်ထင်တဲ့ အတိုင်း အလုပ်မလုပ်ပဲ စမ်းသပ်တယ်။ ဒါကြောင့် ပြဿနာ ဖြစ်ရပါတယ်။ တကယ်တော့ Test လုပ်တဲ့ အခါမှာ ကိုယ့် code ဆိုတာကို မေ့ပြီးတော့ ကိုယ့် App မဟုတ်ဘူးလို့ သဘောထားပြီး စမ်းကြည့်ဖို့လိုပါတယ်။
တစ်ခါတစ်လေ ကျွန်တော်တို့တွေဟာ project တစ်ခုကို လုပ်ဆောင်တဲ့ အခါမှာ နီးကပ်လှတဲ့ deadline တွေကြောင့် TDD ကို မလုပ်နိုင်ဘူး။ Unit Testing ကိုတော့ အချိန်ကုန်တယ်ဆိုပြီး မရေးဖြစ်ကြဘူး။ တချို့ အပိုင်းတွေ API request , response တွေ က တော့ Unit Testing ရေးလို့ အလွယ်ဆုံးပါပဲ။ တစ်ခြား အများကြီး မရှိရင်တောင် API တွေ အတွက် Unit Testing ကို ထည့်ရေးသားနိုင်ရင် ပိုကောင်းပါတယ်။
ကျွန်တော်တို့တွေဟာ ရှက်တတ်ဖို့ လိုပါတယ်။ တခြားသူ ရှာမတွေ့ခင်မှာ ကိုယ့် ရဲ့ program က bugs တွေကို ကိုယ်တိုင် ရှာဖွေဖို့ လိုပါတယ်။ သိပ်ခက်လှတာ မဟုတ်ပါဘူး။ ခက်တာက Test လုပ်ဖို့ အတွက် အချိန် မပေးချင်တာပဲ။ နောက်ပြီးတော့ Flow တွေ အကုန်စမ်းကြည့်ဖို့ က အတွေ့ အကြုံ လိုအပ်ပါတယ်။
ကျွန်တော်တို့ developer တွေဟာ bug ရှိတာ ရှက်စရာ ကောင်းမှန်း သိလာတဲ့ အခါမှာ program တွေမှာ bug နည်းလာသလို QA တွေ လည်း သိပ်ပြီး စိတ်မညစ်ရတော့ဘူး။ ကိုယ်ဟာ အသုံးပြုသူ ဖြစ်ပြီးတော့ အခြားတစ်ယောက် ရေးထားတဲ့ program ကို သုံးရင်းနဲ့ Error တွေ အများကြီး တွေ့ရတဲ့ အခါမှာ သုံးချင်စိတ်ပျောက်သွားပါတယ်။ ကျွန်တော်တို့ရဲ့ program ကို အသုံးပြုသူတွေ အဲဒီလို မခံစားစေချင်တာ အမှန်ပါ။ ဒါကြောင့် နောက်ပိုင်းမှာ test အဆင့်ကို မပို့ခင်မှာ ကိုယ့်ဘာသာကိုယ် သေချာစမ်းသပ်ပြီး ယုံကြည်စိတ်ချမှ ပို့တာ ကောင်းပါတယ်။ သို့ပေမယ့် မပူပါနဲ့ QA အဆင့် ရောက်တဲ့ အခါမှာ အခြား minor bugs လေးတွေ သူတို့တွေ ရှာဖွေတွေ့ရှိပါအုံးမယ်။
Leave a Reply