# Automated Test Creation Using Large Language Models: A Practical Application
## 2 The Evolution of Software Applications for Test Creation  
Test creation typically requires significant time and human resources. Additionally, the tests must be evaluated for reliability and validity, with pilot testing being essential for identifying weaknesses and gaps, and addressing them [37]. This motivates educators to actively seek ways to automate the process, including the generation of test questions, construction, and evaluation of tests [38]. Initially, applications were developed using traditional methods and technologies. The first such applications relied on the manual input of questions and answers. Educators created questions manually using text editors or specialized software applications for test creation, which required considerable time and effort. Over time, new developments emerged that offered templates and pre-prepared questionnaires, which could be modified and adapted to meet the users' needs [39]. The templates define the structure of various types of test questions and include sentences with fixed text in which there are placeholders. To create a specific question, these placeholders are replaced with appropriate text [40]. The drive for quick test creation led to the development of applications with fixed questions. These applications often utilize static databases with pre-created questions and answers. Educators can select questions from these databases to create tests. In some cases, the questions are categorized and labeled according to the topic, difficulty level, and type of question (multiple choice, open-ended, etc. ), which significantly facilitates the creation of well-balanced tests with randomly generated questions [41]. The need for more flexible online learning solutions led to the development of complex Learning Management Systems (LMS) such as Moodle, Blackboard, Google Classroom, Cornerstone, OpenEDX, and others [42]. These platforms support a variety of tools for creating and managing tests, including basic features for question creation, rule setting, and result tracking. More advanced systems use algorithms to create adaptive tests based on predefined rules, where questions are selected based on the user's previous answers. However, these systems require complex algorithms and significant manual configuration. Some automated test generation systems follow a methodology similar to manual test creation. To create a test question, a sentence is first selected, and a keyword or phrase is identified. The sentence is then transformed into a question format based on the selected key, and possible answers are determined. The formalization of these steps can be roughly divided into six stages: (1) Pre-processing, (2) Sentence selection, (3) Key selection, (4) Question generation, (5) Distractor generation, and (6) Post-processing [43]. In many cases, pre-processing of the text from which questions are generated is applied. Various techniques are used for this purpose, such as text normalization [43], structural analysis [44], sentence simplification [45], lexical analysis [46], statistical analysis [47], syntactic analysis [48], and others. The selection of sentences to be used for constructing test questions is also the subject of numerous studies. Different criteria are employed, such as sentence length [49], occurrence of a particular word [50], parts-of-speech information [47], parse information [51], semantic information [52], and others. For constructing certain types of test questions, keywords are selected based on frequency [53], parts-of-speech information [47], parse information [51], semantic information [54], and others. Older applications rely mainly on basic statistical and syntactic information, while more recent ones increasingly use semantic information [55]. The generation of test questions can be performed using various algorithms. In the simplest case, one or more words from the original sentence are removed, thus creating a \"fill-in-the-blank\" type question.