تست بازی
فهرست مطالب
آخرین به روزرسانی در 11/02/2024
در این مقاله به یکی دیگر از مهم ترین مراحل بازی سازی خواهیم پرداخت.
این مرحله ی مهم تست بازی نام دارد که به عبارتی مرحله ی نهایی بوده و تمامی زحمات شما در پروسه ی ساخت بازی را مورد آنالیز قرار می دهد.
تست بازی ، مراحل تست و تستر بازی درون این مقاله به صورت کامل بررسی می شود.
با ما در ادامه همراه باشید تا متوجه شوید چگونه بازی خود را از انواع باگ ها و مشکلات فنی مبرا کنید.
تست بازی چیست
تست بازی فرآیند یافتن باگ ها و انحرافات در بازی است.
این تضمین می کند که برنامه در هنگام استقرار در مارکت مورد نظر بدون خطا باشد.
هدف اصلی تست بازی ارائه محصولی با کیفیت بالا است.
در صورتی که بازی دارای اشکالاتی باشد، انتقادات زیادی از سوی کاربران به همراه خواهد داشت که منجر به کاهش شدید فروش خواهد شد.
تستر بازی کیست
تستر بازی فرد یا افرادی هستند که یک بازی ویدیویی را با چندین بار انجام آن آزمایش می کند تا اشکالات و خطاهای موجود در بازی را کشف کند.
به عنوان یک تستر بازی ، از شما انتظار می رود که بازی را به طور مکرر در سناریوهای مختلف آزمایش و آزمایش کنید ، همچنین خطا و نحوه باز تولید آن مسائل را یادداشت کنید.
شما باید با تمام پلتفرم ها ، سخت افزارها و سیستم عامل ها آشنا باشید.
و همچنین کلیتی را از نحوه انجام بازی های نقش آفرینی ، بازی های MOBA ، بازی های اکشن و بازی های یادگیری را بدانید.
دسته بندی تست بازی
به طور کلی دو دسته بندی مختلف برای تست وجود دارد که می توان آنها را به عنوان تست جعبه سیاه و جعبه سفید دسته بندی کرد.
این تعاریف در دنیای تست نرم افزار به خوبی شناخته شده اند ، اما از نظر فرآیند با تست بازی تفاوتی ندارند.
فقط اهداف آنها کمی متفاوت از تست در بازی است.
تست جعبه سیاه :
بر جنبه های عملکردی و کلی قابلیت بازی تمرکز دارد.
در این نوع تست ، به عنوان مثال ، تست رابط کاربری گرافیکی ، تجربه کاربری یا هر ظاهر بصری نقش کلیدی دارد.
منوها ، عناصر گرافیکی ، جلوههای ویژه ، انیمیشنها و گیمپلی واقعی مواردی هستند که با رویکرد Black-box مورد آزمایش قرار میگیرند.
تست جعبه سفید :
این نوع تست بر جنبههای معماری ، یکپارچهسازی و سیستمی بازی موبایل تمرکز میکند :
چگونه کامپوننت ها ، پایگاههای داده و همچنین موتورهای گرافیکی بازی ، پلیر های صوتی و … در شما ادغام میشوند.
معمولاً توصیه میشود اسکریپتهای آزمایشی بسازید که بدانند بازی چگونه پیش میرود ، چه نوع حالتهای اشتباه ممکن است وجود داشته باشد و همچنین روی تشخیص تصویر و گرافیک تمرکز کند.
چرخه حیات تست بازی
چرخه حیات تست بازی بخشی از چرخه حیات توسعه بازی GTLC است که از ۶ مرحله تشکیل شده است.
این مراحل به شرح زیر می باشد :
مرحله ۱ : طرح
در این مرحله اطلاعاتی در مورد ویژگی های جدید ، باگ های قدیمی رفع شده ، وصله های جدید و سایر عناصری که بخشی از ساخت هستند، جمع آوری می کنید.
سپس در مورد جنبه های دیگری مانند اینکه چه کسی در آزمایش شرکت خواهد کرد، جمع آوری تجهیزات مورد نیاز و راه اندازی منطقه آزمایش تصمیم می گیرید.
مرحله ۲ : آماده سازی
در مرحله آماده سازی با اطلاعات و منابع مناسب تیم های مختلف به روز می شوید.
کد، داکیومنت آزمایشی و محیط های آزمایشی توسط صاحبان مربوطه به روز می شوند.
مرحله ۳ : اجرا
در این مرحله شما باید باگ های قدیمی را مجددا آزمایش کنید و راه های دیگری را برای بازتولید آنها آزمایش کنید.
اگر نقصی پیدا کردید ، پیرامون باگ را بیشتر آزمایش کنید تا اطلاعات بیشتری در مورد باگ جمعآوری کنید و در نهایت گزارش اشکالات را به صورت دقیق بنویسید.
مرحله ۴ : گزارش
در مرحله گزارش ، شما باید برای اشکالاتی که در حین تست پیدا کرده اید ، گزارش بسازید.
شما باید با جزئیات در مورد جایی که اشکال را پیدا کرده اید ، نحوه بازتولید آن را بنویسید و مطمئن شوید که به شخصی که آن را برطرف می کند ارسال می شود.
به عنوان مثال ، اگر متریال به درستی بارگذاری نمی شود ، باید به مدل ساز اختصاص داده شود.
مرحله ۵ : اصلاح
در مرحله ترمیم باید با تیم توسعه دهنده برای تعمیر باگ همکاری کنید.
شما باید در بحث با توسعه دهندگان شرکت کنید تا مطمئن شوید که آنها متوجه اشتباه شده اند و سایر اطلاعات اضافی برای رفع اشکال نیاز دارند.
مرحله ۶ : تکرار
در این مرحله، شما همین روند را از مرحله ۱ تکرار می کنید.
یک بیلد به روز شده با ویژگی های جدید و رفع اشکال به شما داده می شود.
این روند تا زمانی که برنامه بازی در بازار منتشر شود تکرار می شود.
انواع تست بازی
تست عملکرد :
در تست بازی ، انجام تست های عملکرد به معنای تأیید کارایی برنامه مطابق با مشخصات داده شده است.
این معمولا به یافتن مسائل عمومی مانند یکپارچگی asset ها ، رابط کاربری گرافیکی ، همگام سازی صوتی و تصویری و … کمک می کند.
(تمام تست های عملکردی باید خودکار باشند ؛ تست عملکردی ، با کمک چارچوب های اتوماسیون تست ، نیاز به درک اولیه برنامه نویسی و تنظیم یک محیط برای آزمایش دارد.)
ویژگی های کلیدی :
- بررسی می کند که آیا برنامه مطابق با داکیومنت مورد نیاز کار می کند یا خیر.
- این طراحی گرافیکی ، صوتی و تصویری ، مشکلات گیم پلی را تأیید می کند ؛ بنابراین می توان گفت این تست زمان زیادی می برد و گاهی اوقات پیچیده می شود.
- سناریوهای مختلف مانند نصب ، اشتراک گذاری اجتماعی ، پشتیبانی در درگاه پرداخت و … را تأیید می کند.
تست ترکیبی :
این یک تکنیک آزمایشی است که در آن از چندین ترکیب از پارامترهای ورودی برای تأیید هر ترکیب ممکن و محیط برنامه استفاده می شود.
تست ترکیبی برای تست بازی بسیار کاربردی است زیرا باعث افزایش کارایی ، ارائه کیفیت بهتر ، کاهش هزینه و … می شود.
ویژگی های کلیدی :
- برنامه را با هر ترکیب ممکنی از پارامترها مانند توابع بازی ، عناصر ، رویدادها ، تنظیمات ، گزینههای بازی ، ویژگیهای کارکتر ها و … تأیید میکند.
- از این سه روش تست Category-partition ، Pair testing و Catalogue based استفاده می کند ؛ بنابراین ترکیباتی برای آزمایش ایجاد می شود.
- با توجه به چنین رویکرد سیستماتیکی ، ما به راحتی می توانیم گزارش هایی تولید کنیم که قابل پیگیری هستند.
تست رگرسیون :
تست رگرسیون باید زمانی اتفاق بیفتد که هر چیزی در نرم افزار شما تغییر کند.
امروزه اکثر بازیهای موبایلی دارای تعامل سرور و کلاینت هستند که نیاز به ورود به سیستم ، آپلود دادهها (به عنوان مثال نتایج) و دانلود دادهها (مانند دادهها، تصاویر) دارند.
اگر در حال توسعه این نوع سرویسها در اطراف بازی خود هستید ، کاربران باید مطمئن شوند که تمام تغییرات آنها به صورت کد انجام میشود ، به گونهای که چه در سمت سرور و چه در سمت کلاینت ، عملکرد سرویس را نقض نمیکند.
تست خودکار واقعا تنها گزینه است ، اما تست دستی آن را قطع نمی کند.
تست لود :
تست لود ، محدودیتهای یک سیستم را آزمایش میکند ، مانند تعداد بازیکنان روی سرور ، محتوای گرافیکی روی صفحه (مانند فریم در ثانیه ، FPS)، یا مصرف حافظه (تخصیص و تخصیص آن).
تست بهینگی:
تنظیم عملکرد برای بهینه سازی سرعت بازی انجام می شود.
همچنین پارامترهای مهم در طول تست عملکرد بررسی میشوند.
زمان پاسخگویی روی کلاینت و سرورها ، زمان(های) تکمیل تراکنش ، پوشش شبکه ، نشت حافظه ، باتری ، زمان صرف شده برای دانلود برنامه ها ، دسترسی همزمان (چند کاربر) به سرور برنامه ، توان عملیاتی ، مقیاس پذیری و …
تست clean room :
این به اطمینان از عملکرد و قابلیت های بازی کمک می کند.
با استفاده از تکنیک تست clean room میتوانید علت اصلی باگها و خطاهای کوچک را شناسایی کنید.
ویژگی های کلیدی :
- در اینجا برنامه نویسی پس از تعیین مشخصات رسمی شروع می شود.
- این ترکیبی از استدلال ریاضی ، اصلاح طراحی و استدلال آماری در حین ایجاد موارد آزمایشی است.
- هدف اولیه از تست clean room ، تولید نرم افزاری با نقص های ناچیز است.
تست Tree :
این یکی دیگر از روش های تست بازی است که به ما کمک می کند تا موارد تست را سازماندهی کنیم و مجموعه مناسبی از تست ها را برای مجموعه تغییرات کد داده شده مناسب تر انتخاب کنیم.
ویژگی های کلیدی :
- می توان آن را قبل از طراحی طرح بندی صفحه یا منوهای پیمایش انجام داد.
- درک کلی از ویژگی های پیچیده در بازی را بهبود می بخشد.
- نیازی به ترسیم وایرفریم یا تهیه محتوایی برای آزمایش نیست، فقط به وظایف و درخت ها یعنی دستورالعمل ها و منو نیاز دارد.
- از انحرافات بالقوه مراقبت می کند، به ویژه زمانی که توابع با سایر قوانین بازی، توابع و عناصر دیگر تعامل دارند.
تست Soak :
این تست اتوماسیون بازی شامل رها کردن بازی برای مدت طولانی در حالتهای مختلف عملکرد است.
تست soak می تواند نشت حافظه یا خطاهای گرد کردن را شناسایی کند.
مثال : بازی شروع شده است و شخصیت به مدت ۲۴ ساعت بیکار می ماند.
این تکنیک برای تشخیص خرابی های ناشی از نشت حافظه و سایر خطاها در موتور بازی استفاده می شود.
Play Testing :
این یک تکنیک است که در آن آزمایش کنندگان می توانند بازی را به عنوان کاربران واقعی برای تجزیه و تحلیل کیفیت برنامه بازی انجام دهند.
در اینجا میتوانید نسخه ناتمام بازی را بازی کنید تا روند کار عملکردی و همچنین جنبههای غیر کاربردی بازی مانند سطح دشواری ، طراحی سطح و … را تأیید کنید.
ویژگی های کلیدی :
- بررسی می کند که آیا بازی به خوبی ساختار یافته و کارکتر محور است یا خیر.
- این عنصر سرگرم کننده ، چالش ها ، خط داستانی را تأیید می کند تا ببیند آیا نوآورانه ، جذاب و کارکتر محور است یا خیر.
تست سازگاری :
این مهمترین عامل در یک بازی است، باید در دستگاههای مختلف و اندازههای مختلف صفحه نمایش بدون به مشکل خوردن کیفیت تجربه کاربری بازی کار کند.
بازی باید با دستگاه های مختلف سازگار باشد یا حتی اگر برای یک دستگاه مانند ایکس باکس باشد ، همه بخش های بازی باید به طور مداوم کار کنند.
ویژگی های کلیدی :
- رابط کاربری بازی را با مقایسه طراحی ، متن و عملکرد آن در اندازه های مختلف صفحه نمایش تأیید می کند.
- عملکرد بازی را با سیستم عامل ها، مرورگرها و دستگاه های مختلف بررسی می کند.
- پایداری، کارایی، مقیاس پذیری و قابلیت استفاده بازی در پلتفرم های مختلف را تایید می کند.
- به غیر از این تکنیکهای تست ، پیادهسازی تکنیکهای تست بازی شامل تست ad-hoc ، تست محلیسازی ، تست عملکرد ، تست Soak، تست بازیابی ، تست امنیتی و … نیز است.
تست بازیابی:
تست بازیابی بررسی میکند که برنامه چقدر میتواند از خرابیها ، خرابیهای سختافزاری و سایر خرابیهای مشابه بازیابی شود.
برنامه مجبور به شکست می شود و بعداً مشاهده می شود که چگونه از شرایط خرابی و محیط بازیابی می شود.
مثال : در حالی که یک برنامه بازی در حال اجرا است ، به طور ناگهانی کنسول بازی را مجددا راه اندازی کنید و صحت یکپارچگی داده ها را بررسی کنید.
تست امنیتی :
این کار برای بررسی میزان ایمن بودن نرم افزار در برابر تهدیدات خارجی انجام می شود.
حفاظت از داده ها در برابر تهدیدات خارجی ، محدودیت های دسترسی کنترل نشده به سیستم ، نقض داده ها و الگوریتم های رمزگذاری ضعیف.
مثال : تغییر URL از /login به /play در یک سایت بازی نباید اجازه دسترسی مستقیم به بازی ها را بدهد.
مراحل تست بازی
حال رسیدیم به مراحل تست بازی ، پس از آشنایی با تمامی پروسه های بالا ، الان نوبت به مراحل تست بازی می رسد.
مرحله شماره ۱ : نیاز ها را جمع آوری کنید
شما باید جزئیاتی مانند استوری بورد ، معماری ، کارکتر های درگیر در بازی ، مفهوم بک اند بازی ، قوانین قابل اجرا و مراحل را جمع آوری و درک کنید.
مرحله شماره ۲ : استراتژی آزمون
در این مرحله شما باید جزئیات را مستند کنید مانند جدول زمانی مورد نیاز ، آزمایش کننده ها ، تعداد چرخه های آزمایش ، انواع تست ، تجزیه و تحلیل تست مبتنی بر ریسک ، Service Level Agreements ، گزارش و …
مرحله شماره ۳ : طراحی موارد تست
شما باید هر دو مورد تست مثبت و منفی را در نظر بگیرید.
برخی از راههای مؤثر برای آزمایش بازی ، آزمایش critical path ، آزمایش exceptional path و تکنیکهای اولیه تست black box است.
مرحله شماره ۴ : اجرا مراحل تست
در اینجا مراحل تست برای کشف باگ ها اجرا می شوند.
برای نتایج بهتر ، آزمایش آلفا ، آزمایش بتا و آزمایش گروه سنی مربوطه انجام می شود.
مرحله شماره ۵ : ثبت نتایج
همه چیز در قالب فیلم و اسکرین شات ضبط می شود تا دید بهتری از نحوه استفاده از برنامه داشته باشید.
این جزئیات رفتار برنامه را تحلیل می کند.
چه مواردی در تست بازی باید بررسی شود
هنگام آزمایش یک بازی ، بخشهای کلیدی خاصی وجود دارد که باید روی آنها تمرکز کرد که مستقیماً بر سازگاری عملکرد و رتبهبندی کاربر تأثیر میگذارد.
بنابراین باید بر اساس این عوامل مهم ، موارد آزمایشی ایجاد کنیم ؛ برخی از این عوامل عبارتند از :
رابط کاربری و عملکرد :
رابط کاربری و عملکرد کلی آن تأثیر مستقیمی بر موفقیت بازی شما دارد.
این دو چیز ، از جمله جذابیت بصری و گیمپلی ، مهمترین چیزهایی هستند که باید به درستی انجام شوند.
در UI چیزهای مختلفی باید تست شوند :
- طرحبندیها و عناصر رابط کاربری : همه بازیها معمولاً برای حداکثر مجموعهای از وضوحهای مختلف صفحه نمایش و انواع مختلف صفحهنمایش هدف قرار میگیرند.
تست رگرسیون باید هر بار زمانی که چیدمان UI تغییر می کند انجام شود تا مطمئن شوید که بازی درست کار می کند. - ساختار و عملکردهای منو : تست ساختار منو ، عملکرد و رفتار صحیح را می توان با ابزار دقیق و کمک چارچوب های مختلف اتوماسیون تست خودکار کرد.
- جهتگیری صفحه : بهطور شگفتانگیزی ، این موضوع در بسیاری از بازیهای موجود بسیار اشتباه است.
به عنوان مثال ، اگر جهت گیری صفحه نمایش در طول بازی تغییر کند چه اتفاقی می افتد ؟
آیا بازی در هر دو حالت افقی و عمودی به خوبی کار می کند؟ - وضوح صفحه : وضوح صفحه نمایش زیادی به خصوص در اندروید وجود دارد و به طور معمول مقیاس خودکار می تواند به توسعه دهندگان بازی کمک کند.
با این حال، به شدت توصیه می شود که بازی خود را در رزولوشن های مختلف تست کنید تا مطمئن شوید که گرافیک دفورمه نمی شود.
عملکرد گرافیکی :
عملکرد گرافیکی باید در انواع دستگاها با مشخصات سخت افزاری متفاوت به خوبی قابل اجرا باشد.
به همین دلیل ، به شدت توصیه می شود که تا حد امکان از دستگاه های واقعی برای آزمایش استفاده کنید.
برای اینکه مشخص کنید بازی شما چقدر به سطوح مختلف استفاده پاسخ میدهد ، باید تستهایی ایجاد کنید که ساعتها طول بکشد تا ببینید بازی چقدر خوب است و همچنین چقدر باتری در طول استفاده طولانی مصرف میشود.
به طور کلی تستهای عملکرد اندازهگیری میکنند که بازی شما چقدر میتواند روی یک دستگاه واقعی پاسخگو باشد.
تجربه کاربری :
تست usability ، جریان ناوبری و در نهایت تجربه کاربری که بازی شما به گیمرها ارائه می دهد ، به سادگی روی دسکتاپ با ماوس و صفحه کلید قابل انجام نیست.
بنابراین شبیه سازها را فراموش کنید و فقط از دستگاه های واقعی برای آزمایش استفاده کنید.
و برای به دست آوردن بهترین درک ممکن از usability بازی شما ، در اینجا دو نکته مهم وجود دارد که باید هنگام آزمایش “تجربه کاربری” در نظر بگیرید :
۱- تعاملات کاربر و پاسخگویی عالی : آزمایش بازی برای عملکرد آن مهم است زیرا این امر باعث ایجاد تجربه مثبت یا منفی کاربر می شود.
برای مثال ، با استفاده از دستگاههای واقعی به راحتی میتوان تأخیرهای عملکرد را نشان داد.
۲- رویدادهای واقعی در پسزمینه : وقفهها ، مصرف باتری ، نحوه تأثیر شارژر بر عملکرد و استفاده کلی.
همه اینها تأثیر قابل توجهی بر تجربه کاربر دارند.
سایر موارد عبارتند از :
- ویژگی های آنلاین و چند نفره
- امنیت
- موسیقی پسزمینه و جلوههای صوتی
- درستی انیمیشن ها
- فیزیک حرکتی در کارکترهای بازی و سایر بخش ها
- بررسی محاسبات مربوط به امتیاز و فیچرها
- بررسی نمایش درست گرافیک و متریال ها
- بررسی گیم پلی و نحوه ی اجرای آن
- بررسی اجرای جلوه های ویژه ی بازی
- کنترل نحوه ی اجرای مراحل
- تست واکنش گرایی سایت
- تنظیم زمان درست نمایش تکست ها و جلوه های صوتی
- تست سیو بازی
- بررسی نصب و اجرای بازی
جمع بندی
چرخه حیات توسعه بازی شامل سه مرحله پیش تولید ، تولید ، تست با استفاده از ابزار تست بازی و استقرار است.
تست بازی ها یک فرآیند تکراری است که هر بیلد جدیدی از بازی ممکن است باگ داشته باشد، بنابراین باید با استفاده از ابزارهای اتوماسیون تست بازی به طور کامل تست شود.
انواع مختلف تست عبارتند از:
- تست عملکرد
- تست سازگاری
- تست انطباق / انطباق
- تست soak
- تست بازیابی
- تست امنیت
و …
تست جعبه سفید برای بازی ها بر جنبه های معماری ، یکپارچه سازی و سیستمی بازی موبایل تمرکز دارد در صورتیکه تست جعبه سیاه بر جنبه های عملکردی و قابلیت های بازی تمرکز دارد.
منابع
مهرسا امینی
برنامه نویس ، انیماتور ، سئوکار
در تاريک ترين لحظات زندگي نيز نور وجود دارد