Web-operated automated execution agent system
The web operation automated execution agent system leverages LLMs to autonomously create and maintain test scripts for web applications, addressing inefficiencies in manual script creation and adaptation to screen changes, thereby improving efficiency.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- NOMURA RESEARCH INSTITUTE
- Filing Date
- 2024-11-20
- Publication Date
- 2026-06-01
AI Technical Summary
Existing methods for creating test scripts for web application automated testing require manual effort and knowledge, leading to inefficiencies and the need for frequent modifications due to changing screen specifications.
A web operation automated execution agent system that uses Large Language Models (LLM) to autonomously scrape web applications, create, and maintain test scripts through user interaction, enabling semi-automatic script creation and maintenance.
Enhances the efficiency of test script creation and maintenance by allowing semi-automatic generation and adaptation to screen changes, reducing manual effort and time.
Smart Images

Figure 2026089161000001_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technology of automatic testing of web applications, and particularly to a technology effective when applied to a web operation automatic execution agent system for creating a test script during automatic testing.
Background Art
[0002] In the automatic testing of web applications, a test script for performing operations related to a test case is created, and by executing this script, operations related to the test case (key strokes on the web application) are automatically performed to obtain and verify the results.
[0003] There are several such script-based automatic testing tools and solutions. For example, Selenium, ATgo (registered trademark), Autify (registered trademark), etc. are generally available as those that analyze the HTML (HyperText Markup Language) of a web page and create a script based on its structure (DOM (Document Object Model)) (note that there is also a tool called Eggplant (registered trademark) that creates a script using AI (Artificial Intelligence) based on the screen and image of a web page rather than on the structure (DOM) of HTML).
[0004] Also, Japanese Patent No. 7283569 (Patent Document 1) describes that by using the characteristics of input elements and operation elements obtained from the screen structure (DOM) of the operation target screen, operations with a relatively low possibility of contributing to the discovery of screen transitions necessary for restoring specification information are extracted, and by excluding such operations from the automatic operation of the screen, the pattern of operations included in the test script is reduced without reducing the accuracy of specification restoration, and the time required for restoring the specification of screen transitions of web applications is shortened.
Prior Art Documents
Patent Documents
[0005] [Patent Document 1] Patent No. 7283569 [Overview of the Initiative] [Problems that the invention aims to solve]
[0006] As mentioned above, automated testing of web applications using scripts requires the creation of test scripts to perform the operations. There are two methods for creating test scripts: one involves manually creating them by parsing the HTML of the target page, and the other involves manually manipulating (typing) the target web page and generating the test scripts systematically based on the results. However, both methods involve manual processing, which presents challenges in terms of the efficiency of test script creation.
[0007] Therefore, the object of the present invention is to provide a web operation automated execution agent system that enables the creation of test scripts for performing operations more efficiently during automated testing of web applications.
[0008] The aforementioned and other objectives and novel features of the present invention will become apparent from this specification and the accompanying drawings. [Means for solving the problem]
[0009] A brief overview of some of the representative inventions disclosed in this application is as follows:
[0010] A typical embodiment of the present invention is a Web operation automated execution agent system, which is a Web operation automated execution agent that automatically performs one or more operations on a Web application, and which obtains the source code of the Web application, creates a script for performing the operations based on the source code using Large Language Models (LLM), and performs the operations on the Web application based on the script. [Effects of the Invention]
[0011] The effects obtained by some of the representative inventions disclosed in this application can be briefly explained as follows:
[0012] In other words, according to a typical embodiment of the present invention, it becomes possible to create test scripts for performing operations more efficiently when automating the testing of a web application. [Brief explanation of the drawing]
[0013] [Figure 1] This figure outlines an example configuration of a web operation automated execution agent system, which is one embodiment of the present invention. [Figure 2] This figure outlines an example of the processing flow in one embodiment of the present invention. [Figure 3] This figure provides an overview of an example of a screen showing the results of keystrokes in one embodiment of the present invention. [Modes for carrying out the invention]
[0014] Embodiments of the present invention will be described in detail below with reference to the drawings. In principle, the same parts will be denoted by the same reference numerals in all the drawings used to describe the embodiments, and repeated descriptions will be omitted. On the other hand, a part that is denoted by a reference numeral and described in one drawing may be referred to again in the description of another drawing, although it will not be shown again.
[0015] <Overview> As mentioned above, automated testing of web applications using scripts requires the creation of test scripts to perform the operations. There are two methods for creating test scripts: one involves manually creating them by parsing the HTML of the target page, and the other involves manually manipulating (typing) the target web page and then systematically generating the test scripts based on the results.
[0016] The former pattern, which involves manually creating test scripts, has the advantage of greater flexibility in writing test code, but it also has the disadvantage of requiring time and effort to create, as well as requiring the creator to have the knowledge and skills to write the scripts.
[0017] On the other hand, the latter pattern has the advantage of saving time and effort compared to the former pattern because it does not require writing a script from scratch. However, it has the disadvantage of requiring manual input for each screen under test, which takes time and effort, and even more so if there are multiple input patterns for the screen. In addition, if the screen specifications change, the test script needs to be modified (maintained), and there is also the disadvantage that the input values in the test script are set as fixed values based on what was typed.
[0018] One embodiment of the present invention, a web operation automated execution agent system, overcomes the disadvantages of each pattern by using LLM, enabling more efficient creation of test scripts. Specifically, in this embodiment, LLM is used to autonomously scrape web applications (websites), and scripts are created by supplementing the results through interaction with a user (developer, tester, etc.) via LLM. This makes it possible to semi-automatically create and maintain test scripts, greatly improving the efficiency of test script creation.
[0019] <System Configuration> FIG. 1 is a diagram schematically showing a configuration example of a web operation automatic execution agent system according to an embodiment of the present invention. The web operation automatic execution agent system 1 is composed of, for example, a server device or a virtual server constructed on a cloud computing service, and is executed by a CPU (not shown) to run an OS (Operating System), a DBMS (DataBase Management System), middleware such as a web server program, and software deployed on a memory from a recording device such as an HDD (Hard Disk Drive) or an SSD (Solid State Drive). In this way, in an automatic test for the website 3, it is an agent system that realizes the function of creating and executing a test script for automatically executing the operations related to the test case.
[0020] The web operation automatic execution agent system 1 has components such as a keystroke processing unit 11, a script creation unit 12, and a script maintenance unit 13 implemented as software.
[0021] The keystroke processing unit 11 automatically performs screen operations (keystrokes) based on a script 15 that describes the operation content and operation procedure in the target screen or screen transition of the website 3, and definition information of parameters at the time of screen input (not shown), and has the function of scraping the keystroke result to obtain output information (such as HTML 14 and JavaScript (registered trademark) code). The script 15 automatically obtains the HTML 14 of the target screen from the website 3, and is created by the LLM 2 through the script creation unit 12 or the script maintenance unit 13 described later based on this. Regarding the mechanism for automatically performing keystrokes based on the script 15, the functions and libraries of the existing automatic test tools described above can be appropriately used.
[0022] The script creation unit 12 has a function of automatically creating a new script 15 by the LLM2 based on the source code (such as HTML14) of the target screen. Further, based on the created script 15, it acquires information on the result of performing a screen operation (key typing) via the key typing processing unit 11, and feeds back the information on the key typing result to the user 4 (developer, test person, etc.) via the dialogue function provided in the LLM2. It also has a function of complementing the content of the script 15 through the dialogue with the user 4 by the LLM2. The function of automatically creating the script 15 based on HTML14 etc. can be configured to use functions or libraries of, for example, the above-mentioned open-source software Selenium by a program such as Python (registered trademark).
[0023] The script maintenance unit 13 has a function of repeatedly and continuously performing an automatic test for executing a screen operation based on the already created script 15 at a predetermined timing (for example, once a month, etc.). When an error occurs due to a change in the specification of the screen of the website 3 etc., for example, the content of the error is input to the LLM2 for judgment, and the script 15 is corrected according to the judgment result, thereby enabling semi-automatic maintenance of the script 15.
[0024] <Flow of processing> FIG. 2 is a diagram showing an outline of an example of the flow of processing in an embodiment of the present invention. Here, an example of a series of flows of initially creating a script 15 for an automatic test on the website 3 and then maintaining it is shown.
[0025] First, the user 4 is received to input information on the screen or screen transition of the website 3 for which the script 15 is to be created as necessary (S01). When initially creating the script 15, the user 4 inputs the designation of the target screen or screen transition information (URL (Uniform Resource Locator), "XX screen", etc.) to specify the web page for which the screen operation is to be performed.
[0026] Subsequently, the keystroke processing unit 11 and other components acquire the content (HTML source) of the target web page (S02), and based on this, the script creation unit 12 uses LLM2 to create a script 15 (S03). Then, based on the created script 15, the keystroke processing unit 11 automatically executes keystrokes on the target web page (S04), scrapes the keystroke results, and obtains output information such as HTML 14 by downloading (S05).
[0027] Subsequently, based on the HTML14 content related to the keystroke result, the script creation unit 12 provides feedback of the keystroke result to the user 4 via the interactive function provided by LLM2 (S06). Here, for example, the information of the keystroke result is presented to the user 4 via the interactive function provided by LLM2, and the user 4 inputs the confirmation result. Appropriate prompts are created and input to LLM2 so that the information of the keystroke result presented by LLM2 includes, for example, whether the process related to the keystroke completed successfully, if it did not complete successfully, the result of determining whether the cause is a problem in the code of the target web page or in the script 15, and suggestions for corrections if there is a problem with the script 15.
[0028] Figure 3 is a schematic diagram illustrating an example of a screen showing the result of keystrokes in one embodiment of the present invention. This screen shows an example of a screen for placing a buy order for a specified stock, and the values specified in each operation registered in script 15 are automatically entered into fields such as "Market," "Number of Shares," "Order Type," "Unit Price," and "Period." These values may be determined and set by LLM2 when the script creation unit 12 creates script 15, for example, or the values may be registered in a parameter definition file (not shown) and retrieved and set.
[0029] Then, after entering the order details as described above, the order is processed automatically by pressing the "Go to Order Confirmation Screen" button. However, if the checkbox labeled "□This order is not an insider trade" at the bottom of the screen in Figure 3 is not checked, an error screen will appear at the top of the screen displaying a message such as "!Please confirm that this is not an insider trade and check the checkbox," and it will not be possible to proceed to the order confirmation screen.
[0030] If the keystroke result is such an error, the feedback to user 4 in step S06 of Figure 2 is, for example, provided by LLM2, "I can't proceed because I'm encountering an error like the one attached." From the error message and HTML source, "This order does not constitute insider trading." I think you should check the checkbox and proceed to the next screen. The source code for the relevant section is as follows:
[0031] name="insiderKknnFlg" id="checkbox-1" "Shall I modify the script and then run it?" Along with this message, the system responds to user 4 by attaching a screenshot of the screen shown in Figure 3. User 4 can modify the script 15 as needed by interacting with LLM2 through its chat function, including accepting the suggested corrections from LLM2 for such errors (S07). In other words, due to the characteristics of LLM2, it is virtually impossible for the script creation unit 12 to create a script 15 that perfectly matches User 4's intentions in step S03. Instead, a script 15 that is close to 100% complete can be created by supplementing the remaining 20% through dialogue between LLM2 and User 4, starting with an 80% complete script 15 created by LLM2.
[0032] After making corrections through interaction with LLM2, when User 4 finally approves Script 15 (for example, by entering a message such as "OK, that's fine" in response to a suggestion from LLM2), the keystroke processing unit 11 calls and executes Script 15 (S08). This allows the system to automatically perform appropriate operations (keystrokes) on the target web page in accordance with the contents of Script 15.
[0033] In this embodiment, the script maintenance unit 13 continuously performs a processing loop, for example once a month, which involves performing operations (keystrokes) based on the created script 15 (S04), scraping the results of the keystrokes (S05), providing feedback on the results (S06), and modifying the script (S07). This allows the script 15 to be semi-automatically modified (maintained) in response to sudden changes in the screen specifications of a web page.
[0034] Furthermore, when the script creation unit 12 creates the initial script 15, the errors detected by scraping the keystroke results in step S05 may include not only errors inherent in the script 15 but also errors inherent in the target web page. It is desirable to distinguish between these using LLM2 and then provide feedback to the user 4 in step S06.
[0035] On the other hand, when the script maintenance unit 13 performs maintenance on an existing script 15, the errors detected by scraping the keystroke results in step S05 are due to the script 15 no longer conforming to the changes in the screen specifications, and are essentially errors inherent in the script 15. The location of the error can be identified by comparing the current HTML 14 of the target web page with the previous HTML 14 (before the screen specifications were changed) and examining the differences. To do this, it is necessary to keep a history of the HTML 14 before the most recent change (more precisely, the one from when the script 15 last performed an operation (keystroke)).
[0036] As described above, according to the Web operation automated execution agent system 1, which is one embodiment of the present invention, the system autonomously scrapes a website 3 using LLM2, and creates and modifies a script 15 by supplementing the results while interacting with the user 4 via LLM2. By continuously repeating this series of processes, it becomes possible to semi-automatically create and maintain the script 15, and the efficiency of script creation 15 can be greatly improved.
[0037] The present inventors have described the invention in detail based on embodiments above, but it goes without saying that the present invention is not limited to the above embodiments and can be modified in various ways without departing from its essence. Furthermore, the above embodiments are described in detail for the purpose of explaining the present invention in an easy-to-understand manner and are not necessarily limited to those having all the configurations described. In addition, it is possible to add, delete, or replace some of the configurations of the above embodiments with other configurations.
[0038] Furthermore, each of the above configurations, functions, processing units, and processing means may be implemented in hardware, in whole or in part, for example, by designing them as integrated circuits. Alternatively, each of the above configurations, functions, and means may be implemented in software by having the processor interpret and execute programs that implement each function. Information such as programs, tables, and files that implement each function can be stored in memory, hard disks, SSDs, or other recording devices, or in recording media such as IC cards, SD cards, or DVDs.
[0039] Furthermore, in the diagrams above, the control lines and information lines shown are those deemed necessary for explanation and do not necessarily represent all control lines and information lines that would be present in the actual implementation. In reality, it can be assumed that almost all components are interconnected. [Industrial applicability]
[0040] This invention can be used in a web operation automated execution agent system that creates test scripts for automated testing. [Explanation of Symbols]
[0041] 1…Web operation automated execution agent system, 2…LLM, 3…Website, 4…User 11...Key press processing unit, 12...Script creation unit, 13...Script maintenance unit, 14...HTML, 15...Script
Claims
1. A web operation automation agent that automatically performs one or more operations in a web application, A web operation automated execution agent system that obtains the source code of the aforementioned web application, creates a script for performing the aforementioned operations using a large-scale language model (hereinafter referred to as "LLM") based on the aforementioned source code, and performs the aforementioned operations on the web application based on the aforementioned script.
2. In the Web operation automated execution agent system described in claim 1, A web operation automated execution agent system that obtains result information of the operation performed on the web application based on the script, presents suggested modifications to the user via the LLM based on the result information, and modifies the script based on the content of the interaction with the user via the LLM.
3. In the Web operation automated execution agent system described in claim 1, A web operation automated execution agent system that obtains result information of the operation performed on the web application based on the script, and modifies the script using LLM based on the result information.
4. In the Web operation automated execution agent system described in claim 1, A web operation automated execution agent system that, when presenting the proposed modifications to the user based on the result information using the LLM, creates the proposed modifications based on the most recent changes to the source code of the web application.