۲۹ شهریور ۱۴۰۳

Techboy

اخبار و اطلاعات روز تکنولوژی

۳ راه برای ارتقاء تست مداوم برای هوش مصنوعی مولد

از آنجایی که بیشتر CIOها و تیم‌های توسعه‌دهنده از هوش مصنوعی مولد استقبال می‌کنند، تیم‌های QA نیز باید شیوه‌های آزمایش مستمر خود را برای ادامه دادن تطبیق دهند.

از آنجایی که بیشتر CIOها و تیم‌های توسعه‌دهنده از هوش مصنوعی مولد استقبال می‌کنند، تیم‌های QA نیز باید شیوه‌های آزمایش مستمر خود را برای ادامه دادن تطبیق دهند.

هوش مصنوعی، ChatGPT، و مدل‌های زبان بزرگ (LLM) مانند GitHub Copilot و سایر ابزارهای تولید کد AI در حال تغییر عملکرد و بهره وری توسعه نرم افزار هستند. مک کینزی گزارش می دهد که توسعه‌دهندگانی که از ابزارهای هوش مصنوعی مولد استفاده می‌کنند، شادتر، سازنده‌تر هستند و می‌توانند بر روی کارهای معنادارتر تمرکز کنند. بر اساس این گزارش، هوش مصنوعی می‌تواند به توسعه‌دهندگان کمک کند تا اسناد، تولید، و بازآفرینی کد را از ۲۰% تا ۵۰% سرعت بخشند.

این داده‌ها نشان می‌دهد که مدیران ارشد و تیم‌های توسعه‌دهنده بیشتری با قابلیت‌های توسعه نرم‌افزار هوش مصنوعی مولد برای بهبود بهره‌وری توسعه‌دهندگان و تسریع نوسازی برنامه‌ها آزمایش خواهند کرد.

اگر هوش مصنوعی مولد به تسریع برنامه‌نویسی و توسعه نرم‌افزار کمک کند، آیا تست و تضمین کیفیت همگام با سرعت بالاتر خواهد بود؟ متأسفانه، تاریخ نشان می‌دهد که شیوه‌های آزمایش از پیشرفت در بهره‌وری توسعه عقب‌تر است و اتوماسیون را توسعه می‌دهد.

کنت بک توسعه مبتنی بر آزمون (TDD) را در اواخر دهه ۱۹۹۰ و اتوماسیون آزمایشی تعریف کرد. مدتی است که وجود داشته است، اما بسیاری از شرکت‌ها همچنان سرمایه‌گذاری کمتری روی نرم‌افزار دارند. تست. آزمایش مستمر از سرمایه گذاری در استقرار خودکار با CI/CD، ساخت زیرساخت به عنوان کد (IaC) و سایر روش های توسعه عقب مانده است. از آنجایی که سازمان‌های بیشتری از devops برای افزایش دفعات استقرار استفاده می‌کنند، تیم‌ها باید آزمایش مستمر را انجام دهند، از پرچم‌های ویژگی استفاده کنند، آزادسازی قناری را فعال کنند و را اضافه کنند. قابلیت‌های href=”https://blogs.starcio.com/2021/12/kpi-agile-devops-itops.html” rel=”nofollow”>AIops.

چرا توسعه دهندگان نرم افزار معیارهای DORA را ترجیح می دهند

در اینجا سه ​​راه وجود دارد که توسعه‌دهندگان و تیم‌ها می‌توانند آزمایش مداوم را برای چشم‌انداز توسعه جدید با قابلیت‌های هوش مصنوعی مولد تطبیق دهند.

پوشش آزمون را افزایش دهید

به عنوان اولین گام، تیم‌های تضمین کیفیت (QA) باید انتظار کد شخص ثالث بیشتری را از هوش مصنوعی مولد داشته باشند و ابزارها و اتوماسیون را برای بررسی و پرچم‌گذاری این کد اضافه کنند.

مردیث بل، مدیر عامل AutoRABIT. تیم‌ها باید از آنالیز کد استاتیک و اتوماسیون تست ادغام استفاده کنند تا به عنوان نرده‌های محافظ برای این فناوری جدید عمل کنند.

تحلیل کد استاتیک و پویا، از جمله SAST، DAST و سایر تست های امنیتی کد، ابزارهای کلیدی برای تیم های توسعه دهنده هستند که به دنبال اهرم هستند. کدهای تولید شده توسط هوش مصنوعی یا ادغام منبع باز و نمونه های کدگذاری دیگر پیشنهاد شده توسط LLM. این تست‌ها می‌توانند آسیب‌پذیری‌های امنیتی و مشکلات قالب‌بندی کد را شناسایی کنند، صرف نظر از اینکه یک توسعه‌دهنده یا یک هوش مصنوعی کد را تولید کرده است.

موردهای آزمایشی خودکار

تیم‌های QA همچنین باید از تیم‌های توسعه‌دهنده انتظار داشته باشند که ویژگی‌ها را سریع‌تر بسازند، که به معنای موارد آزمایشی بیشتری است که به اتوماسیون نیاز دارند. اگر تست نرم افزار با سرعت توسعه و کدنویسی مطابقت ندارد، ابزارهای هوش مصنوعی مولد چگونه و کجا می توانند این شکاف را برطرف کنند؟ Mush Honda، معمار اصلی کیفیت در Katalon، پیشنهاد می کند، “تست های تولید شده توسط هوش مصنوعی بر اساس سفرهای کاربر واقعی باید با بصری ترکیب شوند. آزمایش‌ها، تأیید دسترس‌پذیری، و معیارهای عملکرد در مرورگرها و دستگاه‌ها برای اطمینان از اینکه همه نسخه‌ها با یک تجربه کاربری جامع مطابقت دارند.»

نحوه استفاده از رمزگذاری متقارن و نامتقارن در سی شارپ

امیلی آرنوت، مدیر بازاریابی محتوا در Blameless، معتقد است که QA باید استفاده از LLM را برای تولید و خودکارسازی بیشتر در نظر بگیرد. موارد آزمون. او می‌گوید: «آزمایش اتوماسیون می‌تواند از ابزارهای هوش مصنوعی مانند LLM برای سریع‌تر و انعطاف‌پذیرتر شدن استفاده کند. LLM به شما امکان می‌دهد با استفاده از زبان طبیعی یک اسکریپت درخواست کنید، بنابراین می‌توانید بگویید: «اسکریپتی برای من بنویس که این قطعه کد را با هر ورودی از این فایل گزارش آزمایش کند» و چیزی را دریافت کنید که کار می‌کند.

مقیاس‌سازی و مدیریت داده‌های آزمایش

چیز دیگری که باید انتظار داشت افزایش پیچیدگی تست است. به عنوان مثال، ایجاد موارد آزمایشی برای یک موتور جستجو می‌تواند از سفرهای کاربر و کلمات کلیدی محبوب ثبت‌شده در فایل‌های گزارش و ابزارهای مشاهده‌پذیری استفاده کند. اما با شرکت‌های بیشتر کاوش LLM و جستجوی هوش مصنوعی، با استفاده از واسط ها و درخواست های زبان طبیعی، موارد آزمایشی نیز باید بیشتر شوند با پایان باز.

برای پاسخگویی به این تقاضا، QA به مجموعه داده‌های آزمایشی بسیار بزرگتر و پویاتر نیاز دارد. تیم‌های Devops باید به دنبال راه‌هایی برای خودکارسازی آزمایش برنامه‌های توسعه‌یافته با LLM و رابط‌های جستجوی زبان طبیعی باشند.

رومن گلود، مدیر ارشد فناوری و یکی از بنیانگذاران در Accelario. “تیم های Devops باید بتوانند به طور خودکار پایگاه های داده مجازی را از محیط های تولیدی تا غیرتولیدی تولید کنند.”

افزایش قابلیت‌های آزمایش، فرکانس و اندازه مجموعه داده‌های آزمایشی ممکن است به تیم‌های توسعه‌دهنده نیاز داشته باشد تا معماری و ظرفیت devops و زیرساخت آزمایش را بررسی کنند. Sunil Senan، SVP و رئیس جهانی داده، تجزیه و تحلیل و هوش مصنوعی در Infosys، اضافه می کند، “تیم های برنامه باید در نظر بگیرند انتقال خطوط لوله devsecops به هایپراسکل با قابلیت های اتوماسیون تست مبتنی بر هوش مصنوعی مانند تولید داده مصنوعی، تولید اسکریپت آزمایشی و تشخیص ناهنجاری تست برای بهبود عملیات ML.”

آموزش کدنویسی به ماشین ها

نتیجه گیری

در مجموع، QA می‌تواند دامنه و عمق آزمایش را با افزایش اتوماسیون آزمایش، مقیاس‌بندی آزمایش مداوم، استفاده از قابلیت‌های تولید آزمایش هوش مصنوعی و متمرکز کردن مجموعه داده‌های آزمایشی بزرگ افزایش دهد.

اسکو هانولا، معاون مدیریت محصول در کوپادو. “تست از واکنشی به پیشگیرانه تغییر می کند، با هوش مصنوعی موارد لبه و باگ ها را قبل از اینکه یک ویژگی حتی ساخته شود شناسایی می کند. این سطح از آزمایش مداوم روباتیک نه تنها باید توسعه را تسریع کند، بلکه کیفیت برنامه را به سطحی برساند که با اتوماسیون آزمایش اولیه نتوانسته ایم به آن برسیم.”

Coty Rosenblath، CTO در Katalon، اضافه می کند، “ما در حال مشاهده آزمایش های دقیق تری برای تایید تولید هستیم، جایی که آنها ممکن است در گذشته فقط مواد مصنوعی نسبتا ساده داشته باشند. تیم‌ها در حال ساخت مجموعه‌های آزمایشی پویا هستند که می‌توانند به‌طور خاص روی حوزه‌های تغییر و خطر تمرکز کنند و از تأخیر انتشار در انتظار مجموعه‌های رگرسیون کامل جلوگیری کنند.»

قابلیت‌های هوش مصنوعی مولد مورد استفاده در برنامه‌نویسی و توسعه نرم‌افزار باید زنگ خطر نهایی برای شرکت‌های توسعه‌دهنده و رهبران QA برای سرمایه‌گذاری در آزمایش‌های مداوم، متمرکز کردن داده‌های تست، بهبود پوشش تست و افزایش فرکانس آزمایش باشد. به دنبال پلتفرم‌های آزمایشی برای افزودن قابلیت‌های هوش مصنوعی مولد برای رسیدن به این اهداف باشید.