Object structure

Journal or Publication Title:

Математические вопросы кибернетики и вычислительной техники=Կիբեռնետիկայի և հաշվողական տեխնիկայի մաթեմատիկական հարցեր=Mathematical problems of computer science

Date of publication:

2023

Number:

59

ISSN:

2579-2784 ; e-2538-2788

Additional Information:

Բունիաթյան Մանե Պ., , Գրիգորյան Սեդրակ Վ., Դանիելյան Էմմա Հ., Буниатян Мане П., Григорян Седрак В., Даниелян Емма Г.

Title:

Expert Knowledge-Based RGT Solvers for Software Testing

Other title:

Փորձագիտական գիտելիքների վրա հիմնված RGT SOLVER-ի կիրառումը ծրագրային ապահովման թեստավորման խնդրում ; RGT SOLVER на основе экспертных знаний для тестирования программного обеспечения

Creator:

Buniatyan, Mane P. ; Grigoryan, Sedrak V. ; Danielyan, Emma H.

Corporate Creators:

Synopsys Armenia ; Institute for Informatics and Automation Problems of NAS RA ; EPAM Systems Inc.

Subject:

Mathematical cybernetics ; Computer science

Uncontrolled Keywords:

RGT class ; RGT Solver ; Software testing ; Expert systems

Coverage:

45-56

Abstract:

Program testing is a way of assessing the quality of software and reducing the risk of software failure in operation [1]. Quality issues can cause as financial loss as well as harm to human lives (e.g., when the bug is in medical instruments, cars, etc.). So, it is very hard to underestimate the importance of testing. There are multiple testing techniques, which are split into 3 major categories. One of them includes experience-based techniques. Test cases and scenarios used in experience-based testing are derived from the tester’s knowledge and intuition, as well as their experience with similar applications and technologies. These techniques can be helpful in identifying tests that are not identified easily by other more systematic techniques. Depending on the tester’s approach and experience, experience-based techniques may achieve widely varying degrees of coverage and effectiveness [1]. We propose a method for automation of experience-based testing via a class of combinatorial problems (RGT class). A Solver is developed for the class. It acquires expert knowledge and elaborates effective strategies for RGT problems [2]. The proposed method generates test cases dynamically based on the response of the program. The adequacy of the method is being experimented for ”blender” open-source application, which has Python API allowing to experiment with testing and analyze test results.
Թեստավորումը ծրագրի որակը գնահատելու և շահագործման մեջ ծրագրային ապահովման ձախողման ռիսկերը նվազեցնելու միջոց է: Ծրագրում սխալների առկայությունը կարող է բերել ինչպես ֆինանսական կորուստների, այնպես էլ մարդկային զոհերի (օրինակ, բժշկական սարքավորումների կամ մեքենաներում առկա սխալները): Այսպիսով, բարդ է թերագնահատել թեստավորման կարևորությունը: Թեստավորման մոտեցումները կարելի է բաժանել 3 հիմնական խմբերի, որոնցից մեկը փորձի վրա հիմնված (experience-based) թեստավորումն է: Այս պարագայում թեստերը ստեղծվում են‘ հիմնվելով թեստավորողի գիելիքների և ինտուիցիաի, ինչպես նաև նախկինում նմանատիպ ծրագրերի հետ ունեցած փորձի վրա: Փորձի վրա հիմնված մոտեցումներն օգնում են բացահայտել այնպիսի սխալներ, որոնք շատ բարդ է հայտնաբերել ավելի համակարգված մոտեցումներով: Այս աշխատանքում մենք առաջարկում ենք փորձի վրա հիմնված թեստավորման ավտոմատացում` օգտագործելով կոմբինատոր խնդիրների RGT դասը: RGT դասի խնդիրների լուծման համար մշակվում է RGT Solver-ը՝ ծրագրային փաթեթ, որը կուտակում է փորձագիտական գիտելիքներ և ստեղծում է արդյունավետ ռազմավարություններ RGT դասի խնդիրների լուծման համար: Առաջարկում ենք RGT Solver-ն օգտագործել ծրագրերի թեստավորման խնդրում: Solver-ը ստեղծում է թեստային իրվաիճակներ` կախված ծրագրի արձագանքից/պատասխանից և գնահատում է դրանք ըստ նախապես սահմանված չափանիշների: Այս մոտեցման ադեկվատությունը փորձարկվում է եռաչափ մոդելավորման “Blender” ծրագրի միջոցով:
Тестирование программ-это способ оценки качества программного обеспечения и снижения риска отказа программного обеспечения в работе. Очень трудно недооценить важность тестирования: проблемы с качеством программ могут привести как к финансовым потерям, так и нанести ущерб здоровью людей (например, когда ошибка находится в медицинских приборах, автомобилях и т. д.). Методы тестирования можно подразделить на 3 основные группы. Одна из них - это методы, основанные на опыте. Здесь тестовые примеры создаются на основе знаний и интуиции тестировщика, а также на его опыте работы с аналогичными приложениями и технологиями. Эти методы могут быть полезны при определении тестов, которые не легко идентифицировать другими более систематическими подходами к тестированию. В зависимости от подхода и опыта тестировщика, эти методы могут обеспечивать широкую степень покрытия и эффективность тестирования. В данной статье мы предлагаем метод тестирования на основе опыта (автоматизация тестирования) через класс комбинаторных задач (RGT класс). RGT класс включает такие важные задачи, как защита от вторжений в компьютерные сети, разработка оптимальной стратегии управления и маркетинга в конкурентной среде, тестирование программ, защита воинских частей от различных типов атак, проблемы со связью, отдельные виды обучения, шахматы и шахматоподобные игры. RGT Solver - это программа, которая накапливает экспертные знания и разрабатывает эффективные стратегии для решения задач класса RGT. В качестве экспертной системы для тестирования, основанного на опыте, предлагается использовать RGT Solver. Solver генерирует тестовые ситуации на основе ответа/реакции программы и оценивает их по ряду заранее определенных критериев. Адекватность метода показана на примере приложения с открытым исходным кодом Блендер.

Publisher:

Изд-во НАН РА

Type:

Հոդված

Format:

pdf

Location of original object:

ՀՀ ԳԱԱ Հիմնարար գիտական գրադարան