AlirezaMdp
AlirezaMdp
خواندن ۳ دقیقه·۳ سال پیش

pyATS چیه ؟

سلام

اگر طرفدار سینه‌چاک دنیای شبکه و تکنولوژی هستید و عین من سیسکو رو خدای! این دنیای لاینتها میدونید DevNet به گوشتون رسیده و حتی دوره هاشو دیدید. بعضی از مباحث DevNet رو توی سایتش میتونید ببینید و ولی چیزی که راجع بهش صحبتی نشده تا الان حداقل ! pyATS هستش

امروز میخوام ابزاری رو بهتون معرفی که غول مرحله‌ی آخر تست و اتوماسیون شبکست و تا همین چند سال پیش سیسکو به صورت خصوصی ازش استفاده میکرده تا یه وقتی کسی خدایی نکرده مثل اون نتونه دستگاهایی که میساخته رو تست کنه !

به عنوان کسی که کارش تست معتبرترین دستگاه های ساخته شده شبکه توی ایران هست و از این framework فوق‌العاده استفاده کرده رو یه مختصر مفیدی از pyATS(Python Automated Test System) و کتابخونه هاشو بهتون بگم . البته تو پرانتز بگم ( شاید اونقدری یادگیریش فراگیر نباشه و محدود بشه به کسایی که توی جایگاه های خاصی کار میکنن مثل تیم کنترل کیفیت دستگاها یا بچه های تست نفوز یاا ... )

Python Automated Test System
Python Automated Test System


خوب برسیم به اصل جنس !

اصلا pyATS چیه ؟

طبق تعریفی که سایت DevNet از pyATS کرده : pyATS - Python Automated Test Systems یک زیرساخت اتوماسیون تست مبتنی بر Python3 هستش و به عنوان نسل بعدی زیرساخت های اتوماسیون اصلی سیسکو توسعه پیدا کرده ، با ابزار و زیرساخت های موجود سازگاره و توسط تیم اجرایی سیسکو به طور رسمی تأیید شده و در اصل برای توسعه دهنده های سیسکو طراحی شده بود و دقیقا راه حل اتوماسیون خود سیسکو بودش! و الان به عنوان یک framework تست برای platform/function, CI/CD, Sanity, regression, HA, ...مختلف توی خود سیسکو و مهندسین شبکه خارج از سیسکو استفاده میشه.

توی سیسکو , پای ای تی اس sanity, feature, solution, system, and scale test & verification automation for products رو برای دستگاه های مختلف اعم از switch, router, access points, firewalls, cable CPEs استفاده میشه

این ابزار وحشی! از یه stack به شکل زیر استفاده میکنه

infrastructure stackATS Sta
infrastructure stackATS Sta

توی پایینیترین لایه pyATS Core Test Infrastructur هستش که توپولوژی رو میفهمه و تست هارو اجرا میکنه و صد البته تستی که گرفته به ما گزارش میده نتیجشو ( چه بچه خوبی ; یعنی اگر تستاش موجود باشه تکی کار یه تیمو انجام میده )

تو لایه بالاتر کتابخونه genie هستش که تخصصی میشه برای ابزار های شبکه تست نوشتن و برای اون parser داره پروتکل رو بفهمه که داره چیکار میکنه و چه config هایی روش زده شده , میشه باهاش تست هایی نوشت که هر آپدیتی از نرم‌افزار تیم توسعه ارائه میده رو تست کنه , میتونه گواهی تایید عملکرد صادر کنه طبق policy هایی که براش تعریف کردیم وووو........ که اگر بخوام بگم ۱۰ تا مقاله میشه !

و توی بالایی‌ترین لایه هم برای کسایی هستش که دارن کار صنعتی میکنن و قطعا به ابزار های حرفه‌ای تری نیاز دارن تا بتونن در سریعترین و بهینه ترین حالت تست هاشون رو automate کنن , ابزارهایی مثل XPRESSO که یک رابط کاربری گرافیکی (Web UI) بهمون میده یا Ansible که خودتون از من بهتر میدونید چیکار میکنه !

خلاصه میخوام بگم یه ابزار واقعا همه‌چی تمومه با یه معماری هستش که تجربه سیسکو پشتشه! و میشه باهاش تست هارو خودکار کرد ( حداقل کاری که من باهاش انجام میدم ) , میتونید داکیومنت کاملشو از خود سایت DevNet بخونید و اگر خوشتون اومد بهم بگید بازم براتون از تجربیاتم بگم

و اینکه تازه شروع کردم و کلی کلم باد داره برای چیزای جدید و هدفم اینه که DevNet رو نامی آشناتر بکنم برای دوستام اگر دوست داشتید میتونید توی اینستاگرام هم بهم سر بزنید , درسته تازه شروع کردم و چیزی نزاشتم ولی قول میدم به زودی زود مطالب کلی کلی کلی خفن بزارم براتون که الان توی دنیا کلی طرفدار داره

دوستون دارم

Instagram : net.devops

pyatsautomationسیسکوdevnetgenie
علیرضام و به دنبال ماجراجویی توی دنیای شبکه و DevNet
شاید از این پست‌ها خوشتان بیاید