Підхід до автоматизації тестування відеоігор
DOI:
https://doi.org/10.20535/1560-8956.47.2025.340165Ключові слова:
автоматизація тестування, піраміда тестування, assert, нефункціональне тестуванняАнотація
Об’єктом дослідження є автоматизація тестування відеоігор та засоби її досягнення. Автоматизація тестування допомагає пришвидшити процес розробки та ефективніше розробляти відеоігри. Але темпи автоматизації тестування в галузі низькі. Класичні засоби автоматизації тестування не пристосовані до сфери розробки ігор, до того ж вони не охоплюють нефункціональні рівні розробки. Це викликано характером галузі зі швидкими змінами в дизайні та вимогах і її мультидисциплінарністю, де коректність виконання не є достатнім критерієм для оцінки якості програмного забезпечення. У статті розглядаються ці питання та пропонується нова структура рівнів тестування, яка базується на класичній піраміді тестування. Значна увага приділяється дослідженню різних рівнів деталізації тестування та їх впливу на процеси: твердження (assertions), модульні тести, інтеграційні тести, наскрізні тести та нефункціональні тести. У статті розглядаються різні рівні тестування та приклади з практики для кожного рівня, описуючи, яку цінність він приніс команді, яка його застосувала. Твердження (assertions) охоплюють логіку низького рівня, але їх легко підтримувати, оскільки вони є частиною працюючого коду. Модульні тести мають вищий рівень гранулярності, щоб менше прив’язуватись до деталей реалізації, оскільки код часто змінюється. Інтеграційні тести перевіряють всю механіку за допомогою вбудованих інструментів у рушій для оцінки поведінки під час виконання. Наскрізні тести охоплю- ють великі фрагменти гри, що тестується, і охоплюють інші речі, окрім правильності, як-от продуктивність. Нефункціональні тести зосереджені на нефункціональних якісних критеріях, таких як баланс і доступність. Вони охоплюють інші якісні критерії, оскільки розробка ігор є комплексним, мультидисциплінарним полем, і правильність виконання не означає її успіх. Рішення забезпечує тестовий підхід, який простий у підтримці та застосуванні, і дозволяє тестувати різні нефункціональні якісні критерії. Мета дослідження полягає в тому, щоб пришвидшити процес розробки та підвищити його ефективність, представивши підхід до автоматизації тестування для використання саме в розробці ігор, оскільки ця сфера є унікальною та вимагає окремого підходу до тестування.
Бібл. 11, іл. 8
Посилання
Automated Testing of Gameplay Features in 'Sea of Thieves' https://youtu.be /X673tOi8pU8?si=0yRdgDt5MPcK9muB (last accessed: 17.03.2025)
Martin Fowler. The Practical Test Pyramid. https://martinfowler.com/ articles/ practical-test-pyramid.html (last accessed 17.03.2025)
Kevin Dill. Where The $@*&% Are Your Tests?! https://youtu.be/ IW5i9DjKT3U?si=bOfmtYQDHLWu-t7t (last accessed 17.03.2025)
Roy Osherove. The art of unit testing. https://www.artofunittesting.com/ definition-of-a-unit-test (last accessed 17.03.2025)
Tigerbeetle DBMS presentation https://youtu.be/sC1B3d9C_sI?si=qWGkzBU RrRR8NmzR (last accessed 17.03.2025)
Tigerbeetle code style https://github.com/tigerbeetle/tigerbeetle/blob/main/docs/ TIGER_STYLE.md (last accessed 17.03.2025)
Jamie Brandon. 0031: 2022, systems distributed, random ids, deleting tombstones, disorderly compaction, juggling blocks, code review woes, holiday shutdown, searching for implementors, everything is copy, sharing the page cache after fysncgate, 9/10 climbers, rise and fall of peer review, real-world concurrency https://www.scattered-thoughts.net/log/0031 (last accessed 22.03.2025)
Automated Testing: Using AI Controlled Players to Test 'The Division' https://www.gdcvault.com/play/1026382/Automated-Testing-Using-AI-Controlled (last accessed 17.03.2025)
Automated Testing and Instant Replays in Retro City Rampage https://youtu.be/ W20t1zCZv8M?si=rzEvScrCFw-6Cfsw (last accessed 17.03.2025)
Serhiy Protsenko - How human-like AI bots can take gaming to a new level https://youtu.be/R-h93kDUNQk?si=6vir7svCYtwMYYzk (last accessed 17.03.2025)
A. Becker and D. Görlich, “What is Game Balancing? - An Examination of Concepts”, paradigmplus, vol. 1, no. 1, pp. 22-41, Apr. 2020.
##submission.downloads##
Опубліковано
Номер
Розділ
Ліцензія

Ця робота ліцензується відповідно до Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
1.Автори залишають за собою право на авторство своєї роботи та передають журналу право першої публікації цієї роботи на умовах ліцензії Creative Commons Attribution License, котра дозволяє іншим особам вільно розповсюджувати опубліковану роботу з обов'язковим посиланням на авторів оригінальної роботи та першу публікацію роботи у нашому журналі.
2. Автори мають право укладати самостійні додаткові угоди щодо неексклюзивного розповсюдження роботи у тому вигляді, в якому вона була опублікована нашим журналом (наприклад, розміщувати роботу в електронному сховищі установи або публікувати у складі монографії), за умови збереження посилання на першу публікацію роботи у нашому журналі.
3. Політика журналу дозволяє і заохочує розміщення рукопису роботи авторами в мережі Інтернет (наприклад, на arXiv.org або на особистих веб-сайтах). Причому рукописи статей можуть бути розміщенні у відкритих архівах як до подання рукопису до редакції, так і під час його редакційного опрацювання. Це сприяє виникненню продуктивної наукової дискусії, позитивно позначається на оперативності ознайомлення наукової спільноти з результатами Ваших досліджень і як наслідок на динаміці цитування вже опублікованої у журналі роботи. Детальніше про це: The Effect of Open Access.