system
The system automates UI testing using generative AI to address the challenge of compatibility across devices and environments, ensuring efficient and accurate testing for improved application quality and user experience.
Patent Information
- Application Number
- JP2024136529
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-08-16
- Publication Date
- 2026-02-27
AI Technical Summary
Conventional technologies face challenges in efficiently and accurately performing UI tests across different devices and environments.
A system that automates UI testing using a generative AI to collect, analyze, and generate UI test scenarios, execute them, and analyze the results, supporting various devices and environments.
Enables efficient and accurate UI testing across diverse devices and environments, allowing developers to improve application quality and user experience by identifying issues and adapting to changes.
Smart Images

Figure 2026033483000001_ABST
Abstract
Description
[Technical Field]
[0001] The technology of the present disclosure relates to a system. [Background technology]
[0002] Patent document 1 discloses a persona chatbot control method performed by at least one processor, the method including the steps of receiving a user utterance, adding the user utterance to a prompt including an instruction sentence related to a description of the chatbot character, encoding the prompt, and inputting the encoded prompt into a language model to generate a chatbot utterance in response to the user utterance. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Publication No. 2022-180282 Summary of the Invention [Problem to be solved by the invention]
[0004] Conventional technologies have faced the challenge of making it difficult to efficiently and accurately execute UI tests that are compatible with different devices and environments.
[0005] The system according to the embodiment aims to automate efficient and accurate UI testing that is compatible with different devices and environments. [Means for solving the problem]
[0006] A system according to an embodiment includes a collection unit, an analysis unit, a generation unit, an execution unit, and an analysis unit. The collection unit collects device characteristics. The analysis unit analyzes the characteristics collected by the collection unit. The generation unit generates a UI test scenario based on the analysis results obtained by the analysis unit. The execution unit executes the UI test based on the scenario generated by the generation unit. The analysis unit collects and analyzes the results obtained by the execution unit. [Effects of the Invention]
[0007] The system according to the embodiment can automate efficient and accurate UI testing that is compatible with different devices and environments. [Brief explanation of the drawings]
[0008] [Figure 1] 1 is a conceptual diagram showing an example of the configuration of a data processing system according to a first embodiment. [Figure 2] 1 is a conceptual diagram showing an example of main functions of a data processing device and a smart device according to a first embodiment. [Figure 3] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a second embodiment. [Figure 4] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and smart glasses according to a second embodiment. [Figure 5] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a third embodiment. [Figure 6] FIG. 11 is a conceptual diagram showing an example of main functions of a data processing device and a headset-type terminal according to a third embodiment. [Figure 7] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a fourth embodiment. [Figure 8] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and a robot according to a fourth embodiment. [Figure 9] 1 shows an emotion map onto which multiple emotions are mapped. [Figure 10] 1 shows an emotion map onto which multiple emotions are mapped. DETAILED DESCRIPTION OF THE INVENTION
[0009] An example of an embodiment of a system according to the technology of the present disclosure will be described below with reference to the accompanying drawings.
[0010] First, the terms used in the following description will be explained.
[0011] In the following embodiments, a coded processor (hereinafter simply referred to as a "processor") may be a single arithmetic device or a combination of multiple arithmetic devices. Furthermore, the processor may be a single type of arithmetic device or a combination of multiple types of arithmetic devices. Examples of arithmetic devices include a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), a GPGPU (General-Purpose computing on Graphics Processing Units), an APU (Accelerated Processing Unit), or a TPU (Tensor Processing Unit).
[0012] In the following embodiments, a coded RAM (Random Access Memory) is a memory in which information is temporarily stored and is used as a working memory by a processor.
[0013] In the following embodiments, the coded storage is one or more non-volatile storage devices that store various programs, various parameters, etc. Examples of non-volatile storage devices include flash memory (SSD (Solid State Drive)), magnetic disks (e.g., hard disks), and magnetic tapes.
[0014] In the following embodiments, a communication I / F (Interface) with a symbol is an interface including a communication processor, an antenna, etc. The communication I / F controls communication between multiple computers. Examples of communication standards applied to the communication I / F include wireless communication standards including 5G (5th Generation Mobile Communication System), Wi-Fi (registered trademark), and Bluetooth (registered trademark).
[0015] In the following embodiments, "A and / or B" is synonymous with "at least one of A and B." In other words, "A and / or B" means that it may be only A, only B, or a combination of A and B. Furthermore, in this specification, the same concept as "A and / or B" is also applied when three or more things are expressed connected by "and / or."
[0016] [First embodiment] FIG. 1 shows an example of the configuration of a data processing system 10 according to the first embodiment.
[0017] 1, a data processing system 10 includes a data processing device 12 and a smart device 14. An example of the data processing device 12 is a server.
[0018] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0019] The smart device 14 includes a computer 36, a reception device 38, an output device 40, a camera 42, and a communication I / F 44. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The reception device 38, the output device 40, and the camera 42 are also connected to the bus 52.
[0020] The reception device 38 includes a touch panel 38A and a microphone 38B, and receives user input. The touch panel 38A detects contact with a pointer (for example, a pen or a finger) to receive user input by the touch of the pointer. The microphone 38B detects the user's voice to receive user input by voice. The control unit 46A transmits data indicating the user input received by the touch panel 38A and the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 (see FIG. 2) acquires the data indicating the user input.
[0021] Output device 40 includes a display 40A and a speaker 40B, and presents data to a user by outputting the data in a form of expression that the user can perceive (e.g., audio and / or text). Display 40A displays visible information such as text and images in accordance with instructions from processor 46. Speaker 40B outputs audio in accordance with instructions from processor 46. Camera 42 is a compact digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor.
[0022] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54.
[0023] FIG. 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0024] 2, in the data processing device 12, a specific process is performed by the processor 28. A specific processing program 56 is stored in the storage 32. The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific process is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0025] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290. The identification processing unit 290 can estimate a user's emotion using the emotion identification model 59 and perform identification processing using the user's emotion. The emotion estimation function (emotion identification function) using the emotion identification model 59 performs various estimations and predictions regarding the user's emotion, including estimation and prediction of the user's emotion, but is not limited to these examples. Furthermore, the estimation and prediction of emotion also includes, for example, emotion analysis.
[0026] In the smart device 14, the specific processing is performed by the processor 46. The storage 50 stores a specific processing program 60. The specific processing program 60 is used together with the specific processing program 56 by the data processing system 10. The processor 46 reads the specific processing program 60 from the storage 50 and executes the read specific processing program 60 on the RAM 48. The specific processing is realized by the processor 46 operating as the control unit 46A in accordance with the specific processing program 60 executed on the RAM 48. Note that the smart device 14 has a data generation model and an emotion identification model similar to the data generation model 58 and the emotion identification model 59, and can also perform processing similar to that of the specific processing unit 290 using these models.
[0027] Note that a device other than the data processing device 12 may have the data generation model 58. For example, a server device (e.g., a generation server) may have the data generation model 58. In this case, the data processing device 12 obtains a processing result (prediction result, etc.) using the data generation model 58 by communicating with the server device having the data generation model 58. Furthermore, the data processing device 12 may be a server device, or may be a terminal device owned by a user (e.g., a mobile phone, a robot, a home appliance, etc.). Next, an example of processing by the data processing system 10 according to the first embodiment will be described.
[0028] (Example 1) A UI test automation system according to an embodiment of the present invention automates UI testing of applications and websites using a generative AI. The UI test automation system achieves efficient and accurate UI testing by collecting and analyzing device characteristics, generating UI test scenarios, executing them, and analyzing the results. For example, in a UI test automation system, a generative AI analyzes the characteristics of each device and environment to support different devices and environments. The generative AI then automatically generates UI test scenarios based on the analysis results. The generative AI then executes UI tests based on the generated scenarios and collects and analyzes the results. This allows developers and quality managers to easily conduct UI tests and improve application quality. Furthermore, the generative AI responds immediately to changes and updates, improving the user experience of applications through efficient and accurate UI testing. This allows the UI test automation system to automate UI testing of applications and websites, achieving efficient and accurate testing. For example, the generative AI automatically executes UI tests and identifies problems and areas for improvement, resulting in user-friendly applications. This allows developers and quality managers to easily conduct UI tests and improve application quality. Generative AI also responds immediately to changes and updates, allowing UI tests to be performed on the most up-to-date state, improving the user experience of your application through efficient and accurate UI testing.
[0029] A UI test automation system according to an embodiment includes a collection unit, an analysis unit, a generation unit, an execution unit, and an analysis unit. The collection unit collects device characteristics. Device characteristics include, but are not limited to, screen size, resolution, and OS version. The collection unit can collect this information using, for example, a device API. The collection unit can also analyze the device usage history and select an optimal collection method. For example, the collection unit can analyze time periods when the device is frequently used and perform collection during those time periods. The analysis unit analyzes the characteristics collected by the collection unit. The analysis can be performed using, for example, a data analysis method or a machine learning algorithm, but is not limited to, examples. For example, the analysis unit applies an analysis algorithm corresponding to the device category based on the collected device characteristics. The generation unit generates a UI test scenario based on the analysis results obtained by the analysis unit. The generation can be performed using, for example, a generation AI. The generation AI can be, for example, a text generation AI (e.g., LLM) or a multimodal generation AI, but is not limited to, examples. For example, the generation unit generates specific UI test scenarios such as button clicks, page transitions, and input form operations. The execution unit executes a UI test based on the scenario generated by the generation unit. The execution unit executes the UI test according to the generated scenario and collects the test results. For example, the execution unit tests button clicks, page transitions, input form operations, etc. The analysis unit collects and analyzes the results obtained by the execution unit. The analysis unit can display the collected test results in a dashboard format, for example. For example, the analysis unit displays the test results as graphs or charts, providing them in a visually easy-to-understand format. As a result, the UI test automation system according to the embodiment can achieve efficient and accurate UI testing by collecting and analyzing device characteristics, generating UI test scenarios, executing them, and analyzing the results.
[0030] The collection unit can collect information on the screen size, resolution, and OS version using a device's API. The collection unit, for example, collects information on the screen size, resolution, and OS version using a device's API. Examples of APIs include, but are not limited to, a REST API, a GraphQL API, and a device-specific API. For example, the collection unit acquires the device's screen size using a REST API. The collection unit can also acquire the device's resolution using a GraphQL API. The collection unit can also acquire the OS version using a device-specific API. This makes it possible to collect accurate device characteristics by using the device's API. Some or all of the above-described processing by the collection unit may be performed using, for example, AI, or may be performed without using AI. For example, the collection unit can input information acquired from the device's API into a generation AI, which then analyzes the information.
[0031] The generation unit can generate specific UI test scenarios for button clicks, page transitions, and input form operations. The generation unit generates specific UI test scenarios for button clicks, page transitions, and input form operations, for example. The scenarios include, but are not limited to, the type of button to be clicked, the timing of the click, the type of page to transition to, the trigger for the transition, the type of data to be entered, and the timing of the input. For example, the generation unit generates a button click scenario using a generation AI. The generation unit can also generate a page transition scenario using a generation AI. The generation unit can also generate an input form operation scenario using a generation AI. This enables detailed UI testing by generating specific UI test scenarios. Some or all of the above-described processing in the generation unit may be performed using, for example, a generation AI, or may be performed without using a generation AI. For example, the generation unit can create a detailed UI test scenario based on the scenario generated by the generation AI.
[0032] The analysis unit can display the collected test results in a dashboard format. The analysis unit, for example, displays the collected test results in a dashboard format. Dashboard formats include, but are not limited to, the type of graph, the range of data to be displayed, and the display layout. For example, the analysis unit can display the test results as a bar graph. The analysis unit can also display the test results as a line graph. The analysis unit can also display the test results as a pie chart. Displaying the test results in a dashboard format improves the visibility of the test results. Some or all of the above-described processing in the analysis unit may be performed using, for example, AI, or may be performed without using AI. For example, the analysis unit can input the collected test results into a generation AI, which then displays the results in a dashboard format.
[0033] The generation unit can periodically update device and environment information and regenerate scenarios based on the information. The generation unit, for example, periodically updates device and environment information and regenerates scenarios based on the information. Periodically includes, but is not limited to, daily, weekly, or monthly. For example, the generation unit updates device information daily and regenerates scenarios based on the information. The generation unit can also update environment information weekly and regenerate scenarios based on the information. The generation unit can also update device and environment information monthly and regenerate scenarios based on the information. By periodically updating information and regenerating scenarios, UI testing can be performed in the latest state. Some or all of the above-described processing in the generation unit may be performed using, for example, a generation AI, or may be performed without using a generation AI. For example, the generation unit can regenerate scenarios based on information updated by the generation AI.
[0034] The execution unit can execute a UI test according to the generated scenario and collect test results. The execution unit, for example, executes a UI test according to the generated scenario and collects the test results. The test results include, for example, criteria for determining success / failure, the type of data to be collected, and the test execution environment, but are not limited to these examples. For example, the execution unit executes a button click test according to the generated scenario and determines success / failure. The execution unit can also execute a page transition test according to the generated scenario and obtain the data to be collected. The execution unit can also execute an input form operation test according to the generated scenario and record the test execution environment. This enables efficient testing by executing a UI test according to the generated scenario. Some or all of the above-described processing in the execution unit may be performed using, for example, AI, or may be performed without using AI. For example, the execution unit can execute a UI test based on a scenario generated by a generation AI.
[0035] The collection unit can analyze the device usage history and select the optimal collection method. The collection unit, for example, analyzes the device usage history and selects the optimal collection method. The usage history includes, for example, app usage time, operation logs, etc., but is not limited to these examples. For example, the collection unit analyzes time periods when the device is used frequently and performs collection during those time periods. The collection unit can also analyze device usage patterns and select the optimal collection method. The collection unit can also identify an appropriate time for collection from the device usage history and perform collection. In this way, the optimal collection method can be selected by analyzing the device usage history. Some or all of the above-mentioned processing in the collection unit may be performed using, for example, AI, or may be performed without using AI. For example, the collection unit can select the optimal collection method based on the device usage history data analyzed by the generation AI.
[0036] The collection unit may perform filtering based on the user's current usage status and environment when collecting device characteristics. For example, the collection unit may perform filtering based on the user's current usage status and environment when collecting device characteristics. Examples of filtering include, but are not limited to, usage status conditions and environmental conditions. For example, the collection unit may temporarily stop collection when the user is using an app. The collection unit may also prioritize collection when the user is charging the device. The collection unit may also delay collection when the user is moving. This enables appropriate collection of device characteristics by filtering based on the user's usage status and environment. Some or all of the above-described processing in the collection unit may be performed using, for example, AI, or may be performed without using AI. For example, the collection unit may perform filtering based on user usage data estimated by the generation AI.
[0037] The collection unit can select the optimal collection means depending on the user's input method when collecting device characteristics. For example, the collection unit selects the optimal collection means depending on the user's input method when collecting device characteristics. Examples of input methods include, but are not limited to, voice input, text input, and image input. For example, if the user is using voice input, the collection unit can prioritize collecting voice data. Furthermore, if the user is using text input, the collection unit can also prioritize collecting text data. Furthermore, if the user is using image input, the collection unit can also prioritize collecting image data. This enables efficient collection of device characteristics by selecting the optimal collection means depending on the user's input method. Some or all of the above-described processing in the collection unit may be performed using, for example, AI, or may be performed without using AI. For example, the collection unit can select the optimal collection means based on the user's input method data estimated by the generation AI.
[0038] The collection unit may prioritize collecting highly relevant characteristics by taking into account the user's geographical location information when collecting device characteristics. For example, the collection unit may prioritize collecting highly relevant characteristics by taking into account the user's geographical location information when collecting device characteristics. Examples of geographical location information include, but are not limited to, GPS data and IP addresses. For example, if the user is in a specific area, the collection unit may prioritize collecting characteristics related to that area. Furthermore, if the user is traveling, the collection unit may prioritize collecting characteristics related to the user's destination. Furthermore, if the user is staying in a specific location, the collection unit may prioritize collecting characteristics related to that location. In this way, highly relevant characteristics can be prioritized by taking into account the user's geographical location information. Some or all of the above-described processing by the collection unit may be performed using, for example, AI, or may be performed without using AI. For example, the collection unit may prioritize collecting highly relevant characteristics based on the user's geographical location information data estimated by the generation AI.
[0039] The collection unit may analyze the user's social media activity and collect related characteristics when collecting device characteristics. For example, the collection unit may analyze the user's social media activity and collect related characteristics when collecting device characteristics. Social media activity may include, but is not limited to, post content, the number of likes, and the number of followers. For example, the collection unit may collect characteristics related to locations where the user checks in on social media. The collection unit may also analyze the user's social media posts and collect related characteristics. The collection unit may also collect related characteristics by referring to the activities of the user's friends on social media. In this way, related characteristics can be collected by analyzing the user's social media activity. Some or all of the above-described processing by the collection unit may be performed using, for example, AI, or may be performed without using AI. For example, the collection unit may collect related characteristics based on the user's social media activity data analyzed by the generation AI.
[0040] The collection unit can customize the collection method by reflecting the user's past feedback when collecting device characteristics. For example, the collection unit customizes the collection method by reflecting the user's past feedback when collecting device characteristics. Feedback includes, but is not limited to, user comments, evaluation points, etc. For example, the collection unit adjusts the collection method based on feedback provided by the user in the past. The collection unit can also select an optimal collection method based on the user's past feedback. The collection unit can also adjust the collection timing by reflecting the user's feedback. In this way, the collection method can be customized by reflecting the user's past feedback. Some or all of the above-described processing in the collection unit may be performed using, for example, AI, or may be performed without using AI. For example, the collection unit can customize the collection method based on user feedback data analyzed by the generation AI.
[0041] The analysis unit can adjust the level of detail of the analysis based on the importance of the device characteristics during analysis. For example, the analysis unit adjusts the level of detail of the analysis based on the importance of the device characteristics during analysis. The importance includes, but is not limited to, impact and frequency. For example, the analysis unit performs a detailed analysis of characteristics with high importance. The analysis unit can also perform a simplified analysis of characteristics with low importance. The analysis unit can also determine the priority of the analysis based on the importance. This enables efficient analysis by adjusting the level of detail of the analysis based on the importance of the device characteristics. Some or all of the above-described processing in the analysis unit may be performed using, for example, AI, or may be performed without using AI. For example, the analysis unit can adjust the level of detail of the analysis based on the importance data of the device characteristics estimated by the generation AI.
[0042] The analysis unit can apply different analysis algorithms depending on the device category during analysis. For example, the analysis unit applies different analysis algorithms depending on the device category during analysis. Categories include, but are not limited to, smartphones, tablets, and desktops. For example, the analysis unit applies an analysis algorithm specialized for smartphones in the case of a smartphone. Furthermore, the analysis unit can apply an analysis algorithm specialized for tablets in the case of a tablet. Furthermore, the analysis unit can apply an analysis algorithm specialized for desktops in the case of a desktop. This enables highly accurate analysis by applying different analysis algorithms depending on the device category. Some or all of the above-described processing in the analysis unit may be performed using, for example, AI, or may be performed without using AI. For example, the analysis unit can apply an appropriate analysis algorithm based on the device category data estimated by the generation AI.
[0043] The analysis unit can improve the accuracy of the analysis by referring to the user's past analysis results during analysis. For example, the analysis unit can improve the accuracy of the analysis by referring to the user's past analysis results during analysis. Past analysis results include, but are not limited to, past test data, analysis reports, etc. For example, the analysis unit can adjust the analysis algorithm based on the user's past analysis results. The analysis unit can also improve the accuracy of the analysis based on the user's past analysis results. The analysis unit can also adjust the level of detail of the analysis by referring to the user's past analysis results. This improves the accuracy of the analysis by referring to the user's past analysis results. Some or all of the above-described processing in the analysis unit can be performed using, for example, AI, or can be performed without using AI. For example, the analysis unit can improve the accuracy of the analysis based on the user's past analysis result data analyzed by the generation AI.
[0044] The analysis unit can determine the analysis priority based on the collection time of the device characteristics during analysis. The analysis unit, for example, determines the analysis priority based on the collection time of the device characteristics during analysis. The collection time includes, but is not limited to, the latest data, past data, etc. For example, the analysis unit prioritizes analysis of the latest device characteristics. The analysis unit can also postpone analysis of older device characteristics. The analysis unit can also determine the analysis priority based on the collection time. In this way, by determining the analysis priority based on the collection time of the device characteristics, the latest information can be analyzed preferentially. Some or all of the above-described processing in the analysis unit may be performed using, for example, AI, or may be performed without using AI. For example, the analysis unit can determine the analysis priority based on collection time data of the device characteristics estimated by the generation AI.
[0045] The analysis unit can adjust the order of analysis based on the relevance of device characteristics during analysis. The analysis unit, for example, adjusts the order of analysis based on the relevance of device characteristics during analysis. Relevance includes, for example, data correlation and causal relationship, but is not limited to such examples. For example, the analysis unit prioritizes analysis of highly relevant characteristics. The analysis unit can also postpone analysis of less relevant characteristics. The analysis unit can also adjust the order of analysis based on the relevance of characteristics. This enables efficient analysis by adjusting the order of analysis based on the relevance of device characteristics. Some or all of the above-described processing in the analysis unit may be performed using, for example, AI, or may be performed without using AI. For example, the analysis unit can adjust the order of analysis based on device characteristic relevance data estimated by the generation AI.
[0046] The analysis unit can adjust the use of technical terms in the analysis according to the user's level of expertise during analysis. For example, the analysis unit can adjust the use of technical terms in the analysis according to the user's level of expertise during analysis. Technical terms include, but are not limited to, technical terms and industry jargon. For example, the analysis unit uses a lot of technical terms when the user has specialized knowledge. The analysis unit can also avoid technical terms when the user does not have specialized knowledge. The analysis unit can also adjust the use of technical terms in the analysis according to the user's level of expertise. By adjusting the use of technical terms in the analysis according to the user's level of expertise, analysis results that are easy for the user to understand can be provided. Some or all of the above-described processing in the analysis unit can be performed using, for example, AI, or without AI. For example, the analysis unit can adjust the use of technical terms in the analysis based on the user's level of expertise data estimated by the generation AI.
[0047] The generation unit can adjust the level of detail of a scenario based on the importance of device characteristics when generating a scenario. For example, the generation unit adjusts the level of detail of a scenario based on the importance of device characteristics when generating a scenario. The importance includes, but is not limited to, impact and frequency. For example, the generation unit generates a detailed scenario for characteristics with high importance. The generation unit can also generate a simplified scenario for characteristics with low importance. The generation unit can also determine the priority of scenarios according to their importance. This enables efficient scenario generation by adjusting the level of detail of a scenario based on the importance of device characteristics. Some or all of the above-described processing in the generation unit may be performed using, for example, a generation AI, or may be performed without using a generation AI. For example, the generation unit can adjust the level of detail of a scenario based on the importance data of device characteristics estimated by the generation AI.
[0048] The generation unit can apply different scenario generation algorithms depending on the device category when generating a scenario. For example, the generation unit applies different scenario generation algorithms depending on the device category when generating a scenario. Categories include, but are not limited to, smartphones, tablets, and desktops. For example, the generation unit applies a scenario generation algorithm specialized for smartphones in the case of a smartphone. Furthermore, the generation unit can apply a scenario generation algorithm specialized for tablets in the case of a tablet. Furthermore, the generation unit can apply a scenario generation algorithm specialized for desktops in the case of a desktop. In this way, applying different scenario generation algorithms depending on the device category enables highly accurate scenario generation. Some or all of the above-described processing in the generation unit may be performed using, for example, a generation AI, or may be performed without using a generation AI. For example, the generation unit can apply an appropriate scenario generation algorithm based on device category data estimated by the generation AI.
[0049] The generation unit can improve the accuracy of a scenario by referring to the user's past scenario generation results when generating a scenario. For example, the generation unit can improve the accuracy of a scenario by referring to the user's past scenario generation results when generating a scenario. Past scenario generation results include, but are not limited to, past test scenarios and generation reports. For example, the generation unit can adjust the scenario generation algorithm based on the user's past scenario generation results. The generation unit can also improve the accuracy of a scenario from the user's past scenario generation results. The generation unit can also adjust the level of detail of a scenario by referring to the user's past scenario generation results. In this way, the accuracy of a scenario is improved by referring to the user's past scenario generation results. Some or all of the above-described processing in the generation unit can be performed, for example, using a generation AI or without using a generation AI. For example, the generation unit can improve the accuracy of a scenario based on the user's past scenario generation result data analyzed by the generation AI.
[0050] The generation unit can determine the priority of scenarios based on the collection time of device characteristics when generating a scenario. For example, the generation unit determines the priority of scenarios based on the collection time of device characteristics when generating a scenario. The collection time includes, but is not limited to, the latest data, past data, etc. For example, the generation unit preferentially reflects the latest device characteristics in the scenario. The generation unit can also postpone older device characteristics. The generation unit can also determine the priority of scenarios based on the collection time. In this way, by determining the priority of scenarios based on the collection time of device characteristics, the latest information can be preferentially reflected in the scenario. Some or all of the above-described processing in the generation unit may be performed using, for example, a generation AI, or may be performed without using a generation AI. For example, the generation unit can determine the priority of scenarios based on collection time data of device characteristics estimated by the generation AI.
[0051] The generation unit can adjust the order of scenarios based on the relevance of device characteristics when generating scenarios. For example, the generation unit adjusts the order of scenarios based on the relevance of device characteristics when generating scenarios. Relevance includes, but is not limited to, data correlation and dependency. For example, the generation unit prioritizes reflecting highly relevant characteristics in the scenario. The generation unit can also postpone reflecting less relevant characteristics. The generation unit can also adjust the order of scenarios based on the relevance of characteristics. This enables efficient scenario generation by adjusting the order of scenarios based on the relevance of device characteristics. Some or all of the above-described processing in the generation unit may be performed using, for example, a generation AI, or may be performed without using a generation AI. For example, the generation unit can adjust the order of scenarios based on device characteristic relevance data estimated by the generation AI.
[0052] The generation unit can adjust the use of technical terms in the scenario according to the user's level of expertise when generating a scenario. For example, the generation unit can adjust the use of technical terms in the scenario according to the user's level of expertise when generating a scenario. Technical terms include, but are not limited to, technical terms and industry jargon. For example, if the user has specialized knowledge, the generation unit can generate a scenario that uses a lot of technical terms. Furthermore, if the user does not have specialized knowledge, the generation unit can generate a scenario that avoids technical terms. Furthermore, the generation unit can adjust the use of technical terms in the scenario according to the user's level of expertise. This allows for providing a scenario that is easy for the user to understand by adjusting the use of technical terms in the scenario according to the user's level of expertise. Some or all of the above-described processing in the generation unit can be performed, for example, using a generation AI, or can be performed without using a generation AI. For example, the generation unit can adjust the use of technical terms in the scenario based on the user's level of expertise data estimated by the generation AI.
[0053] The execution unit can adjust the level of execution detail based on the importance of device characteristics when executing a UI test. For example, the execution unit adjusts the level of execution detail based on the importance of device characteristics when executing a UI test. Importance includes, but is not limited to, impact and frequency. For example, the execution unit executes detailed UI tests for characteristics with high importance. The execution unit can also execute simplified UI tests for characteristics with low importance. The execution unit can also determine the priority of UI tests according to their importance. This enables efficient UI testing by adjusting the level of execution detail based on the importance of device characteristics. Some or all of the above-described processing in the execution unit may be performed using, for example, AI, or may be performed without using AI. For example, the execution unit can adjust the level of execution detail based on the importance data of device characteristics estimated by the generation AI.
[0054] The execution unit can apply different execution algorithms depending on the device category when executing a UI test. For example, the execution unit applies different execution algorithms depending on the device category when executing a UI test. Categories include, but are not limited to, smartphones, tablets, and desktops. For example, the execution unit applies an execution algorithm specialized for smartphones in the case of a smartphone. Furthermore, the execution unit can apply an execution algorithm specialized for tablets in the case of a tablet. Furthermore, the execution unit can apply an execution algorithm specialized for desktops in the case of a desktop. This enables highly accurate UI testing by applying different execution algorithms depending on the device category. Some or all of the above-described processing in the execution unit may be performed using, for example, AI, or may be performed without using AI. For example, the execution unit can apply an appropriate execution algorithm based on device category data estimated by the generation AI.
[0055] The execution unit can improve the accuracy of execution by referring to the user's past execution results when executing a UI test. For example, the execution unit can improve the accuracy of execution by referring to the user's past execution results when executing a UI test. Past execution results include, but are not limited to, past test results and execution reports. For example, the execution unit can adjust the execution algorithm based on the user's past execution results. The execution unit can also improve the accuracy of execution based on the user's past execution results. The execution unit can also adjust the level of detail of execution by referring to the user's past execution results. This improves the accuracy of execution by referring to the user's past execution results. Some or all of the above-described processing in the execution unit can be performed using, for example, AI, or can be performed without using AI. For example, the execution unit can improve the accuracy of execution based on the user's past execution result data analyzed by the generation AI.
[0056] The execution unit can determine the execution priority based on the time when device characteristics were collected when executing a UI test. For example, the execution unit determines the execution priority based on the time when device characteristics were collected when executing a UI test. The collection time includes, but is not limited to, the latest data and past data. For example, the execution unit prioritizes testing the latest device characteristics. The execution unit can also postpone testing of older device characteristics. The execution unit can also determine the test priority based on the time when the device characteristics were collected. In this way, by determining the execution priority based on the time when the device characteristics were collected, the latest information can be tested preferentially. Some or all of the above-described processing in the execution unit may be performed using, for example, AI, or may be performed without using AI. For example, the execution unit can determine the execution priority based on data on the time when the device characteristics were collected estimated by the generation AI.
[0057] The execution unit can adjust the order of execution based on the relevance of device characteristics when executing UI tests. For example, the execution unit adjusts the order of execution based on the relevance of device characteristics when executing UI tests. Relevance includes, but is not limited to, data correlation and dependency. For example, the execution unit prioritizes testing of highly relevant characteristics. The execution unit can also postpone testing of less relevant characteristics. The execution unit can also adjust the order of tests based on the relevance of characteristics. This enables efficient UI testing by adjusting the order of execution based on the relevance of device characteristics. Some or all of the above-described processing in the execution unit may be performed using, for example, AI, or may be performed without using AI. For example, the execution unit can adjust the order of execution based on relevance data of device characteristics estimated by the generation AI.
[0058] The execution unit can adjust the use of technical terminology in execution according to the user's level of expertise when executing a UI test. For example, the execution unit adjusts the use of technical terminology in execution according to the user's level of expertise when executing a UI test. Technical terminology includes, but is not limited to, technical terms and industry jargon. For example, if the user has technical expertise, the execution unit can execute a test that uses a lot of technical terminology. Furthermore, if the user does not have technical expertise, the execution unit can execute a test that avoids technical terminology. Furthermore, the execution unit can adjust the use of technical terminology in the test according to the user's level of expertise. This allows for the provision of test results that are easy for the user to understand by adjusting the use of technical terminology in execution according to the user's level of expertise. Some or all of the above-described processing in the execution unit may be performed using, for example, AI, or may be performed without AI. For example, the execution unit can adjust the use of technical terminology in execution based on the user's level of expertise data estimated by the generation AI.
[0059] The analysis unit can adjust the level of detail of the analysis based on the importance of the test results during analysis. For example, the analysis unit can adjust the level of detail of the analysis based on the importance of the test results during analysis. Importance includes, but is not limited to, impact and frequency. For example, the analysis unit can perform a detailed analysis of highly important test results. The analysis unit can also perform a simplified analysis of less important test results. The analysis unit can also determine the priority of the analysis based on the importance. This enables efficient analysis by adjusting the level of detail of the analysis based on the importance of the test results. Some or all of the above-described processing in the analysis unit can be performed using, for example, AI, or without AI. For example, the analysis unit can adjust the level of detail of the analysis based on the importance data of the test results estimated by the generation AI.
[0060] The analysis unit can apply different analysis algorithms depending on the category of the test results during analysis. For example, the analysis unit applies different analysis algorithms depending on the category of the test results during analysis. Categories include, but are not limited to, UI test results, performance test results, and security test results. For example, the analysis unit applies an analysis algorithm specialized for UI to UI test results. Furthermore, the analysis unit can apply an analysis algorithm specialized for performance to performance test results. Furthermore, the analysis unit can apply an analysis algorithm specialized for security to security test results. This enables highly accurate analysis by applying different analysis algorithms depending on the category of the test results. Some or all of the above-described processing in the analysis unit may be performed using, for example, AI, or may be performed without using AI. For example, the analysis unit can apply an appropriate analysis algorithm based on the category data of the test results estimated by the generation AI.
[0061] The analysis unit can improve the accuracy of the analysis by referring to the user's past analysis results during analysis. For example, the analysis unit can improve the accuracy of the analysis by referring to the user's past analysis results during analysis. Past analysis results include, but are not limited to, past test data, analysis reports, etc. For example, the analysis unit can adjust the analysis algorithm based on the user's past analysis results. The analysis unit can also improve the accuracy of the analysis based on the user's past analysis results. The analysis unit can also adjust the level of detail of the analysis by referring to the user's past analysis results. This improves the accuracy of the analysis by referring to the user's past analysis results. Some or all of the above-described processing in the analysis unit can be performed using, for example, AI, or can be performed without using AI. For example, the analysis unit can improve the accuracy of the analysis based on the user's past analysis result data analyzed by the generation AI.
[0062] The analysis unit can determine the analysis priority based on the collection time of the test results during analysis. The analysis unit, for example, determines the analysis priority based on the collection time of the test results during analysis. The collection time includes, but is not limited to, the latest data, past data, etc. For example, the analysis unit prioritizes analysis of the latest test results. The analysis unit can also postpone analysis of older test results. The analysis unit can also determine the analysis priority based on the collection time. In this way, by determining the analysis priority based on the collection time of the test results, the latest information can be analyzed preferentially. Some or all of the above-mentioned processing in the analysis unit may be performed using, for example, AI, or may be performed without using AI. For example, the analysis unit can determine the analysis priority based on test result collection time data estimated by the generation AI.
[0063] The analysis unit can adjust the order of analysis based on the relevance of the test results during analysis. For example, the analysis unit can adjust the order of analysis based on the relevance of the test results during analysis. Relevance includes, but is not limited to, data correlation and dependency. For example, the analysis unit prioritizes analysis of highly relevant results. The analysis unit can also postpone analysis of less relevant results. The analysis unit can also adjust the order of analysis based on the relevance of the results. This enables efficient analysis by adjusting the order of analysis based on the relevance of the test results. Some or all of the above-mentioned processing in the analysis unit can be performed using, for example, AI, or without using AI. For example, the analysis unit can adjust the order of analysis based on relevance data of the test results estimated by the generation AI.
[0064] The analysis unit can adjust the use of technical terms in the analysis according to the user's level of expertise during the analysis. For example, the analysis unit can adjust the use of technical terms in the analysis according to the user's level of expertise during the analysis. Technical terms include, but are not limited to, technical terms and industry jargon. For example, if the user has specialized knowledge, the analysis unit can perform an analysis that uses a lot of technical terms. Furthermore, if the user does not have specialized knowledge, the analysis unit can also perform an analysis that avoids technical terms. Furthermore, the analysis unit can adjust the use of technical terms in the analysis according to the user's level of expertise. This allows for the provision of analysis results that are easy for the user to understand by adjusting the use of technical terms in the analysis according to the user's level of expertise. Some or all of the above-described processing in the analysis unit can be performed using, for example, AI, or without AI. For example, the analysis unit can adjust the use of technical terms in the analysis based on the user's level of expertise data estimated by the generation AI.
[0065] The system according to the embodiment is not limited to the above-described example, and various modifications are possible, for example, as follows.
[0066] The UI test automation system can also collect user operation history and customize test scenarios based on the operation history. For example, the collection unit identifies functions and operation patterns frequently used by users and generates test scenarios based on this. The analysis unit can also analyze the collected operation history to understand user operation trends. The generation unit can generate test scenarios that match the user operation trends based on the analysis results. This enables testing that is in line with the user's actual usage situation, resulting in more realistic test results.
[0067] The UI test automation system can also collect the device's battery status and adjust the timing of test execution based on the battery status. For example, the collection unit temporarily stops test execution if the device's battery is low. The analysis unit can prioritize test execution if the battery is sufficient. The generation unit can adjust the test scenario according to the battery status to achieve efficient testing. This enables testing that takes the device's battery status into consideration, maintaining the device's performance during testing.
[0068] The UI test automation system can also collect the device's network status and adjust the test execution method based on the network status. For example, the collection unit can temporarily stop test execution if the network connection is unstable. The analysis unit can prioritize test execution if the network connection is stable. The generation unit can adjust the test scenario according to the network status to achieve efficient testing. This enables testing that takes network status into account and maintains the performance of the device under test.
[0069] The UI test automation system can also collect the device's temperature status and adjust the timing of test execution based on the temperature status. For example, the collection unit temporarily stops test execution if the device temperature is high. The analysis unit can prioritize test execution if the device temperature is appropriate. The generation unit can adjust the test scenario according to the temperature status to achieve efficient testing. This enables testing that takes the device's temperature status into consideration, maintaining the device's performance during testing.
[0070] The UI test automation system can also collect the device's storage status and adjust the test execution method based on the storage status. For example, the collection unit can temporarily stop test execution if the device's storage capacity is low. The analysis unit can prioritize test execution if the storage capacity is sufficient. The generation unit can adjust the test scenario according to the storage status to achieve efficient testing. This enables testing that takes the device's storage status into consideration and maintains the device's performance during testing.
[0071] The processing flow of the first embodiment will be briefly explained below.
[0072] Step 1: The collection unit collects device characteristics. Device characteristics include, for example, screen size, resolution, and OS version. The collection unit can collect this information using the device's API. It can also analyze the device's usage history and select the optimal collection method. For example, it analyzes the time periods when the device is most frequently used and performs collection during those times. Step 2: The analysis unit analyzes the characteristics collected by the collection unit. The analysis is performed using data analysis techniques and machine learning algorithms. For example, based on the collected device characteristics, an analysis algorithm appropriate for the device category is applied. Step 3: The generator generates UI test scenarios based on the analysis results obtained by the analyzer. This is done using a generation AI. For example, it generates specific UI test scenarios such as button clicks, page transitions, and input form operations. Step 4: The execution unit executes the UI tests based on the scenarios generated by the generation unit. The execution unit runs the UI tests according to the generated scenarios and collects the test results. For example, it tests button clicks, page transitions, input form behavior, etc. Step 5: The analysis unit collects and analyzes the results obtained by the execution unit. The analysis unit can display the collected test results in a dashboard format. For example, the test results can be displayed as graphs or charts, providing a visually easy-to-understand format.
[0073] (Example 2) A UI test automation system according to an embodiment of the present invention automates UI testing of applications and websites using a generative AI. The UI test automation system achieves efficient and accurate UI testing by collecting and analyzing device characteristics, generating UI test scenarios, executing them, and analyzing the results. For example, in a UI test automation system, a generative AI analyzes the characteristics of each device and environment to support different devices and environments. The generative AI then automatically generates UI test scenarios based on the analysis results. The generative AI then executes UI tests based on the generated scenarios and collects and analyzes the results. This allows developers and quality managers to easily conduct UI tests and improve application quality. Furthermore, the generative AI responds immediately to changes and updates, improving the user experience of applications through efficient and accurate UI testing. This allows the UI test automation system to automate UI testing of applications and websites, achieving efficient and accurate testing. For example, the generative AI automatically executes UI tests and identifies problems and areas for improvement, resulting in user-friendly applications. This allows developers and quality managers to easily conduct UI tests and improve application quality. Generative AI also responds immediately to changes and updates, allowing UI tests to be performed on the most up-to-date state, improving the user experience of your application through efficient and accurate UI testing.
[0074] A UI test automation system according to an embodiment includes a collection unit, an analysis unit, a generation unit, an execution unit, and an analysis unit. The collection unit collects device characteristics. Device characteristics include, but are not limited to, screen size, resolution, and OS version. The collection unit can collect this information using, for example, a device API. The collection unit can also analyze the device usage history and select an optimal collection method. For example, the collection unit can analyze time periods when the device is frequently used and perform collection during those time periods. The analysis unit analyzes the characteristics collected by the collection unit. The analysis can be performed using, for example, a data analysis method or a machine learning algorithm, but is not limited to, examples. For example, the analysis unit applies an analysis algorithm corresponding to the device category based on the collected device characteristics. The generation unit generates a UI test scenario based on the analysis results obtained by the analysis unit. The generation can be performed using, for example, a generation AI. The generation AI can be, for example, a text generation AI (e.g., LLM) or a multimodal generation AI, but is not limited to, examples. For example, the generation unit generates specific UI test scenarios such as button clicks, page transitions, and input form operations. The execution unit executes a UI test based on the scenario generated by the generation unit. The execution unit executes the UI test according to the generated scenario and collects the test results. For example, the execution unit tests button clicks, page transitions, input form operations, etc. The analysis unit collects and analyzes the results obtained by the execution unit. The analysis unit can display the collected test results in a dashboard format, for example. For example, the analysis unit displays the test results as graphs or charts, providing them in a visually easy-to-understand format. As a result, the UI test automation system according to the embodiment can achieve efficient and accurate UI testing by collecting and analyzing device characteristics, generating UI test scenarios, executing them, and analyzing the results.
[0075] The collection unit can collect information on the screen size, resolution, and OS version using a device's API. The collection unit, for example, collects information on the screen size, resolution, and OS version using a device's API. Examples of APIs include, but are not limited to, a REST API, a GraphQL API, and a device-specific API. For example, the collection unit acquires the device's screen size using a REST API. The collection unit can also acquire the device's resolution using a GraphQL API. The collection unit can also acquire the OS version using a device-specific API. This makes it possible to collect accurate device characteristics by using the device's API. Some or all of the above-described processing by the collection unit may be performed using, for example, AI, or may be performed without using AI. For example, the collection unit can input information acquired from the device's API into a generation AI, which then analyzes the information.
[0076] The generation unit can generate specific UI test scenarios for button clicks, page transitions, and input form operations. The generation unit generates specific UI test scenarios for button clicks, page transitions, and input form operations, for example. The scenarios include, but are not limited to, the type of button to be clicked, the timing of the click, the type of page to transition to, the trigger for the transition, the type of data to be entered, and the timing of the input. For example, the generation unit generates a button click scenario using a generation AI. The generation unit can also generate a page transition scenario using a generation AI. The generation unit can also generate an input form operation scenario using a generation AI. This enables detailed UI testing by generating specific UI test scenarios. Some or all of the above-described processing in the generation unit may be performed using, for example, a generation AI, or may be performed without using a generation AI. For example, the generation unit can create a detailed UI test scenario based on the scenario generated by the generation AI.
[0077] The analysis unit can display the collected test results in a dashboard format. The analysis unit, for example, displays the collected test results in a dashboard format. Dashboard formats include, but are not limited to, the type of graph, the range of data to be displayed, and the display layout. For example, the analysis unit can display the test results as a bar graph. The analysis unit can also display the test results as a line graph. The analysis unit can also display the test results as a pie chart. Displaying the test results in a dashboard format improves the visibility of the test results. Some or all of the above-described processing in the analysis unit may be performed using, for example, AI, or may be performed without using AI. For example, the analysis unit can input the collected test results into a generation AI, which then displays the results in a dashboard format.
[0078] The generation unit can periodically update device and environment information and regenerate scenarios based on the information. The generation unit, for example, periodically updates device and environment information and regenerates scenarios based on the information. Periodically includes, but is not limited to, daily, weekly, or monthly. For example, the generation unit updates device information daily and regenerates scenarios based on the information. The generation unit can also update environment information weekly and regenerate scenarios based on the information. The generation unit can also update device and environment information monthly and regenerate scenarios based on the information. By periodically updating information and regenerating scenarios, UI testing can be performed in the latest state. Some or all of the above-described processing in the generation unit may be performed using, for example, a generation AI, or may be performed without using a generation AI. For example, the generation unit can regenerate scenarios based on information updated by the generation AI.
[0079] The execution unit can execute a UI test according to the generated scenario and collect test results. The execution unit, for example, executes a UI test according to the generated scenario and collects the test results. The test results include, for example, criteria for determining success / failure, the type of data to be collected, and the test execution environment, but are not limited to these examples. For example, the execution unit executes a button click test according to the generated scenario and determines success / failure. The execution unit can also execute a page transition test according to the generated scenario and obtain the data to be collected. The execution unit can also execute an input form operation test according to the generated scenario and record the test execution environment. This enables efficient testing by executing a UI test according to the generated scenario. Some or all of the above-described processing in the execution unit may be performed using, for example, AI, or may be performed without using AI. For example, the execution unit can execute a UI test based on a scenario generated by a generation AI.
[0080] The collection unit can estimate the user's emotion and adjust the timing of collecting device characteristics based on the estimated user emotion. The collection unit, for example, estimates the user's emotion and adjusts the timing of collecting device characteristics based on the estimated user emotion. Emotions include, but are not limited to, emotion categories such as joy, sadness, and anger. For example, if the user is stressed, the collection unit delays the collection timing to reduce the user's burden. Also, if the user is relaxed, the collection unit can advance the collection timing to efficiently collect device characteristics. Also, if the user is in a hurry, the collection unit can optimize the collection timing to quickly collect device characteristics. This reduces the user's burden by adjusting the collection timing according to the user's emotion. Emotion estimation is realized using an emotion estimation function, for example, an emotion engine or a generation AI. The generation AI can be, but is not limited to, a text generation AI (e.g., LLM) or a multimodal generation AI. Some or all of the above-mentioned processing in the collection unit may be performed using, for example, an AI, or may be performed without using an AI. For example, the collection unit can adjust the collection timing based on the user's emotional data estimated by the generation AI.
[0081] The collection unit can analyze the device usage history and select the optimal collection method. The collection unit, for example, analyzes the device usage history and selects the optimal collection method. The usage history includes, for example, app usage time, operation logs, etc., but is not limited to these examples. For example, the collection unit analyzes time periods when the device is used frequently and performs collection during those time periods. The collection unit can also analyze device usage patterns and select the optimal collection method. The collection unit can also identify an appropriate time for collection from the device usage history and perform collection. In this way, the optimal collection method can be selected by analyzing the device usage history. Some or all of the above-mentioned processing in the collection unit may be performed using, for example, AI, or may be performed without using AI. For example, the collection unit can select the optimal collection method based on the device usage history data analyzed by the generation AI.
[0082] The collection unit may perform filtering based on the user's current usage status and environment when collecting device characteristics. For example, the collection unit may perform filtering based on the user's current usage status and environment when collecting device characteristics. Examples of filtering include, but are not limited to, usage status conditions and environmental conditions. For example, the collection unit may temporarily stop collection when the user is using an app. The collection unit may also prioritize collection when the user is charging the device. The collection unit may also delay collection when the user is moving. This enables appropriate collection of device characteristics by filtering based on the user's usage status and environment. Some or all of the above-described processing in the collection unit may be performed using, for example, AI, or may be performed without using AI. For example, the collection unit may perform filtering based on user usage data estimated by the generation AI.
[0083] The collection unit can select the optimal collection means depending on the user's input method when collecting device characteristics. For example, the collection unit selects the optimal collection means depending on the user's input method when collecting device characteristics. Examples of input methods include, but are not limited to, voice input, text input, and image input. For example, if the user is using voice input, the collection unit can prioritize collecting voice data. Furthermore, if the user is using text input, the collection unit can also prioritize collecting text data. Furthermore, if the user is using image input, the collection unit can also prioritize collecting image data. This enables efficient collection of device characteristics by selecting the optimal collection means depending on the user's input method. Some or all of the above-described processing in the collection unit may be performed using, for example, AI, or may be performed without using AI. For example, the collection unit can select the optimal collection means based on the user's input method data estimated by the generation AI.
[0084] The collection unit can estimate the user's emotions and determine the priority of device characteristics to be collected based on the estimated user emotions. The collection unit, for example, estimates the user's emotions and determines the priority of device characteristics to be collected based on the estimated user emotions. Emotions include, but are not limited to, emotion categories such as joy, sadness, and anger. For example, if the user is stressed, the collection unit postpones collection of less important characteristics. Also, if the user is relaxed, the collection unit can prioritize collecting more important characteristics. Also, if the user is in a hurry, the collection unit can prioritize collecting the most important characteristics. This enables efficient collection by determining the priority of device characteristics according to the user's emotions. Emotion estimation is realized using an emotion estimation function, for example, an emotion engine or a generation AI. The generation AI can be, but is not limited to, a text generation AI (e.g., LLM) or a multimodal generation AI. Some or all of the above-mentioned processing in the collection unit may be performed using, for example, an AI, or without using an AI. For example, the collection unit can determine the priority of device characteristics based on the user's emotional data estimated by the generation AI.
[0085] The collection unit may prioritize collecting highly relevant characteristics by taking into account the user's geographical location information when collecting device characteristics. For example, the collection unit may prioritize collecting highly relevant characteristics by taking into account the user's geographical location information when collecting device characteristics. Examples of geographical location information include, but are not limited to, GPS data and IP addresses. For example, if the user is in a specific area, the collection unit may prioritize collecting characteristics related to that area. Furthermore, if the user is traveling, the collection unit may prioritize collecting characteristics related to the user's destination. Furthermore, if the user is staying in a specific location, the collection unit may prioritize collecting characteristics related to that location. In this way, highly relevant characteristics can be prioritized by taking into account the user's geographical location information. Some or all of the above-described processing by the collection unit may be performed using, for example, AI, or may be performed without using AI. For example, the collection unit may prioritize collecting highly relevant characteristics based on the user's geographical location information data estimated by the generation AI.
[0086] The collection unit may analyze the user's social media activity and collect related characteristics when collecting device characteristics. For example, the collection unit may analyze the user's social media activity and collect related characteristics when collecting device characteristics. Social media activity may include, but is not limited to, post content, the number of likes, and the number of followers. For example, the collection unit may collect characteristics related to locations where the user checks in on social media. The collection unit may also analyze the user's social media posts and collect related characteristics. The collection unit may also collect related characteristics by referring to the activities of the user's friends on social media. In this way, related characteristics can be collected by analyzing the user's social media activity. Some or all of the above-described processing by the collection unit may be performed using, for example, AI, or may be performed without using AI. For example, the collection unit may collect related characteristics based on the user's social media activity data analyzed by the generation AI.
[0087] The collection unit can customize the collection method by reflecting the user's past feedback when collecting device characteristics. For example, the collection unit customizes the collection method by reflecting the user's past feedback when collecting device characteristics. Feedback includes, but is not limited to, user comments, evaluation points, etc. For example, the collection unit adjusts the collection method based on feedback provided by the user in the past. The collection unit can also select an optimal collection method based on the user's past feedback. The collection unit can also adjust the collection timing by reflecting the user's feedback. In this way, the collection method can be customized by reflecting the user's past feedback. Some or all of the above-described processing in the collection unit may be performed using, for example, AI, or may be performed without using AI. For example, the collection unit can customize the collection method based on user feedback data analyzed by the generation AI.
[0088] The analysis unit can estimate the user's emotion and adjust the presentation method of the analysis based on the estimated user's emotion. The analysis unit, for example, estimates the user's emotion and adjusts the presentation method of the analysis based on the estimated user's emotion. Emotions include, but are not limited to, emotion categories such as joy, sadness, and anger. For example, the analysis unit can provide simple, highly visible analysis results when the user is nervous. The analysis unit can also provide detailed analysis results when the user is relaxed. The analysis unit can also provide analysis results that are concise when the user is in a hurry. By adjusting the presentation method of the analysis according to the user's emotion, it is possible to provide analysis results that are easy for the user to understand. Emotion estimation is achieved using an emotion estimation function, for example, an emotion engine or a generation AI. The generation AI can be, for example, a text generation AI (e.g., LLM) or a multimodal generation AI, but is not limited to these examples. Some or all of the above-described processing in the analysis unit may be performed using, for example, AI, or without AI. For example, the analysis unit can adjust the way the analysis is expressed based on the user's emotional data estimated by the generation AI.
[0089] The analysis unit can adjust the level of detail of the analysis based on the importance of the device characteristics during analysis. For example, the analysis unit adjusts the level of detail of the analysis based on the importance of the device characteristics during analysis. The importance includes, but is not limited to, impact and frequency. For example, the analysis unit performs a detailed analysis of characteristics with high importance. The analysis unit can also perform a simplified analysis of characteristics with low importance. The analysis unit can also determine the priority of the analysis based on the importance. This enables efficient analysis by adjusting the level of detail of the analysis based on the importance of the device characteristics. Some or all of the above-described processing in the analysis unit may be performed using, for example, AI, or may be performed without using AI. For example, the analysis unit can adjust the level of detail of the analysis based on the importance data of the device characteristics estimated by the generation AI.
[0090] The analysis unit can apply different analysis algorithms depending on the device category during analysis. For example, the analysis unit applies different analysis algorithms depending on the device category during analysis. Categories include, but are not limited to, smartphones, tablets, and desktops. For example, the analysis unit applies an analysis algorithm specialized for smartphones in the case of a smartphone. Furthermore, the analysis unit can apply an analysis algorithm specialized for tablets in the case of a tablet. Furthermore, the analysis unit can apply an analysis algorithm specialized for desktops in the case of a desktop. This enables highly accurate analysis by applying different analysis algorithms depending on the device category. Some or all of the above-described processing in the analysis unit may be performed using, for example, AI, or may be performed without using AI. For example, the analysis unit can apply an appropriate analysis algorithm based on the device category data estimated by the generation AI.
[0091] The analysis unit can improve the accuracy of the analysis by referring to the user's past analysis results during analysis. For example, the analysis unit can improve the accuracy of the analysis by referring to the user's past analysis results during analysis. Past analysis results include, but are not limited to, past test data, analysis reports, etc. For example, the analysis unit can adjust the analysis algorithm based on the user's past analysis results. The analysis unit can also improve the accuracy of the analysis based on the user's past analysis results. The analysis unit can also adjust the level of detail of the analysis by referring to the user's past analysis results. This improves the accuracy of the analysis by referring to the user's past analysis results. Some or all of the above-described processing in the analysis unit can be performed using, for example, AI, or can be performed without using AI. For example, the analysis unit can improve the accuracy of the analysis based on the user's past analysis result data analyzed by the generation AI.
[0092] The analysis unit can estimate the user's emotion and adjust the length of the analysis based on the estimated user emotion. The analysis unit, for example, estimates the user's emotion and adjusts the length of the analysis based on the estimated user emotion. Emotions include, but are not limited to, emotion categories such as joy, sadness, and anger. For example, the analysis unit can perform a short and concise analysis when the user is in a hurry. The analysis unit can also perform a detailed analysis when the user is relaxed. The analysis unit can also perform a visually stimulating analysis when the user is excited. This allows the analysis length to be adjusted according to the user's emotion, providing an appropriate analysis result for the user. Emotion estimation is achieved using an emotion estimation function, for example, an emotion engine or a generation AI. The generation AI can be, for example, a text generation AI (e.g., LLM) or a multimodal generation AI, but is not limited to these examples. Some or all of the above-described processing in the analysis unit may be performed using AI, or without AI. For example, the analysis unit can adjust the length of the analysis based on the user's emotion data estimated by the generation AI.
[0093] The analysis unit can determine the analysis priority based on the collection time of the device characteristics during analysis. The analysis unit, for example, determines the analysis priority based on the collection time of the device characteristics during analysis. The collection time includes, but is not limited to, the latest data, past data, etc. For example, the analysis unit prioritizes analysis of the latest device characteristics. The analysis unit can also postpone analysis of older device characteristics. The analysis unit can also determine the analysis priority based on the collection time. In this way, by determining the analysis priority based on the collection time of the device characteristics, the latest information can be analyzed preferentially. Some or all of the above-described processing in the analysis unit may be performed using, for example, AI, or may be performed without using AI. For example, the analysis unit can determine the analysis priority based on collection time data of the device characteristics estimated by the generation AI.
[0094] The analysis unit can adjust the order of analysis based on the relevance of device characteristics during analysis. The analysis unit, for example, adjusts the order of analysis based on the relevance of device characteristics during analysis. Relevance includes, for example, data correlation and causal relationship, but is not limited to such examples. For example, the analysis unit prioritizes analysis of highly relevant characteristics. The analysis unit can also postpone analysis of less relevant characteristics. The analysis unit can also adjust the order of analysis based on the relevance of characteristics. This enables efficient analysis by adjusting the order of analysis based on the relevance of device characteristics. Some or all of the above-described processing in the analysis unit may be performed using, for example, AI, or may be performed without using AI. For example, the analysis unit can adjust the order of analysis based on device characteristic relevance data estimated by the generation AI.
[0095] The analysis unit can adjust the use of technical terms in the analysis according to the user's level of expertise during analysis. For example, the analysis unit can adjust the use of technical terms in the analysis according to the user's level of expertise during analysis. Technical terms include, but are not limited to, technical terms and industry jargon. For example, the analysis unit uses a lot of technical terms when the user has specialized knowledge. The analysis unit can also avoid technical terms when the user does not have specialized knowledge. The analysis unit can also adjust the use of technical terms in the analysis according to the user's level of expertise. By adjusting the use of technical terms in the analysis according to the user's level of expertise, analysis results that are easy for the user to understand can be provided. Some or all of the above-described processing in the analysis unit can be performed using, for example, AI, or without AI. For example, the analysis unit can adjust the use of technical terms in the analysis based on the user's level of expertise data estimated by the generation AI.
[0096] The generation unit can estimate the user's emotions and adjust the scenario generation method based on the estimated user emotions. The generation unit, for example, estimates the user's emotions and adjusts the scenario generation method based on the estimated user emotions. Emotions include, but are not limited to, emotion categories such as joy, sadness, and anger. For example, if the user is relaxed, the generation unit can generate a scenario that progresses at a leisurely pace. If the user is in a hurry, the generation unit can generate a scenario that emphasizes the shortest route. If the user is excited, the generation unit can generate a scenario that adds visually stimulating effects. By adjusting the scenario generation method according to the user's emotions, an optimal scenario for the user can be generated. Emotion estimation is achieved using an emotion estimation function, for example, an emotion engine or a generation AI. The generation AI can be, but is not limited to, a text generation AI (e.g., LLM) or a multimodal generation AI. Some or all of the above-described processing in the generation unit may be performed using, for example, the generation AI, or without the generation AI. For example, the generation unit can adjust the scenario generation method based on the user's emotional data estimated by the generation AI.
[0097] The generation unit can adjust the level of detail of a scenario based on the importance of device characteristics when generating a scenario. For example, the generation unit adjusts the level of detail of a scenario based on the importance of device characteristics when generating a scenario. The importance includes, but is not limited to, impact and frequency. For example, the generation unit generates a detailed scenario for characteristics with high importance. The generation unit can also generate a simplified scenario for characteristics with low importance. The generation unit can also determine the priority of scenarios according to their importance. This enables efficient scenario generation by adjusting the level of detail of a scenario based on the importance of device characteristics. Some or all of the above-described processing in the generation unit may be performed using, for example, a generation AI, or may be performed without using a generation AI. For example, the generation unit can adjust the level of detail of a scenario based on the importance data of device characteristics estimated by the generation AI.
[0098] The generation unit can apply different scenario generation algorithms depending on the device category when generating a scenario. For example, the generation unit applies different scenario generation algorithms depending on the device category when generating a scenario. Categories include, but are not limited to, smartphones, tablets, and desktops. For example, the generation unit applies a scenario generation algorithm specialized for smartphones in the case of a smartphone. Furthermore, the generation unit can apply a scenario generation algorithm specialized for tablets in the case of a tablet. Furthermore, the generation unit can apply a scenario generation algorithm specialized for desktops in the case of a desktop. In this way, applying different scenario generation algorithms depending on the device category enables highly accurate scenario generation. Some or all of the above-described processing in the generation unit may be performed using, for example, a generation AI, or may be performed without using a generation AI. For example, the generation unit can apply an appropriate scenario generation algorithm based on device category data estimated by the generation AI.
[0099] The generation unit can improve the accuracy of a scenario by referring to the user's past scenario generation results when generating a scenario. For example, the generation unit can improve the accuracy of a scenario by referring to the user's past scenario generation results when generating a scenario. Past scenario generation results include, but are not limited to, past test scenarios and generation reports. For example, the generation unit can adjust the scenario generation algorithm based on the user's past scenario generation results. The generation unit can also improve the accuracy of a scenario from the user's past scenario generation results. The generation unit can also adjust the level of detail of a scenario by referring to the user's past scenario generation results. In this way, the accuracy of a scenario is improved by referring to the user's past scenario generation results. Some or all of the above-described processing in the generation unit can be performed, for example, using a generation AI or without using a generation AI. For example, the generation unit can improve the accuracy of a scenario based on the user's past scenario generation result data analyzed by the generation AI.
[0100] The generation unit can estimate the user's emotion and adjust the length of the scenario based on the estimated user emotion. The generation unit, for example, estimates the user's emotion and adjusts the length of the scenario based on the estimated user emotion. Emotions include, but are not limited to, emotion categories such as joy, sadness, and anger. For example, if the user is in a hurry, the generation unit can generate a short, concise scenario. If the user is relaxed, the generation unit can generate a longer scenario with detailed explanations. If the user is excited, the generation unit can generate a scenario with visually stimulating effects. By adjusting the length of the scenario according to the user's emotion, the optimal scenario can be provided for the user. Emotion estimation is achieved using an emotion estimation function, for example, an emotion engine or a generation AI. The generation AI can be, but is not limited to, a text generation AI (e.g., LLM) or a multimodal generation AI. Some or all of the above-described processing in the generation unit can be performed using, for example, the generation AI, or without the generation AI. For example, the generation unit can adjust the length of the scenario based on the user's emotional data estimated by the generation AI.
[0101] The generation unit can determine the priority of scenarios based on the collection time of device characteristics when generating a scenario. For example, the generation unit determines the priority of scenarios based on the collection time of device characteristics when generating a scenario. The collection time includes, but is not limited to, the latest data, past data, etc. For example, the generation unit preferentially reflects the latest device characteristics in the scenario. The generation unit can also postpone older device characteristics. The generation unit can also determine the priority of scenarios based on the collection time. In this way, by determining the priority of scenarios based on the collection time of device characteristics, the latest information can be preferentially reflected in the scenario. Some or all of the above-described processing in the generation unit may be performed using, for example, a generation AI, or may be performed without using a generation AI. For example, the generation unit can determine the priority of scenarios based on collection time data of device characteristics estimated by the generation AI.
[0102] The generation unit can adjust the order of scenarios based on the relevance of device characteristics when generating scenarios. For example, the generation unit adjusts the order of scenarios based on the relevance of device characteristics when generating scenarios. Relevance includes, but is not limited to, data correlation and dependency. For example, the generation unit prioritizes reflecting highly relevant characteristics in the scenario. The generation unit can also postpone reflecting less relevant characteristics. The generation unit can also adjust the order of scenarios based on the relevance of characteristics. This enables efficient scenario generation by adjusting the order of scenarios based on the relevance of device characteristics. Some or all of the above-described processing in the generation unit may be performed using, for example, a generation AI, or may be performed without using a generation AI. For example, the generation unit can adjust the order of scenarios based on device characteristic relevance data estimated by the generation AI.
[0103] The generation unit can adjust the use of technical terms in the scenario according to the user's level of expertise when generating a scenario. For example, the generation unit can adjust the use of technical terms in the scenario according to the user's level of expertise when generating a scenario. Technical terms include, but are not limited to, technical terms and industry jargon. For example, if the user has specialized knowledge, the generation unit can generate a scenario that uses a lot of technical terms. Furthermore, if the user does not have specialized knowledge, the generation unit can generate a scenario that avoids technical terms. Furthermore, the generation unit can adjust the use of technical terms in the scenario according to the user's level of expertise. This allows for providing a scenario that is easy for the user to understand by adjusting the use of technical terms in the scenario according to the user's level of expertise. Some or all of the above-described processing in the generation unit can be performed, for example, using a generation AI, or can be performed without using a generation AI. For example, the generation unit can adjust the use of technical terms in the scenario based on the user's level of expertise data estimated by the generation AI.
[0104] The execution unit can estimate the user's emotions and adjust the execution method of the UI test based on the estimated user emotions. For example, the execution unit estimates the user's emotions and adjusts the execution method of the UI test based on the estimated user emotions. Emotions include, but are not limited to, emotion categories such as joy, sadness, and anger. For example, if the user is nervous, the execution unit can execute a simple, highly visible UI test. If the user is relaxed, the execution unit can execute a detailed UI test. If the user is in a hurry, the execution unit can execute a UI test that focuses on the main points. This allows the execution of an optimal test for the user by adjusting the execution method of the UI test according to the user's emotions. Emotion estimation is achieved using an emotion estimation function, for example, an emotion engine or a generation AI. The generation AI can be, but is not limited to, a text generation AI (e.g., LLM) or a multimodal generation AI. Some or all of the above-mentioned processing in the execution unit may be performed using, for example, an AI, or without an AI. For example, the execution unit can adjust the way the UI test is executed based on user emotion data estimated by the generation AI.
[0105] The execution unit can adjust the level of execution detail based on the importance of device characteristics when executing a UI test. For example, the execution unit adjusts the level of execution detail based on the importance of device characteristics when executing a UI test. Importance includes, but is not limited to, impact and frequency. For example, the execution unit executes detailed UI tests for characteristics with high importance. The execution unit can also execute simplified UI tests for characteristics with low importance. The execution unit can also determine the priority of UI tests according to their importance. This enables efficient UI testing by adjusting the level of execution detail based on the importance of device characteristics. Some or all of the above-described processing in the execution unit may be performed using, for example, AI, or may be performed without using AI. For example, the execution unit can adjust the level of execution detail based on the importance data of device characteristics estimated by the generation AI.
[0106] The execution unit can apply different execution algorithms depending on the device category when executing a UI test. For example, the execution unit applies different execution algorithms depending on the device category when executing a UI test. Categories include, but are not limited to, smartphones, tablets, and desktops. For example, the execution unit applies an execution algorithm specialized for smartphones in the case of a smartphone. Furthermore, the execution unit can apply an execution algorithm specialized for tablets in the case of a tablet. Furthermore, the execution unit can apply an execution algorithm specialized for desktops in the case of a desktop. This enables highly accurate UI testing by applying different execution algorithms depending on the device category. Some or all of the above-described processing in the execution unit may be performed using, for example, AI, or may be performed without using AI. For example, the execution unit can apply an appropriate execution algorithm based on device category data estimated by the generation AI.
[0107] The execution unit can improve the accuracy of execution by referring to the user's past execution results when executing a UI test. For example, the execution unit can improve the accuracy of execution by referring to the user's past execution results when executing a UI test. Past execution results include, but are not limited to, past test results and execution reports. For example, the execution unit can adjust the execution algorithm based on the user's past execution results. The execution unit can also improve the accuracy of execution based on the user's past execution results. The execution unit can also adjust the level of detail of execution by referring to the user's past execution results. This improves the accuracy of execution by referring to the user's past execution results. Some or all of the above-described processing in the execution unit can be performed using, for example, AI, or can be performed without using AI. For example, the execution unit can improve the accuracy of execution based on the user's past execution result data analyzed by the generation AI.
[0108] The execution unit can estimate the user's emotions and adjust the execution order of the UI tests based on the estimated user emotions. The execution unit, for example, estimates the user's emotions and adjusts the execution order of the UI tests based on the estimated user emotions. Emotions include, but are not limited to, emotion categories such as joy, sadness, and anger. For example, if the user is nervous, the execution unit can execute tests of lower importance first. Also, if the user is relaxed, the execution unit can execute tests of higher importance first. Also, if the user is in a hurry, the execution unit can execute tests of higher importance first. In this way, by adjusting the execution order of the UI tests according to the user's emotions, the tests can be executed in an order optimal for the user. Emotion estimation is realized using an emotion estimation function, for example, an emotion engine or a generation AI. The generation AI can be, but is not limited to, a text generation AI (e.g., LLM) or a multimodal generation AI. Some or all of the above-described processing in the execution unit may be performed using, for example, an AI, or without using an AI. For example, the execution unit can adjust the execution order of UI tests based on user emotion data estimated by the generation AI.
[0109] The execution unit can determine the execution priority based on the time when device characteristics were collected when executing a UI test. For example, the execution unit determines the execution priority based on the time when device characteristics were collected when executing a UI test. The collection time includes, but is not limited to, the latest data and past data. For example, the execution unit prioritizes testing the latest device characteristics. The execution unit can also postpone testing of older device characteristics. The execution unit can also determine the test priority based on the time when the device characteristics were collected. In this way, by determining the execution priority based on the time when the device characteristics were collected, the latest information can be tested preferentially. Some or all of the above-described processing in the execution unit may be performed using, for example, AI, or may be performed without using AI. For example, the execution unit can determine the execution priority based on data on the time when the device characteristics were collected estimated by the generation AI.
[0110] The execution unit can adjust the order of execution based on the relevance of device characteristics when executing UI tests. For example, the execution unit adjusts the order of execution based on the relevance of device characteristics when executing UI tests. Relevance includes, but is not limited to, data correlation and dependency. For example, the execution unit prioritizes testing of highly relevant characteristics. The execution unit can also postpone testing of less relevant characteristics. The execution unit can also adjust the order of tests based on the relevance of characteristics. This enables efficient UI testing by adjusting the order of execution based on the relevance of device characteristics. Some or all of the above-described processing in the execution unit may be performed using, for example, AI, or may be performed without using AI. For example, the execution unit can adjust the order of execution based on relevance data of device characteristics estimated by the generation AI.
[0111] The execution unit can adjust the use of technical terminology in execution according to the user's level of expertise when executing a UI test. For example, the execution unit adjusts the use of technical terminology in execution according to the user's level of expertise when executing a UI test. Technical terminology includes, but is not limited to, technical terms and industry jargon. For example, if the user has technical expertise, the execution unit can execute a test that uses a lot of technical terminology. Furthermore, if the user does not have technical expertise, the execution unit can execute a test that avoids technical terminology. Furthermore, the execution unit can adjust the use of technical terminology in the test according to the user's level of expertise. This allows for the provision of test results that are easy for the user to understand by adjusting the use of technical terminology in execution according to the user's level of expertise. Some or all of the above-described processing in the execution unit may be performed using, for example, AI, or may be performed without AI. For example, the execution unit can adjust the use of technical terminology in execution based on the user's level of expertise data estimated by the generation AI.
[0112] The analysis unit can estimate the user's emotion and adjust the display method of the analysis results based on the estimated user emotion. The analysis unit, for example, estimates the user's emotion and adjusts the display method of the analysis results based on the estimated user emotion. Emotions include, but are not limited to, emotion categories such as joy, sadness, and anger. For example, if the user is nervous, the analysis unit can provide a simple, highly visible display method. If the user is relaxed, the analysis unit can provide a display method that includes detailed information. If the user is in a hurry, the analysis unit can provide a display method that focuses on the main points. This allows the display method of the analysis results to be adjusted according to the user's emotion, making it easy for the user to understand. Emotion estimation is achieved using an emotion estimation function, for example, an emotion engine or a generation AI. The generation AI can be, for example, a text generation AI (e.g., LLM) or a multimodal generation AI, but is not limited to these examples. Some or all of the above-described processing in the analysis unit may be performed using, for example, AI, or without AI. For example, the analysis unit can adjust the way the analysis results are displayed based on the user's emotional data estimated by the generation AI.
[0113] The analysis unit can adjust the level of detail of the analysis based on the importance of the test results during analysis. For example, the analysis unit can adjust the level of detail of the analysis based on the importance of the test results during analysis. Importance includes, but is not limited to, impact and frequency. For example, the analysis unit can perform a detailed analysis of highly important test results. The analysis unit can also perform a simplified analysis of less important test results. The analysis unit can also determine the priority of the analysis based on the importance. This enables efficient analysis by adjusting the level of detail of the analysis based on the importance of the test results. Some or all of the above-described processing in the analysis unit can be performed using, for example, AI, or without AI. For example, the analysis unit can adjust the level of detail of the analysis based on the importance data of the test results estimated by the generation AI.
[0114] The analysis unit can apply different analysis algorithms depending on the category of the test results during analysis. For example, the analysis unit applies different analysis algorithms depending on the category of the test results during analysis. Categories include, but are not limited to, UI test results, performance test results, and security test results. For example, the analysis unit applies an analysis algorithm specialized for UI to UI test results. Furthermore, the analysis unit can apply an analysis algorithm specialized for performance to performance test results. Furthermore, the analysis unit can apply an analysis algorithm specialized for security to security test results. This enables highly accurate analysis by applying different analysis algorithms depending on the category of the test results. Some or all of the above-described processing in the analysis unit may be performed using, for example, AI, or may be performed without using AI. For example, the analysis unit can apply an appropriate analysis algorithm based on the category data of the test results estimated by the generation AI.
[0115] The analysis unit can improve the accuracy of the analysis by referring to the user's past analysis results during analysis. For example, the analysis unit can improve the accuracy of the analysis by referring to the user's past analysis results during analysis. Past analysis results include, but are not limited to, past test data, analysis reports, etc. For example, the analysis unit can adjust the analysis algorithm based on the user's past analysis results. The analysis unit can also improve the accuracy of the analysis based on the user's past analysis results. The analysis unit can also adjust the level of detail of the analysis by referring to the user's past analysis results. This improves the accuracy of the analysis by referring to the user's past analysis results. Some or all of the above-described processing in the analysis unit can be performed using, for example, AI, or can be performed without using AI. For example, the analysis unit can improve the accuracy of the analysis based on the user's past analysis result data analyzed by the generation AI.
[0116] The analysis unit can estimate the user's emotion and adjust the display order of the analysis results based on the estimated user emotion. The analysis unit, for example, estimates the user's emotion and adjusts the display order of the analysis results based on the estimated user emotion. Emotions include, but are not limited to, emotion categories such as joy, sadness, and anger. For example, if the user is nervous, the analysis unit can display less important results first. Also, if the user is relaxed, the analysis unit can display more important results first. Also, if the user is in a hurry, the analysis unit can display the most important results first. In this way, by adjusting the display order of the analysis results according to the user's emotion, the results can be displayed in an order that is easy for the user to understand. Emotion estimation is realized using an emotion estimation function, for example, an emotion engine or a generation AI. The generation AI can be, for example, a text generation AI (e.g., LLM) or a multimodal generation AI, but is not limited to these examples. Some or all of the above-mentioned processing in the analysis unit may be performed using, for example, AI, or without AI. For example, the analysis unit can adjust the display order of the analysis results based on the user's emotional data estimated by the generation AI.
[0117] The analysis unit can determine the analysis priority based on the collection time of the test results during analysis. The analysis unit, for example, determines the analysis priority based on the collection time of the test results during analysis. The collection time includes, but is not limited to, the latest data, past data, etc. For example, the analysis unit prioritizes analysis of the latest test results. The analysis unit can also postpone analysis of older test results. The analysis unit can also determine the analysis priority based on the collection time. In this way, by determining the analysis priority based on the collection time of the test results, the latest information can be analyzed preferentially. Some or all of the above-mentioned processing in the analysis unit may be performed using, for example, AI, or may be performed without using AI. For example, the analysis unit can determine the analysis priority based on test result collection time data estimated by the generation AI.
[0118] The analysis unit can adjust the order of analysis based on the relevance of the test results during analysis. For example, the analysis unit can adjust the order of analysis based on the relevance of the test results during analysis. Relevance includes, but is not limited to, data correlation and dependency. For example, the analysis unit prioritizes analysis of highly relevant results. The analysis unit can also postpone analysis of less relevant results. The analysis unit can also adjust the order of analysis based on the relevance of the results. This enables efficient analysis by adjusting the order of analysis based on the relevance of the test results. Some or all of the above-mentioned processing in the analysis unit can be performed using, for example, AI, or without using AI. For example, the analysis unit can adjust the order of analysis based on relevance data of the test results estimated by the generation AI.
[0119] The analysis unit can adjust the use of technical terms in the analysis according to the user's level of expertise during the analysis. For example, the analysis unit can adjust the use of technical terms in the analysis according to the user's level of expertise during the analysis. Technical terms include, but are not limited to, technical terms and industry jargon. For example, if the user has specialized knowledge, the analysis unit can perform an analysis that uses a lot of technical terms. Furthermore, if the user does not have specialized knowledge, the analysis unit can also perform an analysis that avoids technical terms. Furthermore, the analysis unit can adjust the use of technical terms in the analysis according to the user's level of expertise. This allows for the provision of analysis results that are easy for the user to understand by adjusting the use of technical terms in the analysis according to the user's level of expertise. Some or all of the above-described processing in the analysis unit can be performed using, for example, AI, or without AI. For example, the analysis unit can adjust the use of technical terms in the analysis based on the user's level of expertise data estimated by the generation AI. === Hard Collateral 1-1 === Each of the multiple elements including the collection unit, analysis unit, generation unit, execution unit, and analysis unit described above is realized, for example, in at least one of the smart device 14 and the data processing device 12. For example, the collection unit can collect device characteristics using the camera 42 or microphone 38B of the smart device 14. The analysis unit can analyze the device characteristics collected by the specific processing unit 290 of the data processing device 12. The generation unit can generate a UI test scenario based on the analysis result by the specific processing unit 290 of the data processing device 12. The execution unit can execute a UI test based on the scenario generated by the control unit 46A of the smart device 14. The analysis unit can collect and analyze the execution result by the specific processing unit 290 of the data processing device 12. === Hard Collateral 1-2 === Each of the multiple elements including the above-mentioned collection unit, analysis unit, generation unit, execution unit, and analysis unit is realized, for example, in at least one of the smart glasses 214 and the data processing device 12. For example, the collection unit can collect device characteristics using the camera 42 or microphone 238 of the smart glasses 214. The analysis unit can analyze the device characteristics collected by the specific processing unit 290 of the data processing device 12. The generation unit can generate a UI test scenario based on the analysis result by the specific processing unit 290 of the data processing device 12. The execution unit can execute the UI test based on the scenario generated by the control unit 46A of the smart glasses 214. The analysis unit can collect and analyze the execution result by the specific processing unit 290 of the data processing device 12. === Hard Collateral 1-3 === Each of the multiple elements including the above-mentioned collection unit, analysis unit, generation unit, execution unit, and analysis unit is realized, for example, in at least one of the headset type terminal 314 and the data processing device 12. For example, the collection unit can collect device characteristics using the camera 42 or microphone 238 of the headset type terminal 314. The analysis unit can analyze the device characteristics collected by the specific processing unit 290 of the data processing device 12. The generation unit can generate a UI test scenario based on the analysis result by the specific processing unit 290 of the data processing device 12. The execution unit can execute a UI test based on the scenario generated by the control unit 46A of the headset type terminal 314. The analysis unit can collect and analyze the execution result by the specific processing unit 290 of the data processing device 12. === Hard Collateral 1-4 === Each of the multiple elements including the above-mentioned collection unit, analysis unit, generation unit, execution unit, and analysis unit is realized, for example, by at least one of the robot 414 and the data processing device 12. For example, the collection unit can collect device characteristics using the camera 42 or microphone 238 of the robot 414. The analysis unit can analyze the device characteristics collected by the specific processing unit 290 of the data processing device 12. The generation unit can generate a UI test scenario based on the analysis result by the specific processing unit 290 of the data processing device 12. The execution unit can execute a UI test based on the scenario generated by the control unit 46A of the robot 414. The analysis unit can collect and analyze the execution result by the specific processing unit 290 of the data processing device 12.
[0120] The system according to the embodiment is not limited to the above-described example, and various modifications are possible, for example, as follows.
[0121] The UI test automation system can also collect user operation history and customize test scenarios based on the operation history. For example, the collection unit identifies functions and operation patterns frequently used by users and generates test scenarios based on this. The analysis unit can also analyze the collected operation history to understand user operation trends. The generation unit can generate test scenarios that match the user operation trends based on the analysis results. This enables testing that is in line with the user's actual usage situation, resulting in more realistic test results.
[0122] The UI test automation system can further estimate the user's emotions and adjust the difficulty of the test scenarios based on the estimated emotions. For example, if the user is feeling stressed, the collection unit can prioritize generating easy scenarios. If the user is feeling relaxed, the analysis unit can generate detailed scenarios. If the user is feeling excited, the generation unit can generate visually stimulating scenarios. In this way, by adjusting the difficulty of the test scenarios according to the user's emotions, it is possible to provide the optimal test environment for the user.
[0123] The UI test automation system can also collect the device's battery status and adjust the timing of test execution based on the battery status. For example, the collection unit temporarily stops test execution if the device's battery is low. The analysis unit can prioritize test execution if the battery is sufficient. The generation unit can adjust the test scenario according to the battery status to achieve efficient testing. This enables testing that takes the device's battery status into consideration, maintaining the device's performance during testing.
[0124] The UI test automation system can further estimate the user's emotions and adjust the feedback method of the test results based on the estimated emotions. For example, if the user is nervous, the collection unit can provide simple, highly visible feedback. If the user is relaxed, the analysis unit can provide detailed feedback. If the user is in a hurry, the generation unit can provide feedback that is concise. In this way, by adjusting the feedback method according to the user's emotions, it is possible to provide feedback that is easy for the user to understand.
[0125] The UI test automation system can also collect the device's network status and adjust the test execution method based on the network status. For example, the collection unit can temporarily stop test execution if the network connection is unstable. The analysis unit can prioritize test execution if the network connection is stable. The generation unit can adjust the test scenario according to the network status to achieve efficient testing. This enables testing that takes network status into account and maintains the performance of the device under test.
[0126] The UI test automation system can further estimate the user's emotions and adjust the test execution order based on the estimated emotions. For example, if the user is nervous, the collection unit can execute less important tests first. If the user is relaxed, the analysis unit can execute more important tests first. If the user is in a hurry, the generation unit can execute the most important tests first. In this way, by adjusting the test execution order according to the user's emotions, the tests can be executed in the order that is optimal for the user.
[0127] The UI test automation system can also collect the device's temperature status and adjust the timing of test execution based on the temperature status. For example, the collection unit temporarily stops test execution if the device temperature is high. The analysis unit can prioritize test execution if the device temperature is appropriate. The generation unit can adjust the test scenario according to the temperature status to achieve efficient testing. This enables testing that takes the device's temperature status into consideration, maintaining the device's performance during testing.
[0128] The UI test automation system can further estimate the user's emotions and adjust the test execution environment based on the estimated emotions. For example, the collection unit can provide a simple execution environment if the user is feeling stressed. The analysis unit can provide a detailed execution environment if the user is relaxed. The generation unit can also provide a basic execution environment if the user is in a hurry. In this way, the execution environment can be adjusted according to the user's emotions, making it possible to provide the optimal test environment for the user.
[0129] The UI test automation system can also collect the device's storage status and adjust the test execution method based on the storage status. For example, the collection unit can temporarily stop test execution if the device's storage capacity is low. The analysis unit can prioritize test execution if the storage capacity is sufficient. The generation unit can adjust the test scenario according to the storage status to achieve efficient testing. This enables testing that takes the device's storage status into consideration and maintains the device's performance during testing.
[0130] The UI test automation system can further estimate the user's emotions and adjust the display method of the test results based on the estimated emotions. For example, if the user is nervous, the collection unit can provide a simple, highly visible display method. If the user is relaxed, the analysis unit can provide a display method that includes detailed information. If the user is in a hurry, the generation unit can provide a display method that focuses on the main points. In this way, by adjusting the display method according to the user's emotions, it is possible to display results that are easy for the user to understand.
[0131] The processing flow of the second embodiment will be briefly explained below.
[0132] Step 1: The collection unit collects device characteristics. Device characteristics include, for example, screen size, resolution, and OS version. The collection unit can collect this information using the device's API. It can also analyze the device's usage history and select the optimal collection method. For example, it analyzes the time periods when the device is most frequently used and performs collection during those times. Step 2: The analysis unit analyzes the characteristics collected by the collection unit. The analysis is performed using data analysis techniques and machine learning algorithms. For example, based on the collected device characteristics, an analysis algorithm appropriate for the device category is applied. Step 3: The generator generates UI test scenarios based on the analysis results obtained by the analyzer. This is done using a generation AI. For example, it generates specific UI test scenarios such as button clicks, page transitions, and input form operations. Step 4: The execution unit executes the UI tests based on the scenarios generated by the generation unit. The execution unit runs the UI tests according to the generated scenarios and collects the test results. For example, it tests button clicks, page transitions, input form behavior, etc. Step 5: The analysis unit collects and analyzes the results obtained by the execution unit. The analysis unit can display the collected test results in a dashboard format. For example, the test results can be displayed as graphs or charts, providing a visually easy-to-understand format.
[0133] The specific processing unit 290 transmits the result of the specific processing to the smart device 14. In the smart device 14, the control unit 46A causes the output device 40 to output the result of the specific processing. The microphone 38B acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.
[0134] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (registered trademark) (Internet search engine).<URL: https: / / openai.com / blog / chatgpt> Examples of generative AIs include the data generation model 58, such as a neural network model (e.g., a neural network model), and a neural network model (e.g., a neural network model). The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating speech, text data indicating text, and image data indicating an image is also input to the data generation model 58. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization. The specification processing unit 290 performs the above-mentioned specification processing using the data generation model 58. The data generation model 58 may be a fine-tuned model so as to output an inference result from a prompt that does not include an instruction. In this case, the data generation model 58 can output an inference result from a prompt that does not include an instruction. The data processing device 12 and the like include multiple types of data generation models 58, and the data generation model 58 includes AIs other than the generative AI. The AI other than the generative AI may be, for example, linear regression, logistic regression, decision tree, random forest, support vector machine (SVM), k-means clustering, convolutional neural network (CNN), recurrent neural network (RNN), generative adversarial network (GAN), or naive Bayes, and can perform various processes, but is not limited to these examples. The AI may also be an AI agent. When the processes of each of the above-mentioned parts are performed by AI, the processes may be performed in part or entirely by AI, but are not limited to these examples. The processes performed by AI, including the generative AI, may be replaced with rule-based processes.
[0135] Furthermore, the processing by the data processing system 10 described above is executed by the specific processing unit 290 of the data processing device 12 or the control unit 46A of the smart device 14, but may also be executed by the specific processing unit 290 of the data processing device 12 and the control unit 46A of the smart device 14. Furthermore, the specific processing unit 290 of the data processing device 12 acquires or collects information necessary for processing from the smart device 14 or an external device, and the smart device 14 acquires or collects information necessary for processing from the data processing device 12 or an external device.
[0136] The correspondence between each part and the device or control part is not limited to the example described above, and various modifications are possible.
[0137] [Second embodiment] FIG. 3 shows an example of the configuration of a data processing system 210 according to the second embodiment.
[0138] 3, the data processing system 210 includes the data processing device 12 and smart glasses 214. An example of the data processing device 12 is a server.
[0139] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN and / or a LAN.
[0140] The smart glasses 214 include a computer 36, a microphone 238, a speaker 240, a camera 42, and a communication I / F 44. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, and the camera 42 are also connected to the bus 52.
[0141] The microphone 238 receives instructions and the like from the user by receiving voice uttered by the user. The microphone 238 captures the voice uttered by the user, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to instructions from the processor 46.
[0142] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the user's surroundings (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).
[0143] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[0144] Fig. 4 shows an example of the main functions of the data processing device 12 and the smart glasses 214. As shown in Fig. 4, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.
[0145] The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0146] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290. The identification processing unit 290 can estimate a user's emotion using the emotion identification model 59 and perform identification processing using the user's emotion. The emotion estimation function (emotion identification function) using the emotion identification model 59 performs various estimations and predictions regarding the user's emotion, including estimation and prediction of the user's emotion, but is not limited to these examples. Furthermore, the estimation and prediction of emotion also includes, for example, emotion analysis.
[0147] In the smart glasses 214, the specific processing is performed by the processor 46. A specific processing program 60 is stored in the storage 50. The processor 46 reads the specific processing program 60 from the storage 50 and executes the read specific processing program 60 on the RAM 48. The specific processing is realized by the processor 46 operating as the control unit 46A in accordance with the specific processing program 60 executed on the RAM 48. The smart glasses 214 also have a data generation model and an emotion identification model similar to the data generation model 58 and the emotion identification model 59, and can perform processing similar to that of the specific processing unit 290 using these models.
[0148] Note that a device other than the data processing device 12 may have the data generation model 58. For example, a server device may have the data generation model 58. In this case, the data processing device 12 communicates with the server device having the data generation model 58 to obtain a processing result (such as a prediction result) using the data generation model 58. Furthermore, the data processing device 12 may be a server device, or may be a terminal device (for example, a mobile phone, a robot, a home appliance, etc.) owned by a user.
[0149] The specific processing unit 290 transmits the result of the specific processing to the smart glasses 214. In the smart glasses 214, the control unit 46A causes the speaker 240 to output the result of the specific processing. The microphone 238 acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.
[0150] The data generation model 58 is a so-called generative AI. An example of the data generation model 58 is a generative AI such as ChatGPT. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 receives a prompt containing an instruction, as well as inference data such as voice data representing speech, text data representing text, and image data representing an image. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization. The identification processing unit 290 performs the above-mentioned identification processing using the data generation model 58. The data generation model 58 may be a fine-tuned model so as to output an inference result from a prompt that does not include an instruction. In this case, the data generation model 58 can output an inference result from a prompt that does not include an instruction. The data processing device 12 and the like include multiple types of data generation models 58, and the data generation model 58 includes AI other than the generative AI. The AI other than the generative AI may be, for example, linear regression, logistic regression, decision tree, random forest, support vector machine (SVM), k-means clustering, convolutional neural network (CNN), recurrent neural network (RNN), generative adversarial network (GAN), or naive Bayes, and can perform various processes, but is not limited to these examples. The AI may also be an AI agent. When the processes of each of the above-mentioned parts are performed by AI, the processes may be performed in part or entirely by AI, but are not limited to these examples. The processes performed by AI, including the generative AI, may be replaced with rule-based processes.
[0151] The data processing system 210 according to the second embodiment performs the same processing as the data processing system 10 according to the first embodiment. The processing by the data processing system 210 is executed by the specific processing unit 290 of the data processing device 12 or the control unit 46A of the smart glasses 214, but may also be executed by the specific processing unit 290 of the data processing device 12 and the control unit 46A of the smart glasses 214. Furthermore, the specific processing unit 290 of the data processing device 12 acquires or collects information required for processing from the smart glasses 214 or an external device, etc., and the smart glasses 214 acquires or collects information required for processing from the data processing device 12 or an external device, etc.
[0152] The correspondence between each part and the device or control part is not limited to the example described above, and various modifications are possible.
[0153] [Third embodiment] FIG. 5 shows an example of the configuration of a data processing system 310 according to the third embodiment.
[0154] 5, the data processing system 310 includes the data processing device 12 and a headset terminal 314. An example of the data processing device 12 is a server.
[0155] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN and / or a LAN.
[0156] The headset type terminal 314 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication I / F 44, and a display 343. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, the camera 42, and the display 343 are also connected to the bus 52.
[0157] The microphone 238 receives instructions and the like from the user by receiving voice uttered by the user. The microphone 238 captures the voice uttered by the user, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to instructions from the processor 46.
[0158] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the user's surroundings (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).
[0159] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[0160] Fig. 6 shows an example of the main functions of the data processing device 12 and the headset type terminal 314. As shown in Fig. 6, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.
[0161] The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0162] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290. The identification processing unit 290 can estimate a user's emotion using the emotion identification model 59 and perform identification processing using the user's emotion. The emotion estimation function (emotion identification function) using the emotion identification model 59 performs various estimations and predictions regarding the user's emotion, including estimation and prediction of the user's emotion, but is not limited to these examples. Furthermore, the estimation and prediction of emotion also includes, for example, emotion analysis.
[0163] In the headset type terminal 314, the identification process is performed by the processor 46. A identification program 60 is stored in the storage 50. The processor 46 reads the identification program 60 from the storage 50 and executes the read identification program 60 on the RAM 48. The identification process is realized by the processor 46 operating as a control unit 46A in accordance with the identification program 60 executed on the RAM 48. Note that the headset type terminal 314 has a data generation model and an emotion identification model similar to the data generation model 58 and the emotion identification model 59, and can also perform processing similar to that of the identification processing unit 290 using these models.
[0164] Note that a device other than the data processing device 12 may have the data generation model 58. For example, a server device may have the data generation model 58. In this case, the data processing device 12 communicates with the server device having the data generation model 58 to obtain a processing result (such as a prediction result) using the data generation model 58. Furthermore, the data processing device 12 may be a server device, or may be a terminal device (for example, a mobile phone, a robot, a home appliance, etc.) owned by a user.
[0165] The specific processing unit 290 transmits the result of the specific processing to the headset type terminal 314. In the headset type terminal 314, the control unit 46A causes the speaker 240 and the display 343 to output the result of the specific processing. The microphone 238 acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.
[0166] The data generation model 58 is a so-called generative AI. An example of the data generation model 58 is a generative AI such as ChatGPT. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 receives a prompt containing an instruction, as well as inference data such as voice data representing speech, text data representing text, and image data representing an image. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization. The identification processing unit 290 performs the above-mentioned identification processing using the data generation model 58. The data generation model 58 may be a fine-tuned model so as to output an inference result from a prompt that does not include an instruction. In this case, the data generation model 58 can output an inference result from a prompt that does not include an instruction. The data processing device 12 and the like include multiple types of data generation models 58, and the data generation model 58 includes AI other than the generative AI. The AI other than the generative AI may be, for example, linear regression, logistic regression, decision tree, random forest, support vector machine (SVM), k-means clustering, convolutional neural network (CNN), recurrent neural network (RNN), generative adversarial network (GAN), or naive Bayes, and can perform various processes, but is not limited to these examples. The AI may also be an AI agent. When the processes of each of the above-mentioned parts are performed by AI, the processes may be performed in part or entirely by AI, but are not limited to these examples. The processes performed by AI, including the generative AI, may be replaced with rule-based processes.
[0167] The data processing system 310 according to the third embodiment performs the same processing as the data processing system 10 according to the first embodiment. The processing by the data processing system 310 is executed by the specific processing unit 290 of the data processing device 12 or the control unit 46A of the headset type terminal 314, but may also be executed by the specific processing unit 290 of the data processing device 12 and the control unit 46A of the headset type terminal 314. Furthermore, the specific processing unit 290 of the data processing device 12 acquires or collects information required for processing from the headset type terminal 314 or an external device, etc., and the headset type terminal 314 acquires or collects information required for processing from the data processing device 12 or an external device, etc.
[0168] The correspondence between each part and the device or control part is not limited to the example described above, and various modifications are possible.
[0169] [Fourth embodiment] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.
[0170] 7, a data processing system 410 includes a data processing device 12 and a robot 414. An example of the data processing device 12 is a server.
[0171] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN and / or a LAN.
[0172] The robot 414 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication I / F 44, and a control target 443. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, the camera 42, and the control target 443 are also connected to the bus 52.
[0173] The microphone 238 receives instructions and the like from the user by receiving voice uttered by the user. The microphone 238 captures the voice uttered by the user, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to instructions from the processor 46.
[0174] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS image sensor or a CCD image sensor, and captures images of the user's surroundings (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).
[0175] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[0176] The control object 443 includes a display device, LEDs in the eyes, and motors that drive the arms, hands, and feet. The posture and gestures of the robot 414 are controlled by controlling the motors of the arms, hands, and feet. Some of the emotions of the robot 414 can be expressed by controlling these motors. In addition, the facial expressions of the robot 414 can also be expressed by controlling the light emission state of the LEDs in the eyes of the robot 414.
[0177] Fig. 8 shows an example of the main functions of the data processing device 12 and the robot 414. As shown in Fig. 8, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.
[0178] The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0179] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290. The identification processing unit 290 can estimate a user's emotion using the emotion identification model 59 and perform identification processing using the user's emotion. The emotion estimation function (emotion identification function) using the emotion identification model 59 performs various estimations and predictions regarding the user's emotion, including estimation and prediction of the user's emotion, but is not limited to these examples. Furthermore, the estimation and prediction of emotion also includes, for example, emotion analysis.
[0180] In the robot 414, the processor 46 performs the identification process. The storage 50 stores the identification program 60. The processor 46 reads the identification program 60 from the storage 50 and executes the read identification program 60 on the RAM 48. The identification process is realized by the processor 46 operating as the control unit 46A in accordance with the identification program 60 executed on the RAM 48. The robot 414 also has a data generation model and an emotion identification model similar to the data generation model 58 and the emotion identification model 59, and can perform the same process as the identification processing unit 290 using these models.
[0181] Note that a device other than the data processing device 12 may have the data generation model 58. For example, a server device may have the data generation model 58. In this case, the data processing device 12 communicates with the server device having the data generation model 58 to obtain a processing result (such as a prediction result) using the data generation model 58. Furthermore, the data processing device 12 may be a server device, or may be a terminal device (for example, a mobile phone, a robot, a home appliance, etc.) owned by a user.
[0182] The specific processing unit 290 transmits the result of the specific processing to the robot 414. In the robot 414, the control unit 46A causes the speaker 240 and the control target 443 to output the result of the specific processing. The microphone 238 acquires voice indicating a user input regarding the result of the specific processing. The control unit 46A transmits voice data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the voice data.
[0183] The data generation model 58 is a so-called generative AI. An example of the data generation model 58 is a generative AI such as ChatGPT. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 receives a prompt containing an instruction, as well as inference data such as voice data representing speech, text data representing text, and image data representing an image. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization. The identification processing unit 290 performs the above-mentioned identification processing using the data generation model 58. The data generation model 58 may be a fine-tuned model so as to output an inference result from a prompt that does not include an instruction. In this case, the data generation model 58 can output an inference result from a prompt that does not include an instruction. The data processing device 12 and the like include multiple types of data generation models 58, and the data generation model 58 includes AI other than the generative AI. The AI other than the generative AI may be, for example, linear regression, logistic regression, decision tree, random forest, support vector machine (SVM), k-means clustering, convolutional neural network (CNN), recurrent neural network (RNN), generative adversarial network (GAN), or naive Bayes, and can perform various processes, but is not limited to these examples. The AI may also be an AI agent. When the processes of each of the above-mentioned parts are performed by AI, the processes may be performed in part or entirely by AI, but are not limited to these examples. The processes performed by AI, including the generative AI, may be replaced with rule-based processes.
[0184] The data processing system 410 according to the fourth embodiment performs the same processing as the data processing system 10 according to the first embodiment. The processing by the data processing system 410 is executed by the specific processing unit 290 of the data processing device 12 or the control unit 46A of the robot 414, but may also be executed by the specific processing unit 290 of the data processing device 12 and the control unit 46A of the robot 414. Furthermore, the specific processing unit 290 of the data processing device 12 acquires or collects information required for processing from the robot 414 or an external device, etc., and the robot 414 acquires or collects information required for processing from the data processing device 12 or an external device, etc.
[0185] The correspondence between each part and the device or control part is not limited to the example described above, and various modifications are possible.
[0186] The emotion identification model 59 as an emotion engine may determine the user's emotion according to a specific mapping. Specifically, the emotion identification model 59 may determine the user's emotion according to an emotion map (see FIG. 9), which is a specific mapping. Similarly, the emotion identification model 59 may determine the robot's emotion, and the identification processing unit 290 may perform identification processing using the robot's emotion.
[0187] FIG. 9 illustrates an emotion map 400 on which multiple emotions are mapped. In the emotion map 400, emotions are arranged in concentric circles radiating from the center. Emotions closer to the center of the concentric circles are more primitive. Emotions representing states and behaviors arising from a state of mind are arranged on the outer edges of the concentric circles. The concept of emotion encompasses both emotions and mental states. Emotions generally generated from reactions occurring in the brain are arranged on the left side of the concentric circles. Emotions generally induced by situational judgment are arranged on the right side of the concentric circles. Emotions generally generated from reactions occurring in the brain and induced by situational judgment are arranged on the upper and lower sides of the concentric circles. Furthermore, the emotion of "pleasure" is arranged on the upper side of the concentric circles, and the emotion of "discomfort" is arranged on the lower side. In this way, in the emotion map 400, multiple emotions are mapped based on the structure by which emotions are generated, and emotions that tend to occur simultaneously are mapped close to each other.
[0188] These emotions are distributed in the 3 o'clock direction on emotion map 400, and typically fluctuate between relief and anxiety. In the right half of emotion map 400, situational awareness dominates over internal sensations, resulting in a sense of calm.
[0189] The inside of emotion map 400 represents what is going on in the mind, and the outside of emotion map 400 represents behavior, so the further you go outside emotion map 400, the more visible the emotions become (the more they are expressed in behavior).
[0190] Human emotions are based on various balances, such as posture and blood sugar levels. When these balances deviate from the ideal, a state of discomfort is expressed, and when they approach the ideal, a state of pleasure is expressed. Emotions can also be created for robots, cars, and motorcycles, based on various balances, such as posture and remaining battery life. When these balances deviate from the ideal, a state of discomfort is expressed, and when they approach the ideal, a state of pleasure is expressed. An emotion map can be generated, for example, based on Dr. Mitsuyoshi's emotion map (Research on speech emotion recognition and brain physiological signal analysis systems for emotions, Tokushima University, doctoral dissertation: https: / / ci.nii.ac.jp / naid / 500000375379). The left half of the emotion map lists emotions belonging to the "reaction" domain, where sensation is dominant. The right half of the emotion map lists emotions belonging to the "situation" domain, where situational awareness is dominant.
[0191] The emotion map defines two emotions that promote learning. One is a negative emotion on the situation side, around the middle of "repentance" or "reflection." In other words, this occurs when the robot experiences negative emotions such as "I never want to feel this way again" or "I don't want to be scolded again." The other is a positive emotion on the response side, around "desire." In other words, this occurs when the robot experiences positive feelings such as "I want more" or "I want to know more."
[0192] The emotion identification model 59 inputs user input into a pre-trained neural network, obtains emotion values indicating each emotion shown in the emotion map 400, and determines the user's emotion. This neural network is pre-trained based on multiple pieces of training data that are combinations of user input and emotion values indicating each emotion shown in the emotion map 400. Furthermore, this neural network is trained so that emotions that are located close to each other have similar values, as in the emotion map 900 shown in FIG. 10. FIG. 10 shows an example in which multiple emotions, "relieved," "calm," and "reassuring," have similar emotion values.
[0193] In the above embodiment, an example was given in which a specific process is performed by one computer 22, but the technology disclosed herein is not limited to this, and distributed processing of the specific process may be performed by multiple computers including computer 22.
[0194] In the above embodiment, an example in which the specific processing program 56 is stored in the storage 32 has been described, but the technology of the present disclosure is not limited to this. For example, the specific processing program 56 may be stored in a portable, computer-readable, non-transitory storage medium such as a USB (Universal Serial Bus) memory. The specific processing program 56 stored in the non-transitory storage medium is installed in the computer 22 of the data processing device 12. The processor 28 executes the specific processing in accordance with the specific processing program 56.
[0195] Alternatively, the specific processing program 56 may be stored in a storage device such as a server connected to the data processing device 12 via the network 54, and the specific processing program 56 may be downloaded and installed on the computer 22 in response to a request from the data processing device 12.
[0196] It is not necessary to store all of the specific processing program 56 in a storage device such as a server connected to the data processing device 12 via the network 54, or to store all of the specific processing program 56 in the storage 32; only a portion of the specific processing program 56 may be stored.
[0197] The hardware resource for executing a specific process can be any of the following types of processors: A processor, for example, is a CPU, which is a general-purpose processor that functions as a hardware resource for executing a specific process by executing software, i.e., a program. A processor also includes a dedicated electrical circuit, such as an FPGA (Field-Programmable Gate Array), a PLD (Programmable Logic Device), or an ASIC (Application Specific Integrated Circuit), which is a processor with a circuit configuration designed specifically for executing a specific process. Each processor has built-in or connected memory, and each processor uses the memory to execute the specific process.
[0198] The hardware resource that executes the specific process may be configured with one of these various processors, or may be configured with a combination of two or more processors of the same or different types (for example, a combination of multiple FPGAs, or a combination of a CPU and an FPGA). Also, the hardware resource that executes the specific process may be a single processor.
[0199] As an example of a system configured with a single processor, first, one processor is configured by combining one or more CPUs and software, and this processor functions as a hardware resource that executes a specific process. Second, there is a system that uses a processor that realizes the functions of an entire system including multiple hardware resources that execute a specific process on a single IC chip, as typified by SoC (System-on-a-chip). In this way, a specific process is realized using one or more of the above-mentioned various processors as hardware resources.
[0200] Furthermore, the hardware structure of these various processors can be, more specifically, an electric circuit that combines circuit elements such as semiconductor devices. The specific processing described above is merely an example. Therefore, it goes without saying that unnecessary steps may be deleted, new steps may be added, or the processing order may be rearranged, without departing from the spirit of the invention.
[0201] In the above example, the first to fourth embodiments have been described separately, but some or all of these embodiments may be combined. The smart device 14, smart glasses 214, headset terminal 314, and robot 414 are merely examples, and they may be combined, or other devices may be used. In the above example, the first and second embodiments have been described separately, but they may be combined.
[0202] The above-described description and illustrations are a detailed explanation of the parts related to the technology of the present disclosure and are merely an example of the technology of the present disclosure. For example, the above description of the configuration, functions, actions, and effects is an explanation of an example of the configuration, functions, actions, and effects of the parts related to the technology of the present disclosure. Therefore, it goes without saying that unnecessary parts may be deleted, new elements may be added, or replacements may be made to the above-described description and illustrations within the scope of the gist of the technology of the present disclosure. Furthermore, to avoid confusion and facilitate understanding of the parts related to the technology of the present disclosure, the above-described description and illustrations omit explanations of common technical knowledge that do not require particular explanation to enable the implementation of the technology of the present disclosure.
[0203] All publications, patent applications, and technical standards mentioned in this specification are herein incorporated by reference to the same extent as if each individual publication, patent application, or technical standard was specifically and individually indicated to be incorporated by reference.
[0204] [Explanation of symbols]
[0205] 10, 210, 310, 410 Data Processing Systems 12 Data Processing Device 14 Smart Devices 214 Smart Glasses 314 Headset-type terminal 414 Robot
Claims
1. a collection unit for collecting characteristics of the device; an analysis unit that analyzes the characteristics collected by the collection unit; a generation unit that generates a UI test scenario based on the analysis result obtained by the analysis unit; an execution unit that executes a UI test based on the scenario generated by the generation unit; an analysis unit that collects and analyzes the results obtained by the execution unit; A system characterized by:
2. The collecting unit Uses device APIs to collect information about screen size, resolution, and OS version 2. The system of claim 1.
3. The generation unit Generate specific UI test scenarios for button clicks, page transitions, and input form behavior 2. The system of claim 1.
4. The analysis unit Display collected test results in a dashboard format 2. The system of claim 1.
5. The generation unit Periodically update device and environment information and regenerate scenarios based on that information 2. The system of claim 1.
6. The execution unit: Run UI tests according to the generated scenarios and collect test results 2. The system of claim 1.
7. The collecting unit The method estimates a user's emotion and adjusts the timing of collecting device characteristics based on the estimated user's emotion.
2. The system of claim 1.
8. The collecting unit Analyze device usage history and select the optimal collection method 2. The system of claim 1.
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A