«داشبورد VTS» واسط کاربری یکپارچهای ارائه میدهد که از طراحی مواد برای نمایش مؤثر اطلاعات درباره نتایج آزمایش، نمایهسازی، و پوشش استفاده میکند. سبکدهی داشبورد از کتابخانههای متنباز جاوا اسکریپت ازجمله Materialize CSS و jQueryUI برای پردازش دادههای ارائهشده توسط سرویسدهندههای Java در Google App Engine استفاده میکند.
صفحه اصلی داشبورد
صفحه اصلی «داشبورد» فهرستی از مجموعههای آزمایشی را که کاربر به موارد دلخواه اضافه کرده است نمایش میدهد.
از این فهرست، کاربران میتوانند:
- مجموعه آزمایشی را انتخاب کنید تا نتایج آن مجموعه را ببینید.
- برای مشاهده همه نامهای آزمایش VTS، روی نمایش همه کلیک کنید.
- برای اصلاح فهرست «موارد دلخواه»، نماد ویرایش را انتخاب کنید.
شکل ۲. داشبورد VTS، ویرایش صفحه «موارد دلخواه».
نتایج آزمایش
«نتایج آزمایش» جدیدترین اطلاعات را درباره مجموعه آزمایش انتخابشده نمایش میدهد، ازجمله فهرستی از نقاط نمایهسازی، جدولی از نتایج چارچوب تست بهترتیب زمانی، و نمودار دایرهای که تفکیک نتایج آخرین اجرا را نمایش میدهد (کاربران میتوانند با ورق زدن به راست، دادههای قدیمیتر را بار کنند).
کاربران میتوانند بااستفاده از پُرسمانها یا با تغییر نوع آزمایش (پیشاز ارسال، پساز ارسال، یا هر دو) دادهها را فیلتر کنند. پرسمانهای جستجو از نشانهای عمومی و واجدشرایطهای مختص فیلد پشتیبانی میکنند؛ فیلدهای جستجوی پشتیبانیشده عبارتاند از: شناسه ساخت دستگاه، شاخه، نام هدف، نام دستگاه، و شناسه ساخت آزمایشی. اینها در قالب زیر مشخص شدهاند: FIELD-ID="SEARCH QUERY". از نشان نقلقول برای درنظر گرفتن چند کلمه بهعنوان یک نشانه واحد برای مطابقت با دادههای ستونها استفاده میشود.
نمایهسازی دادهها
کاربران میتوانند نقطه نمایهسازی را انتخاب کنند تا به نمای تعاملی دادههای کمی برای آن نقطه در نمودار خطی یا هیستوگرام (نمونههای زیر) دسترسی پیدا کنند. بهطور پیشفرض، این نما جدیدترین اطلاعات را نمایش میدهد؛ کاربران میتوانند از انتخابگر تاریخ برای بار کردن پنجرههای زمانی خاص استفاده کنند.
گرافهای خطی دادههای مجموعهای از مقادیر عملکرد نامرتب را نمایش میدهند، که میتواند زمانی مفید باشد که آزمایش عملکرد برداری از مقادیر عملکرد تولید کند که بهعنوان تابعی از متغیر دیگری تغییر میکنند (برای نمونه، توان عملیاتی دربرابر اندازه پیام).
پوشش آزمایش
کاربران میتوانند اطلاعات پوشش را از پیوند درصد پوشش در نتایج آزمایش مشاهده کنند.
برای هر مورد آزمون و فایل منبع، کاربران میتوانند عنصر ازهم بازشدنیای را مشاهده کنند که حاوی کد منبع رنگی براساس پوشش ارائهشده توسط آزمون انتخابشده است:
- خطوط پوششدادهنشده با رنگ قرمز برجسته میشوند.
- خطوط تحت پوشش با رنگ سبز برجسته میشوند.
- خطوط غیرقابلاجرا بدون رنگ هستند.
اطلاعات پوشش بسته به نحوه ارائه آن در زمان اجرا به بخشهایی تقسیم میشود. آزمایشها ممکن است پوشش را بارگذاری کنند:
- بهازای هر تابع. سرصفحههای بخش دارای قالب «پوشش: FUNCTION-NAME» هستند.
- در مجموع (در پایان اجرای آزمایش ارائه میشود). فقط یک سرایند وجود دارد: «پوشش: همه».
«داشبورد» کد منبع را از سمت کارخواه از سروری واکشی میکند که از Gerrit REST API متنباز استفاده میکند.
پایش و آزمایش
«داشبورد VTS» پایشگرها و آزمایشهای واحد زیر را ارائه میدهد.
- آزمایش هشدارهای ایمیلی. هشدارها در کار Cron پیکربندی میشوند که در بازه زمانی ثابت دو (۲) دقیقه اجرا میشود. کار جدول وضعیت VTS را میخواند تا مشخص کند آیا دادههای جدیدی در هر جدول بارگذاری شده است یا نه. این کار با بررسی اینکه مُهر زمان بارگذاری دادههای خام آزمایش جدیدتر از مُهر زمان آخرین بهروزرسانی وضعیت است انجام میشود. اگر مُهر زمان بارگذاری جدیدتر باشد، کار برای دادههای جدید بین اکنون و آخرین بارگذاری دادههای خام پُرسمان میکند. New test case failures, continued test case failures, transient test case failures, test case fixes, an inactive tests are determined; this information is then sent in email format to the subscribers of each test.
- سلامت سرویس وب. Google Stackdriver با Google App Engine ادغام میشود تا پایش آسان «داشبورد VTS» را ارائه دهد. بررسیهای ساده زمان فعال بودن دستگاه تأیید میکنند که صفحهها قابلدسترسی هستند، درحالیکه آزمایشهای دیگر را میتوان برای تأیید تأخیر در هر صفحه، سرولت، یا پایگاه داده ایجاد کرد. این بررسیها تضمین میکند که «داشبورد» همیشه دردسترس باشد (درغیراینصورت، سرپرست مطلع خواهد شد).
- Analytics. با مشخص کردن «شناسه Analytics» معتبر در پیکربندی صفحه (فایل pom.xml)، میتوانید صفحه «داشبورد VTS» را با Google Cloud Analytics ادغام کنید. یکپارچهسازی تجزیهوتحلیل قویتری از استفاده از صفحه، تعامل کاربر، محلیت، آمار جلسه، و غیره ارائه میدهد.