VTS ড্যাশবোর্ড একটি সুসংহত ইউজার ইন্টারফেস প্রদান করে যা মেটেরিয়াল ডিজাইন ব্যবহার করে টেস্ট ফলাফল, প্রোফাইলিং এবং কভারেজ সম্পর্কে তথ্য কার্যকরভাবে দেখায়। ড্যাশবোর্ড স্টাইলিং, Google App Engine-এ Java servlet-এর মাধ্যমে ডেলিভার করা ডেটা প্রসেস করার জন্য Materialize CSS এবং jQueryUI সহ ওপেন-সোর্স Javascript লাইব্রেরি ব্যবহার করে।
ড্যাশবোর্ডের হোমপেজ
ড্যাশবোর্ডের হোমপেজে ব্যবহারকারীর ফেভারিটে যোগ করা টেস্ট স্যুটের তালিকা দেখানো হয়।
এই তালিকা থেকে ব্যবহারকারীরা এগুলি করতে পারবেন:
- কোনও টেস্ট স্যুটের ফলাফল দেখতে, সেই স্যুটটি বেছে নিন।
- সব VTS পরীক্ষার নাম দেখতে সব দেখুন বিকল্পে ক্লিক করুন।
- 'পছন্দের তালিকা' পরিবর্তন করতে এডিট করুন আইকন বেছে নিন।
ছবি ২. VTS ড্যাশবোর্ড, পছন্দের জায়গা পৃষ্ঠা এডিট করা।
পরীক্ষার ফলাফল
'পরীক্ষার ফলাফল' বিকল্পে বেছে নেওয়া টেস্ট সুইট সম্পর্কে লেটেস্ট তথ্য দেখা যায়, যার মধ্যে প্রোফাইলিং পয়েন্টের তালিকা, কালানুক্রমিক অর্ডারে টেস্ট কেসের ফলাফলের সারণী এবং লেটেস্ট রান (ব্যবহারকারীরা ডানদিকে পেজ করে পুরনো ডেটা লোড করতে পারবেন) সম্পর্কে ফলাফলের ব্রেকডাউন দেখানো পাই চার্ট অন্তর্ভুক্ত।
ব্যবহারকারীরা কোয়েরি ব্যবহার করে বা পরীক্ষার ধরন (জমা দেওয়ার আগে, জমা দেওয়ার পরে বা দুটিই) পরিবর্তন করে ডেটা ফিল্টার করতে পারেন। সার্চ কোয়েরিতে সাধারণ টোকেন ও ফিল্ড-নির্দিষ্ট কোয়ালিফায়ার কাজ করে; যেসব সার্চ ফিল্ড কাজ করে সেগুলি হল: ডিভাইস বিল্ড আইডি, ব্রাঞ্চ, টার্গেট নেম, ডিভাইসের নাম ও টেস্ট বিল্ড আইডি। এগুলি এই ফর্ম্যাটে উল্লেখ করা হয়: FIELD-ID="SEARCH QUERY"। কলামের ডেটার সাথে ম্যাচ করার জন্য একাধিক শব্দকে একটি টোকেন হিসেবে বিবেচনা করতে উদ্ধৃতি চিহ্ন ব্যবহার করা হয়।
ডেটা প্রোফাইলিং
ব্যবহারকারীরা একটি প্রোফাইলিং পয়েন্ট বেছে নিতে পারেন যাতে সেই পয়েন্টের জন্য পরিমাণগত ডেটার একটি ইন্টারেক্টিভ ভিউতে পৌঁছানো যায় একটি লাইন গ্রাফ বা হিস্টোগ্রাম (নিচে উদাহরণ দেওয়া হল)। ডিফল্ট হিসেবে, ভিউতে সবচেয়ে লেটেস্ট তথ্য দেখানো হয়; ব্যবহারকারীরা নির্দিষ্ট সময়সীমা লোড করতে ডেট পিকার ব্যবহার করতে পারেন।
লাইন গ্রাফে পারফর্ম্যান্সের ভ্যালুর একটি সংগ্রহ থেকে পাওয়া ডেটা দেখানো হয়, এগুলি কোনও নির্দিষ্ট ক্রমে সাজানো থাকে না। পারফর্ম্যান্সের কোনও টেস্টের ফলে পারফর্ম্যান্সের ভ্যালুর একটি ভেক্টর তৈরি হলে এটি কাজে লাগতে পারে। এই ভ্যালুগুলি অন্য কোনও ভেরিয়েবলের ফাংশন হিসেবে পরিবর্তিত হয় (যেমন, থ্রুপুট বনাম মেসেজের সাইজ)।
টেস্ট কভারেজ
ব্যবহারকারীরা পরীক্ষার ফলাফলে কভারেজ শতাংশের লিঙ্ক থেকে কভারেজ সংক্রান্ত তথ্য দেখতে পাবেন।
প্রতিটি টেস্ট কেস এবং সোর্স ফাইলের জন্য, ব্যবহারকারীরা একটি এক্সপ্যান্ডেবল এলিমেন্ট দেখতে পারেন যেটিতে বেছে নেওয়া টেস্টের কভারেজ অনুযায়ী কালার-কোডেড সোর্স কোড থাকে:
- কভার না করা লাইন লাল রঙে হাইলাইট করা হয়।
- কভার করা লাইন সবুজ রঙে হাইলাইট করা হয়।
- এক্সিকিউট করা যাবে না এমন লাইন রঙ করা নেই।
রান-টাইমে কীভাবে কভারেজ সংক্রান্ত তথ্য প্রদান করা হয়েছে তার উপর নির্ভর করে সেগুলিকে বিভিন্ন বিভাগে গ্রুপ করা হয়। পরীক্ষা আপলোড কভারেজ করতে পারে:
- ফাংশন পিছু। বিভাগের শীর্ষকের ফর্ম্যাট হল "কভারেজ: FUNCTION-NAME"।
- মোট (টেস্ট রান শেষ হওয়ার পরে প্রদান করা হয়)। শুধুমাত্র একটি শীর্ষক আছে: "কভারেজ: সব"।
ড্যাশবোর্ড, সার্ভার থেকে ক্লায়েন্ট-সাইড সোর্স কোড নিয়ে আসে, যা ওপেন-সোর্স Gerrit REST API ব্যবহার করে।
মনিটর করা ও টেস্টিং
VTS ড্যাশবোর্ড নিম্নলিখিত মনিটর ও ইউনিট টেস্ট প্রদান করে।
- ইমেল অ্যালার্ট পরীক্ষা করা। Cron জবে অ্যালার্ট কনফিগার করা হয় যা দু' (২) মিনিট অন্তর অন্তর এক্সিকিউট হয়। প্রতিটি টেবিলে নতুন ডেটা আপলোড করা হয়েছে কিনা তা নির্ধারণ করতে, জবটি VTS স্ট্যাটাস টেবিল পড়ে। এটি করার জন্য, পরীক্ষার কাঁচা ডেটা আপলোড টাইমস্ট্যাম্পটি শেষ স্ট্যাটাস আপডেট টাইমস্ট্যাম্পের চেয়ে নতুন কিনা তা পরীক্ষা করা হয়। আপলোড টাইমস্ট্যাম্প নতুন হলে, এখন থেকে শেষ কাঁচা ডেটা আপলোড করার মধ্যবর্তী সময়ের জন্য জব কোয়েরি নতুন ডেটা। নতুন টেস্ট কেস ব্যর্থতা, অব্যাহত টেস্ট কেস ব্যর্থতা, ক্ষণস্থায়ী টেস্ট কেস ব্যর্থতা, টেস্ট কেস সমাধান, নিষ্ক্রিয় টেস্ট নির্ধারণ করা হয়; এই তথ্য ইমেল ফর্ম্যাটে প্রতিটি টেস্টের সাবস্ক্রাইবারদের পাঠানো হয়।
- ওয়েব পরিষেবার স্বাস্থ্য। VTS ড্যাশবোর্ড সহজে মনিটর করার জন্য Google Stackdriver, Google App Engine-এর সাথে ইন্টিগ্রেট করে। সহজ আপটাইম চেক, পৃষ্ঠা অ্যাক্সেস করা যাবে কিনা তা যাচাই করে, যেখানে প্রতিটি পৃষ্ঠা, সার্ভলেট বা ডেটাবেসে লেটেন্সি যাচাই করার জন্য অন্যান্য পরীক্ষা তৈরি করা যেতে পারে। এইসব চেক নিশ্চিত করে যে ড্যাশবোর্ড সর্বদা অ্যাক্সেস করা যাবে (অন্যথায়, কোনও অ্যাডমিনিস্ট্রেটরকে বিজ্ঞপ্তি পাঠানো হবে)।
- Analytics. আপনি পৃষ্ঠা কনফিগারেশনে (pom.xml ফাইল) একটি সঠিক Analytics আইডি উল্লেখ করে Google Cloud Analytics-এর সাথে VTS ড্যাশবোর্ড পৃষ্ঠা ইন্টিগ্রেট করতে পারবেন। ইন্টিগ্রেশন, পৃষ্ঠার ব্যবহার, ব্যবহারকারীর ইন্টার্যাকশন, লোকেশন, সেশন পরিসংখ্যান ইত্যাদির আরও শক্তিশালী বিশ্লেষণ প্রদান করে।