Process editing method and device based on robotic process automation
By using the robotic process automation (RoLA) workflow editing method, and automatically selecting appropriate automation technology based on path description information, the problem of developers needing to understand the target application type in existing technologies is solved. This enables cross-technology automated operation, reduces learning costs, and improves project stability.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- 北京中关村科金技术有限公司
- Filing Date
- 2021-06-03
- Publication Date
- 2026-07-24
AI Technical Summary
Existing automated process technologies are limited by the type of target application. Developers need to understand the technology type of the target application before they can use the corresponding automated process technology, which results in high technical mastery requirements and high learning costs.
A process editing method based on robotic process automation is adopted. The process execution task is generated by the editor and the path description information of the operation object is obtained by the capture device. The executor automatically selects the appropriate automation process technology to execute the test process, realizing cross-software and cross-technology automated operation.
It lowers the technical skill requirements for developers, reduces learning costs, and improves project stability and development efficiency, making project implementation simple and fast.
Smart Images

Figure CN115437621B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of business process automation technology, and in particular to a process editing method and apparatus based on robotic process automation. Background Technology
[0002] Currently, commonly used automation workflow technologies include Selenium, UIAutomation, MSAA, automated browser plugins, HTML DOM2, and JavaAccessBridge. Selenium is used for browser-based web page testing and partial workflow automation; UIAutomation and MSAA are primarily used for testing applications developed with UWP and Win32 GUI technologies; automated browser plugins are mainly used for browsers that support plugins, such as Chrome and Firefox; HTML DOM2 is primarily used for automated testing of Internet Explorer; and JavaAccessBridge is primarily used for testing Java visual applications developed with Swing and SWT. These automation workflow technologies are applied to applications developed using different technologies and cannot be used across different application types.
[0003] Currently, existing automated workflow technologies are primarily used in testing scenarios. However, in a complete testing scenario, only a portion of the business logic is automated. Furthermore, existing automated workflow technologies are limited by the target application. When using automated workflow technologies in business scenarios, it's essential to first understand which technology the target application uses. This allows developers to apply the appropriate automated workflow technology, demanding a high level of technical expertise from them. In actual project implementation, developers may struggle to make the correct choice of automated workflow technology for an unfamiliar application in a short period, increasing project instability. Currently, when developing projects using automated workflow technologies, developers need to deeply understand and learn each technology, resulting in a high learning curve.
[0004] The existing technologies mentioned above have technical problems, such as the high technical requirements and learning costs for developers. Because different automation process technologies are applied to applications developed with different technologies, developers can only use the corresponding automation process technology to test the target application after understanding the technology type of the target application. There is currently no effective solution to these problems. Summary of the Invention
[0005] The embodiments of this application provide a process editing method and apparatus based on robotic process automation (RPA) to at least solve the technical problems existing in the prior art. Because different automation process technologies are applied to applications developed with different technologies, developers can only use the corresponding automation process technology to test the target application after understanding the technology type of the target application, which leads to high requirements for developers' technical mastery and high learning costs.
[0006] According to one aspect of the embodiments of this application, a process editing method based on robotic process automation is provided, applied to a process editing system. The process editing system includes an editor, a capture unit, and an executor. The method includes: the editor responding to a user-inputted run instruction to run a completed target test process, generating a corresponding process execution task and sending it to the executor, wherein the target test process is used to test a target application; and the executor executing the target test process using corresponding automated process technology based on the path description information of the operation objects of each test component in the target test process, wherein the path description information is information obtained by the capture unit from capturing the operation objects of each test component, and the path description information includes the technology type of the operation object, main window information, and object sub-path information.
[0007] According to another aspect of the embodiments of this application, a storage medium is also provided, the storage medium including a stored program, wherein, when the program is running, the processor executes any of the methods described above.
[0008] According to another aspect of the embodiments of this application, a process editing device based on robotic process automation is also provided, applied to a process editing system. The process editing system includes an editor, a capture device, and an executor. The device includes: a first generation module, used to generate a corresponding process execution task and send it to the executor in response to a user-inputted running instruction to run a completed target test process, wherein the target test process is used to test a target application; and an execution module, used to execute the target test process using corresponding automated process technology based on the path description information of the operation objects of each test component in the target test process, wherein the path description information is information obtained by the capture device from the operation objects of each test component, and the path description information includes the technology type of the operation object, main window information, and object sub-path information.
[0009] According to another aspect of the embodiments of this application, a process editing device based on robotic process automation is also provided, applied to a process editing system. The process editing system includes an editor, a capture device, and an executor. The device includes a processor and a memory connected to the processor, used to provide the processor with instructions to process the following steps: the editor, in response to a user-inputted instruction to run a completed target test process, generates a corresponding process execution task and sends it to the executor, wherein the target test process is used to test a target application; and the executor executes the target test process using corresponding automated process technology based on the path description information of the operation objects of each test component in the target test process, wherein the path description information is information obtained by the capture device from the operation objects of each test component, and the path description information includes the technology type of the operation object, main window information, and object sub-path information.
[0010] In this embodiment, the editor responds to the user's input command to run the edited target test process, generates a corresponding process execution task, and sends it to the executor. The editor then triggers the executor, enabling it to automatically execute the target test process. The executor then executes the target test process using corresponding automated process technologies based on the path description information of the operation objects of each test component. The path description information consists of the technology type, main window information, and object sub-path information of the operation objects captured by the capture mechanism. The executor records necessary data information through the path description information. The executor incorporates multiple automated process technologies, requiring no human intervention or manual configuration during the execution of the target test process. The executor automatically selects the corresponding automated process technology to execute based on the technology type, main window information, and object sub-path information automatically identified by the capture mechanism. This truly achieves cross-software, cross-technology automated operation.
[0011] Therefore, this technical solution utilizes automated workflow technology to complete all business processes in a test scenario. When capturing an operation object, the capture device obtains its path description information. Based on this path description, the executor can determine the appropriate automated workflow technology for the target application from among multiple options. Developers only need to edit the business process to achieve automated business completion; they don't need to manually determine the appropriate technology or learn multiple technologies to make the correct selection, thus reducing their learning costs. Furthermore, by using the executor to determine the appropriate automated workflow technology for the target application, the correct technology can be accurately selected for project testing, leading to greater project stability. Because this technical solution uses a visual workflow editing interface, project implementation is simple and fast, improving development efficiency. Even if different automated workflow technologies are applied to applications developed with different technologies, developers do not need to understand the target application's technology type before using the appropriate automated workflow technology for testing. This technical solution achieves the effect of reducing the learning cost by eliminating the need for developers to have high technical expertise. This further addresses the technical problem in existing technologies where different automated process technologies are applied to applications developed using different technologies. Developers can only use the corresponding automated process technology to test the target application after understanding the technology type of the target application, resulting in high technical proficiency requirements and high learning costs for developers. Attached Figure Description
[0012] The accompanying drawings, which are included to provide a further understanding of this application and form part of this application, illustrate exemplary embodiments and are used to explain this application, but do not constitute an undue limitation of this application. In the drawings:
[0013] Figure 1 This is a hardware structure block diagram of a computing device used to implement the method described in Embodiment 1 of this application;
[0014] Figure 2 This is a schematic diagram of a process editing system based on robotic process automation as described in Embodiment 1 of this application;
[0015] Figure 3 This is a flowchart illustrating the process editing method based on robotic process automation as described in the first aspect of Embodiment 1 of this application;
[0016] Figure 4 This is a schematic diagram of the system interface of the process editing system according to the first aspect of Embodiment 1 of this application;
[0017] Figure 5 This is a schematic diagram of the process of entering bank documents in a centralized operating system according to the first aspect of Embodiment 1 of this application;
[0018] Figure 6 This is a schematic diagram of a process editing device based on robotic process automation according to Embodiment 2 of this application; and
[0019] Figure 7 This is a schematic diagram of a process editing device based on robotic process automation as described in Embodiment 3 of this application. Detailed Implementation
[0020] To enable those skilled in the art to better understand the technical solutions of this application, the technical solutions in the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are merely some embodiments of this application, and not all embodiments. All other embodiments obtained by those skilled in the art based on the embodiments of this application without creative effort should fall within the scope of protection of this application.
[0021] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this application described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.
[0022] Example 1
[0023] According to this embodiment, a process editing method based on robotic process automation is provided. It should be noted that the steps shown in the flowchart in the accompanying drawings can be executed in a computer system such as a set of computer-executable instructions. Also, although a logical order is shown in the flowchart, in some cases, the steps shown or described may be executed in a different order than that shown here.
[0024] The method embodiments provided in this example can be executed on mobile terminals, computer terminals, servers, or similar computing devices. Figure 1 A hardware block diagram of a computing device for implementing a process editing method based on robotic process automation is shown. Figure 1 As shown, a computing device may include one or more processors (processors may include, but are not limited to, microprocessors such as MCUs or programmable logic devices such as FPGAs), memory for storing data, and transmission devices for communication functions. In addition, it may also include: a display, input / output interfaces (I / O interfaces), a universal serial bus (USB) port (which may be included as one of the ports in the I / O interface), a network interface, a power supply, and / or a camera. Those skilled in the art will understand that... Figure 1 The structure shown is for illustrative purposes only and does not limit the structure of the aforementioned electronic device. For example, a computing device may also include... Figure 1 The more or fewer components shown, or having the same Figure 1 The different configurations shown.
[0025] It should be noted that the aforementioned one or more processors and / or other data processing circuits are generally referred to herein as "data processing circuits". These data processing circuits can be implemented wholly or partially as software, hardware, firmware, or any other combination thereof. Furthermore, the data processing circuits can be a single, independent processing module, or wholly or partially integrated into any other element in the computing device. As involved in the embodiments of this application, the data processing circuit serves as a processor control mechanism (e.g., selection of a variable resistor termination path connected to an interface).
[0026] The memory can be used to store software programs and modules of application software, such as the program instructions / data storage device corresponding to the process editing method based on robotic process automation in the embodiments of this application. The processor executes various functional applications and data processing by running the software programs and modules stored in the memory, thereby realizing the above-mentioned process editing method based on robotic process automation for the application. The memory may include high-speed random access memory, and may also include non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some instances, the memory may further include memory remotely located relative to the processor, and these remote memories can be connected to the computing device via a network. Examples of the above-mentioned networks include, but are not limited to, the Internet, corporate intranets, local area networks, mobile communication networks, and combinations thereof.
[0027] The transmission device is used to receive or send data via a network. Specific examples of the network described above may include a wireless network provided by the computing device's communications provider. In one example, the transmission device includes a Network Interface Controller (NIC), which can connect to other network devices via a base station to communicate with the Internet. In another example, the transmission device may be a Radio Frequency (RF) module, used for wireless communication with the Internet.
[0028] The display can be, for example, a touchscreen liquid crystal display (LCD), which allows users to interact with the user interface of the computing device.
[0029] It should be noted here that, in some optional embodiments, the above... Figure 1 The computing device shown may include hardware elements (including circuitry), software elements (including computer code stored on a computer-readable medium), or a combination of both hardware and software elements. It should be noted that... Figure 1 This is only one instance of a specific particular instance, and is intended to illustrate the types of components that may exist in the aforementioned computing devices.
[0030] Figure 2 This is a schematic diagram of a process editing system based on robotic process automation as described in this embodiment. (Refer to...) Figure 2 As shown, the system includes an editor, a capture unit, and an executor. The editor is used to edit the target test process and send capture tasks to the capture unit and process execution tasks to the executor. The editor features drag-and-drop component visual development capabilities; the entire process editing is done visually, without the need for code programming. Components are manipulated through drag-and-drop and node connections, allowing developers to perform visual development based on business scenarios.
[0031] The capturer is used to capture the operation objects of the test component according to the capture task sent by the editor. Afterwards, the capturer returns the path information and description information of the captured operation objects of the test component to the editor. The capturer has the functions of automatic capture of operation objects (automatic capture of elements), manual capture of operation objects (manual capture of elements), editing of operation object paths (element paths), and display of operation object trees (element trees). The automatic capture of operation objects (automatic capture of elements) function can automatically identify the target application and switch to the appropriate capture mode. The manual capture function serves as an auxiliary function to the automatic capture of operation objects (automatic capture of elements) function. When operating on some special target applications, the automatic capture of operation objects (automatic capture of elements) function has the shortcoming of not being able to accurately determine the capture mode. In this case, developers can manually intervene to select the appropriate capture mode through the manual capture of operation objects (manual capture of elements) function. The operation object path (element path) editing function and the operation object tree (element tree) display function are mainly used in special business scenarios. For example, in special table application scenarios, the data logic we need to obtain is relatively complex. At this time, we can use the operation object path (element path) editing function and the operation object tree (element tree) display function to quickly locate the operation object path of the data required by the business scenario.
[0032] The executor executes tasks based on the flow sent by the editor, runs the target test flow, and then returns the corresponding execution logs and results to the editor. The executor can convert the editor's visual flow into programming code and then execute the entire flow to achieve process automation. The executor also has flow debugging and logging capabilities, which allows developers to easily edit the flow.
[0033] It should be noted that the editor, capturer, and executor in the system can all be adapted to the hardware architecture described above.
[0034] Under the aforementioned operating environment, according to the first aspect of this embodiment, a process editing method based on robotic process automation is provided, the method comprising: Figure 2 The workflow editing system shown is implemented. Figure 3 A flowchart illustrating the method is shown below. (Refer to...) Figure 3 As shown, the method includes:
[0035] S302: The editor responds to the user's input command to run the edited target test process, generates a corresponding process execution task, and sends it to the executor, wherein the target test process is used to test the target application; and
[0036] S304: The executor executes the target test process using the corresponding automated process technology based on the path description information of the operation objects of each test component in the target test process. The path description information is the information obtained by the capturer from the operation objects of each test component, and the path description information includes the technology type of the operation object, the main window information, and the object sub-path information.
[0037] Specifically, the editor responds to user input instructions to run the edited target test flow, generates a corresponding flow execution task, and sends it to the executor. The target test flow is used to test the target application. For example, refer to... Figure 4 As shown, the user completes the setup of all components in the RPA designer's process editing area and connects them to complete the editing of the target test process. After the user clicks the "Run" button in the RPA designer, the editor responds to the user's input command to run the edited target test process, generates the corresponding process execution task, and sends it to the executor. The process execution task is the executor running the program according to the set process.
[0038] Furthermore, the executor executes the target test process using corresponding automated process technology, based on the path description information of the operation objects of each test component in the target test process. In a preferred embodiment, during the editing of the target test process, reference is made to... Figure 4As shown, after the user drags a test component (e.g., the "Open Browser" component) from the component list on the left side of the RPA designer to the process editing area in the middle of the RPA designer, the editor displays the "Open Browser" component in the process editing area and then receives the component parameters set by the user for the "Open Browser" component. The component parameters for the "Open Browser" component include the browser type and URL; the browser type is Internet Explorer, and the browser URL is "http: / / www.baidu.com". Next, the user drags the "Settings Text" component (i.e., the test component) to the process editing area. The editor displays the "Settings Text" component in the process editing area and then receives the component parameters set by the user for the "Settings Text" component. The value of the component parameter for the "Settings Text" component is "Beijing AAA Technology Co., Ltd." Then, the user connects the "Open Browser" component and the "Settings Text" component using a connection line. The user selects the "Settings Text" component with the mouse, clicks the "Capture" button, enters the opened target application (e.g., Internet Explorer), selects the object to be operated on (e.g., the search box) on the Baidu page, and performs a capture operation on the search box. The editor responds to user input regarding a capture command to capture the search box (i.e., the object of operation) of the "Settings Text" component (i.e., the test component) in the target test flow, generating a corresponding capture task and sending it to the capturer. The target test flow is a test flow used to test the Internet Explorer browser (i.e., the target application). The capture task includes the component parameters of the "Settings Text" component (i.e., the test component) and basic information about the Internet Explorer browser (i.e., the target application). The basic information about the target application includes the target application type.
[0039] Then, for example, the capture task of the capturer is to capture the search box (i.e., the object of operation) in the Internet Explorer browser (i.e., the target application). Based on this capture task, the capturer captures the search box (i.e., the object of operation) in the Internet Explorer page of the "Settings Text" component (i.e., the test component), and determines the path description information of the search box (i.e., the object of operation) in the Internet Explorer page of the "Settings Text" component (i.e., the test component). The capturer then sends the captured path description information of the search box (i.e., the object of operation) in the Baidu page of the Internet Explorer browser of the "Settings Text" component (i.e., the test component) to the editor. The path description information is the information obtained by the capturer from capturing the objects of operation for each test component, and includes the technology type of the object, main window information, and object sub-path information. The executor can determine the technology type of the path description information of the search box (i.e., the object of operation) in the Baidu page of the Internet Explorer browser, determine the corresponding automation process technology based on the technology type, and use the automation process technology to execute the target test process.
[0040] As mentioned in the background section, current automated process technologies are primarily used in testing scenarios. However, in a complete testing scenario, only a portion of the business logic is executed using automated processes. Furthermore, existing automated process technologies are limited by the target application. When using automated process technologies in business scenarios, it's essential to first understand which technology the target application uses. This allows developers to apply the appropriate automated process technology, demanding a high level of technical expertise from them. In actual project implementation, developers may struggle to make the correct choice of automated process technology for an unfamiliar application in a short period, increasing project instability. Currently, when developing projects using automated process technologies, developers need to deeply understand and learn each technology, resulting in a high learning cost.
[0041] To address the aforementioned technical problems, the technical solution of this application embodiment involves an editor responding to a user's input command to run a pre-edited target test process, generating a corresponding process execution task, and sending it to the executor. This triggers the executor, enabling it to automatically execute the target test process. The executor then executes the target test process using corresponding automated process technologies based on the path description information of the operation objects of each test component within the target test process. The path description information comprises the technology type, main window information, and object sub-path information of the operation objects captured by the capture mechanism. The executor records necessary data information through the path description information. The executor incorporates multiple automated process technologies, requiring no human intervention or manual configuration during the execution of the target test process. The executor automatically selects the corresponding automated process technology to execute based on the technology type, main window information, and object sub-path information automatically identified by the capture mechanism. This truly achieves cross-software, cross-technology automated operation.
[0042] Therefore, this technical solution utilizes automated workflow technology to complete all business processes in a test scenario. When capturing an operation object, the capture device obtains its path description information. Based on this path description, the executor can determine the appropriate automated workflow technology for the target application from among multiple options. Developers only need to edit the business process to achieve automated business completion; they don't need to manually determine the appropriate technology or learn multiple technologies to make the correct selection, thus reducing their learning costs. Furthermore, by using the executor to determine the appropriate automated workflow technology for the target application, the correct technology can be accurately selected for project testing, making the project more stable. Because this technical solution uses a visual workflow editing interface, project implementation is simple and fast, improving development efficiency. Even if different automated workflow technologies are applied to applications developed with different technologies, developers do not need to understand the target application's technology type before using the corresponding automated workflow technology for testing. This technical solution achieves the effect of reducing the learning cost by eliminating the need for developers to have high technical expertise. This further addresses the technical problem in existing technologies where different automated process technologies are applied to applications developed using different technologies. Developers can only use the corresponding automated process technology to test the target application after understanding the technology type of the target application, resulting in high technical proficiency requirements and high learning costs for developers.
[0043] Optionally, during the editing of the target test process, the editor responds to the user's input capture command to capture the operation objects of each test component, generates a corresponding capture task and sends it to the capturer; the capturer captures the operation objects of each test component according to the capture task, determines the path description information of the operation objects of each test component; and the capturer sends the determined path description information of the operation objects of each test component to the editor.
[0044] Specifically, during the editing of the target testing process, refer to Figure 4As shown, after the user drags a test component (e.g., the "Open Browser" component) from the component list on the left side of the RPA designer to the process editing area in the middle of the RPA designer, the editor displays the "Open Browser" component in the process editing area and then receives the component parameters set by the user for the "Open Browser" component. The component parameters for the "Open Browser" component include the browser type and URL; the browser type is Internet Explorer, and the browser URL is "http: / / www.baidu.com". Next, the user drags the "Settings Text" component (i.e., the test component) to the process editing area. The editor displays the "Settings Text" component in the process editing area and then receives the component parameters set by the user for the "Settings Text" component. The value of the component parameter for the "Settings Text" component is "Beijing AAA Technology Co., Ltd." Then, the user connects the "Open Browser" component and the "Settings Text" component using a connection line. The user selects the "Settings Text" component with the mouse, clicks the "Capture" button, enters the opened target application (e.g., Internet Explorer), selects the object to be operated on (e.g., the search box) on the Baidu page, and performs a capture operation on the search box. The editor responds to user input regarding a capture command to capture the search box (i.e., the object of operation) of the "Settings Text" component (i.e., the test component) in the target test flow, generating a corresponding capture task and sending it to the capturer. The target test flow is a test flow used to test the Internet Explorer browser (i.e., the target application). The capture task includes the component parameters of the "Settings Text" component (i.e., the test component) and basic information about the Internet Explorer browser (i.e., the target application). The basic information about the target application includes the target application type.
[0045] Furthermore, for example, the capture task of the capturer might be to capture the search box (i.e., the object of operation) in Internet Explorer (i.e., the target application). Based on this capture task, the capturer captures the search box (i.e., the object of operation) in the Internet Explorer page of the "Settings Text" component (i.e., the test component), and determines the path description information of the search box (i.e., the object of operation) in the Internet Explorer page of the "Settings Text" component (i.e., the test component). Then, the capturer sends the captured path description information of the search box (i.e., the object of operation) in the Baidu page of the Internet Explorer page of the "Settings Text" component (i.e., the test component) to the editor.
[0046] This triggers the capture mechanism via the editor, causing it to begin capturing operations and determine the path description information of the operation object. Thus, the capture mechanism can quickly locate the path of the operation object to be captured in the business scenario using its capture functionality.
[0047] Optionally, the capture task includes the component parameters of the test component and the basic information of the corresponding operation object. The capturer captures the operation object of the test component according to the capture task and determines the path description information of the operation object of the test component. This includes: the capturer determines the technology type of the operation object of the test component according to the basic information of the operation object of the test component in the capture task; the capturer determines the main window information of the main window where the operation object of the test component is located according to the component parameters in the capture task; the capturer determines the object sub-path information of the operation object of the test component according to the component parameters in the capture task, wherein the object sub-path information records the tree structure path of the operation object of the test component in the main window; and the capturer determines the path description information of the operation object of the test component according to the determined technology type, main window information, and tree structure path.
[0048] Specifically, the capture task includes the component parameters of the test component and the basic information of the corresponding operation object. For example, if the capture task is to capture the search box (the operation object) in the IE browser page corresponding to the "Setting Text" component (i.e., the test component), then the capture task includes the component parameters of the "Setting Text" component (i.e., the test component) and the basic information of the corresponding search box (i.e., the operation object). The component parameters include variable names and types, and the basic information of the search box (i.e., the operation object) includes its name and location. Based on the search box (i.e., the operation object) in the IE browser page corresponding to the "Setting Text" component (i.e., the test component) in the capture task, the capturer determines the technology type of the search box (i.e., the operation object). Then, based on the component parameters of the "Setting Text" component (i.e., the test component) in the capture task, the capturer determines the main window information of the IE browser homepage where the search box (i.e., the operation object) is located in the IE browser page corresponding to the "Setting Text" component (i.e., the test component). The main window information records some information about the main window where the current operation object is located, such as the window name, the application to which the window belongs, and the window class name, etc. The capture tool determines the path information (i.e., object sub-path information) of the search box in the IE browser page corresponding to the "Setting Text" component (i.e., the test component) based on the component parameters of the "Setting Text" component (i.e., the test component). The object sub-path information records the tree structure path of the test component's operation object within the main window. Then, based on the determined technology type, main window information, and tree structure path, the capture tool determines the path description information of the test component's operation object.
[0049] Therefore, by using the identified technology type, main window information, and object sub-path information of the operation object, the capturer can obtain the path description information of the operation object comprehensively and accurately, thereby quickly locating the path of the operation object.
[0050] In addition, the workflow editing system has the function of integrating multiple technologies into a common structure, as detailed below:
[0051] Traditional automation tools often focus on a single technology framework. For example, Selenium can only perform automation development based on browser technology. Editors integrate multiple automation technology frameworks and unify the structure of operation objects (controls). B / S applications (browser-based web pages) commonly use XPath to describe the path of operation objects (controls). However, some C / S applications, such as uiautomation, WTF, and Java, currently lack a known format for describing their operation objects (controls). This technical solution defines a method for describing the path of operation objects (controls) suitable for workflow editing systems. This method is based on JSON format transmission. It mainly consists of three parts: capture mode, main window information, and object sub-path information. The capture mode automatically identifies the technology type of the current operation object through a capture device. Current technology types include UIA, WIN32, IE, CHRMOE, FIRFOX, and IMG modes. The main window information records information about the main window where the current operation object resides, such as the window name, the application to which the window belongs, and the window class name. The object sub-path information records the tree structure path of the current operation object within the window. This format can describe the control structure of any graphical technology framework. It enables users to automatically select a technology framework, reducing learning and development costs.
[0052] Optionally, the process editing system pre-integrates multiple automated process technologies, and the executor executes the operation of the target test process using the corresponding automated process technology based on the path description information of the operation objects of each test component in the target test process. This includes: the executor determining the automated process technology corresponding to the technology type from multiple automated process technologies based on the technology type in the path description information of the operation objects of each test component in the target test process; and the executor executing the target test process using the determined automated process technology based on the main window information and object sub-path information in the path description information of the operation objects of each test component in the target test process.
[0053] Specifically, the workflow editing system pre-integrates multiple automated workflow technologies. The executor determines the corresponding automated workflow technology from among these technologies based on the technology type in the path description information of the operation objects of each test component in the target test workflow. For example, if the operation object of the "Open Browser" component in the target test workflow is Internet Explorer, then the technology type in the path description information of Internet Explorer is IE. Similarly, if the operation object of the "Create Excel" component in the target test workflow is Excel, then the technology type in the path description information of Excel is WIN32. The executor determines the corresponding automated workflow technology, HTML DOM2, from among the multiple technologies based on the technology type of Internet Explorer. Then, based on the technology type of Excel, the executor determines the corresponding automated workflow technology, uiautomation, from among the multiple technologies. Finally, the executor executes the target test workflow using the determined automated workflow technology, based on the main window information and object sub-path information in the path description information of the operation objects of each test component in the target test workflow. For example, once the executor has determined the main form information and object sub-path information of the operation objects such as Internet Explorer and Excel, it uses the determined HTML DOM2 technology and uiautomation technology and other automation process technologies to execute the target test process.
[0054] Therefore, this technical solution can determine the corresponding automation process technology for the target application from multiple automation process technologies based on path description information using an executor. Compared with existing technologies that require developers to master multiple automation process technologies to identify the corresponding automation process technology for the target application, this technical solution only requires an executor to select the appropriate automation process technology for the target application, without requiring high learning requirements from developers, thus reducing the learning cost for developers.
[0055] Furthermore, the process by which the actuator integrates multiple technology frameworks using its execution capabilities is explained in detail below:
[0056] The capturer records necessary data information through a custom object (control) path description format. The executor incorporates multiple automation technology frameworks, requiring no human intervention or manual configuration during process execution. Based on the capturer's automatically identified technology framework, main window information, and object sub-path information, the executor automatically selects the appropriate automation process technology to execute. This truly achieves cross-software, cross-technology automation. Furthermore, according to the defined object (control) path description method, the developed process runs unaffected on computers with different resolutions. The executor is driven by a Python interpreter and incorporates various plugin technologies, including Chrome plugins and IE browser JavaScript injection. For example, in the mouse click testing component, in previous automation tools, to implement automatic mouse click functionality in an application, we needed to first select the corresponding technology framework and then develop the specific execution code. With the object (control) path definition method, developers only need to use drag-and-drop testing components for business orchestration, allowing them to focus more on understanding the business process.
[0057] Optionally, the editor generates the target test flow through the following steps: In response to the user's operation of adding various test components to the flow editing area, the editor displays each test component and the corresponding parameter setting interface in the flow editing area; the editor determines the component parameters of each test component based on the information entered by the user in the parameter setting interface; the editor determines the connection relationship between each test component based on the user's connection operation on each test component; and the editor generates the target test flow based on the component parameters and connection relationships.
[0058] Specifically, in the target test flow where the search results are written into Excel, the editor generates the target test flow through the following steps: (Refer to...) Figure 4As shown, when a user opens the RPA designer, the workflow editing area has a "Start" component set by default. The user first drags the "Open Browser" component from the component list on the left side of the RPA designer to the workflow editing area in the middle of the RPA designer. Responding to the user's addition of the "Open Browser" component (i.e., the test component) to the workflow editing area, the editor displays the "Open Browser" component (i.e., the test component) and its corresponding parameter settings interface. The user sets the component parameters of the "Open Browser" component (i.e., the test component) in the parameter settings interface. Based on the information entered by the user in the parameter settings interface, the editor determines the component parameters of the "Open Browser" component (i.e., the test component), setting the URL in the component parameters to "http: / / www.baidu.com". The user then connects the "Open Browser" component (i.e., the test component) to the "Start" component. Based on the user's connection operation between the "Open Browser" component (i.e., the test component) and the "Start" component, the editor determines the connection relationship between them. When the user clicks the "Step-by-Step Run" button, the editor enters the running state, the browser opens automatically, and the user is taken to the Baidu homepage based on the URL, completing the step-by-step debugging.
[0059] The user then drags the "Settings Text" component from the component list on the left side of the RPA designer to the process editing area in the middle of the RPA designer. Responding to the user's addition of the "Settings Text" component (i.e., the test component) to the process editing area, the editor displays the "Settings Text" component (i.e., the test component) and its corresponding parameter settings interface. The user sets the parameters of the "Settings Text" component (i.e., the test component) in its parameter settings interface. Based on the information entered by the user in the parameter settings interface, the editor determines the component parameters of the "Settings Text" component (i.e., the test component), setting the value in the component parameters to "Beijing AAA Technology Co., Ltd." The user clicks the "Capture" button, the RPA designer automatically hides, and when the user selects a search box on the Baidu homepage, the capture tool captures that search box for the "Settings Text" component. The user then connects the "Settings Text" component (i.e., the test component) to the "Open Browser" component (i.e., the test component). The editor determines the connection relationship between the "Settings Text" component (i.e., the test component) and the "Open Browser" component (i.e., the test component) based on the user's connection operation. When the user clicks the "Step-by-Step" button, the editor enters running mode, automatically entering "Beijing AAA Technology Co., Ltd." into the search box on the Baidu homepage, completing the step-by-step debugging.
[0060] The user then drags the "Mouse Operation" component from the component list on the left side of the RPA designer to the process editing area in the middle of the RPA designer. Responding to the user's addition of the "Mouse Operation" component (i.e., the test component) to the process editing area, the editor displays the "Mouse Operation" component (i.e., the test component) and its corresponding parameter settings interface in the process editing area. The user sets the parameters of the "Mouse Operation" component (i.e., the test component) in the parameter settings interface. The editor determines the component parameters of the "Mouse Operation" component (i.e., the test component) based on the information entered by the user in the parameter settings interface. When the user clicks the "Capture" button, the RPA designer automatically hides. If the user selects a search button on the Baidu homepage, the capture tool will capture that search button for the "Mouse Operation" component. The user then connects the "Mouse Operation" component (i.e., the test component) to the "Setting Text" component (i.e., the test component). The editor determines the connection relationship between the "mouse operation" component (i.e., the test component) and the "setting text" component (i.e., the test component) based on the user's connection operations. When the user clicks the "Step-by-Step Run" button, the editor enters running mode and automatically clicks the "Search" button on the Baidu homepage, completing the step-by-step debugging.
[0061] The user then drags the "Get Text" component from the component list on the left side of the RPA designer to the process editing area in the middle of the RPA designer. Responding to the user's addition of the "Get Text" component (i.e., the test component) to the process editing area, the editor displays the "Get Text" component (i.e., the test component) and its corresponding parameter settings interface in the process editing area. The user sets the parameters of the "Get Text" component (i.e., the test component) in the parameter settings interface. The editor determines the component parameters of the "Get Text" component (i.e., the test component) based on the information entered by the user in the parameter settings interface. The user clicks the "Capture" button, the RPA designer automatically hides, and the user selects the company information text from the search results for "Beijing AAA Technology Co., Ltd." The capture tool then captures this text for the "Get Text" component. The user then connects the "Get Text" component (i.e., the test component) to the "Mouse Operation" component (i.e., the test component). The editor determines the connection relationship between the "Get Text" component (i.e., the test component) and the "Mouse Operation" component (i.e., the test component) based on the user's connection operations. When the user clicks the "Step-by-Step Run" button, the editor enters running mode, selects the company information text from the search results for "Beijing AAA Technology Co., Ltd.", and completes the step-by-step debugging.
[0062] The user then drags the "Length" component from the component list on the left side of the RPA designer to the process editing area in the middle of the RPA designer. Responding to the user's addition of the "Length" component (i.e., the test component) to the process editing area, the editor displays the "Length" component (i.e., the test component) and its corresponding parameter setting interface. The user sets the parameters of the "Length" component (i.e., the test component) in the parameter setting interface. The editor determines the component parameters of the "Length" component (i.e., the test component) based on the information entered by the user in the parameter setting interface. The user then connects the "Length" component (i.e., the test component) to the "Get Text" component (i.e., the test component). The editor determines the connection relationship between the "Length" component (i.e., the test component) and the "Get Text" component (i.e., the test component) based on the user's connection operation.
[0063] The user then drags the "if branch" component from the component list on the left side of the RPA designer to the workflow editing area in the middle of the RPA designer. Responding to the user's addition of the "if branch" component (i.e., the test component) to the workflow editing area, the editor displays the "if branch" component (i.e., the test component) and its corresponding parameter setting interface. The user sets the parameters of the "if branch" component (i.e., the test component) in the parameter setting interface. Based on the information entered by the user in the parameter setting interface, the editor determines the component parameters of the "if branch" component (i.e., the test component). If the condition in the component parameters is set to "greater than 1," then the condition means if the length is greater than 1. The user connects the "if branch" component (i.e., the test component) and the "length" component (i.e., the test component). Based on the user's connection operation between the "if branch" component (i.e., the test component) and the "length" component (i.e., the test component), the editor determines the connection relationship between them.
[0064] The user then drags the "New Excel" component from the component list on the left side of the RPA designer to the workflow editing area in the middle of the RPA designer. Responding to the user's addition of the "New Excel" component (i.e., the test component) to the workflow editing area, the editor displays the "New Excel" component (i.e., the test component) and its corresponding parameter settings interface. The user sets the parameters of the "New Excel" component (i.e., the test component) in the parameter settings interface. Based on the information entered by the user in the parameter settings interface, the editor determines the component parameters of the "New Excel" component (i.e., the test component), setting the Excel sheet name in the component parameters to "demo.xlsx". The user then connects the "New Excel" component (i.e., the test component) to the "if branch" component's true branch (i.e., the test component). The editor determines the connection relationship between the "New Excel" component (i.e., the test component) and the "if branch" component (i.e., the test component) based on the user's connection operation. When the condition set in the "if branch" component (i.e., the test component) (i.e., the length is greater than 1) is true, a new Excel file is created.
[0065] The user then drags the "Close Excel" component from the component list on the left side of the RPA designer to the process editing area in the middle of the RPA designer. Responding to the user's addition of the "Close Excel" component (i.e., the test component) to the process editing area, the editor displays the "Close Excel" component (i.e., the test component) and its corresponding parameter settings interface. The user sets the parameters of the "Close Excel" component (i.e., the test component) in the parameter settings interface. Based on the information entered by the user in the parameter settings interface, the editor determines the component parameters of the "Close Excel" component (i.e., the test component), setting the Excel sheet name in the component parameters to "demo.xlsx". The user then connects the "Close Excel" component (i.e., the test component) to the "New Excel" component (i.e., the test component). Based on the user's connection operation between the "Close Excel" component (i.e., the test component) and the "New Excel" component (i.e., the test component), the editor determines the connection relationship between them.
[0066] The user then drags the "Write to Cell" component from the component list on the left side of the RPA designer to the process editing area in the middle of the RPA designer. Responding to the user's addition of the "Write to Cell" component (i.e., the test component) to the process editing area, the editor displays the "Write to Cell" component (i.e., the test component) and its corresponding parameter settings interface. The user sets the parameters of the "Write to Cell" component (i.e., the test component) in the parameter settings interface. Based on the information entered by the user in the parameter settings interface, the editor determines the component parameters of the "Write to Cell" component (i.e., the test component), setting the file path to "demo.xlsx", the cell to "A1", and the content to be written to the text content obtained in the "Get Text" component (i.e., the company information of Beijing AAA Technology Co., Ltd.). The user then connects the "Write to Cell" component (i.e., the test component) to the "Close Excel" component (i.e., the test component). The editor determines the connection relationship between the "Write to Cell" component (i.e., the test component) and the "Close Excel" component (i.e., the test component) based on the user's connection operation.
[0067] The user then drags the "Code Block" component from the component list on the left side of the RPA designer to the process editing area in the middle of the RPA designer. Responding to the user's addition of the "Code Block" component (i.e., the test component) to the process editing area, the editor displays the "Code Block" component (i.e., the test component) and its corresponding parameter settings interface. The user sets the parameters of the "Code Block" component (i.e., the test component) in the parameter settings interface. Based on the information entered by the user in the parameter settings interface, the editor determines the component parameters of the "Code Block" component (i.e., the test component), setting the code in the component parameters to "print("content is empty")". The user then connects the "Code Block" component (i.e., the test component) to the branch false (i.e., the test component) in the "if branch" component. The editor determines the connection relationship between the "code block" component (i.e., the test component) and the "if branch" component (i.e., the test component) based on the user's connection operation. When the condition set in the "if branch" component (i.e., the test component) (i.e., the length is greater than 1) is false, it displays "Empty content".
[0068] The editor then generates the target test flow based on component parameters and connection relationships. Specifically, when the user clicks the "Run" button, the process editing system, based on the edited target test flow, first automatically opens the browser's Baidu homepage, then enters "Beijing AAA Technology Co., Ltd." into the search box on the Baidu homepage, automatically clicks the search button, and displays the search results for "Beijing AAA Technology Co., Ltd.", then retrieves the company information for "Beijing AAA Technology Co., Ltd." The process editing system creates and opens an Excel sheet named demo.xlsx, enters the company information for "Beijing AAA Technology Co., Ltd." in cell A1, and then closes the Excel sheet. This completes the execution of the entire target test flow.
[0069] Therefore, this technical solution utilizes automated workflow technology to complete all processes within a test scenario. Furthermore, the generation of the target test workflow requires setting parameters for the test components and connecting all test components. When capturing an operation object, the capturer obtains its path description information. Based on this path description, the executor can determine the appropriate automated workflow technology for the target application from among multiple options. Developers only need to edit the business process to achieve automated business completion; they don't need to manually determine the appropriate technology or learn multiple technologies to select the correct one, thus reducing their learning curve. By using the executor to determine the appropriate automated workflow technology for the target application, the correct technology can be accurately selected for project testing, leading to greater project stability. Because this technical solution uses a visual workflow editing interface, project implementation is simple and rapid, improving development efficiency. Therefore, even if different automation process technologies are applied to applications developed with different technologies, developers do not need to understand the technology type of the target application before they can use the corresponding automation process technology to test the target application. This technical solution achieves the effect of reducing the learning cost by not requiring developers to have a high level of technical expertise.
[0070] Furthermore, in the target test process for entering bank documents into the centralized operating system, the editor generates the target test process through the following steps: Following the editing process described above, the editor generates the target test process based on component parameters and connection relationships. The target test process is as follows:
[0071] Reference Figure 5As shown, the workflow editing system, based on the completed target test workflow, first uses a high-speed scanner to photograph bank documents, uploads the documents at the counter, and the centralized operation system obtains the document serial number of the bank documents requiring OCR detection. Then, it uses an OCR proxy service to retrieve the documents to be detected from IBM. The centralized operation system performs handwritten text detection on the bank documents and returns the results to the centralized operation system. The centralized operation system processes the handwritten text of the bank documents into printed text and then slices the printed text. The workflow editing system obtains the sliced data through OCR recognition technology and then inputs the sliced data into the centralized operation system. Thus, by using the workflow editing system to design an automated workflow for inputting bank documents into the centralized operation system, it completely replaces the manual input by business personnel and the combination of manual and external hardware work, significantly reducing labor costs and improving data input accuracy. Furthermore, the workflow designed for this business scenario can operate 24 / 7, improving work efficiency.
[0072] Furthermore, RPA technology has helped companies save significant labor costs in many fields, and in recent years, RPA technology has experienced exponential growth. Currently, RPA technology has been successfully implemented in numerous mature cases across industries such as finance, auditing, customer service, e-commerce, traditional manufacturing, and education.
[0073] This technical solution can be widely applied across various industries, helping numerous enterprises reduce labor costs, improve production efficiency, and decrease the probability of business process errors. Currently, its most common applications include: automation of banking and financial processes, mortgage and loan processes, customer service automation, e-commerce promotion and fan engagement automation, OCR applications, and data extraction.
[0074] Optionally, the method further includes: after the executor finishes executing the target test process, it sends the corresponding execution log and execution results to the editor. This allows the editor to quickly and accurately receive feedback. Furthermore, the process editing system's process debugging and logging functions make process editing convenient for developers.
[0075] Furthermore, the PRA workflow editing process based on the workflow editing system is described as follows: First, developers streamline the business process, determine the specific operations within the process, and optimize it as much as possible. Then, developers install the RPA workflow editing system on their computers and develop the workflow based on the streamlined business process, connecting each step into a workflow by extending test components. The automated operation of the workflow editing system includes the following steps: 1. Drag and drop the corresponding test component; 2. Click the capture button to capture the operation object (element); 3. After capture, the path of the operation object (element) can be adjusted or not, depending on the specific business scenario. After these operations, an RPA workflow based on the workflow editing system is completed.
[0076] Existing technologies can automate processes by calling business system interfaces or directly reading or modifying business system data. However, this approach is intrusive, impacting the business system and causing instability. This embodiment employs a non-intrusive solution that does not negatively affect the business system. In terms of development efficiency, the visual workflow editing feature simplifies and accelerates project implementation. Furthermore, the workflow editing system in this solution offers better compatibility and versatility, truly enabling cross-software and cross-technology design.
[0077] In addition, refer to Figure 1 As shown, according to a second aspect of this embodiment, a storage medium is provided. The storage medium includes a stored program, wherein, when the program is executed, a processor performs any of the methods described above.
[0078] According to this embodiment, the editor responds to the user's input command to run the edited target test process, generates a corresponding process execution task, and sends it to the executor. The editor then triggers the executor, enabling it to automatically execute the target test process. The executor then executes the target test process using corresponding automated process technologies based on the path description information of the operation objects of each test component. The path description information consists of the technology type, main window information, and object sub-path information of the operation objects captured by the capture mechanism. The executor records necessary data information through the path description information. The executor incorporates multiple automated process technologies, requiring no human intervention or manual configuration during the execution of the target test process. The executor automatically selects the corresponding automated process technology to execute based on the technology type, main window information, and object sub-path information automatically identified by the capture mechanism. This truly achieves cross-software, cross-technology automated operation.
[0079] Therefore, this technical solution utilizes automated workflow technology to complete all business processes in a test scenario. When capturing an operation object, the capture device obtains its path description information. Based on this path description, the executor can determine the appropriate automated workflow technology for the target application from among multiple options. Developers only need to edit the business process to achieve automated business completion; they don't need to manually determine the appropriate technology or learn multiple technologies to make the correct selection, thus reducing their learning costs. Furthermore, by using the executor to determine the appropriate automated workflow technology for the target application, the correct technology can be accurately selected for project testing, making the project more stable. Because this technical solution uses a visual workflow editing interface, project implementation is simple and fast, improving development efficiency. Even if different automated workflow technologies are applied to applications developed with different technologies, developers do not need to understand the target application's technology type before using the corresponding automated workflow technology for testing. This technical solution achieves the effect of reducing the learning cost by eliminating the need for developers to have high technical expertise. This further addresses the technical problem in existing technologies where different automated process technologies are applied to applications developed using different technologies. Developers can only use the corresponding automated process technology to test the target application after understanding the technology type of the target application, resulting in high technical proficiency requirements and high learning costs for developers.
[0080] It should be noted that, for the sake of simplicity, the foregoing method embodiments are all described as a series of actions. However, those skilled in the art should understand that the present invention is not limited to the described order of actions, because according to the present invention, some steps can be performed in other orders or simultaneously. Furthermore, those skilled in the art should also understand that the embodiments described in the specification are preferred embodiments, and the actions and modules involved are not necessarily essential to the present invention.
[0081] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods according to the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk) and includes several instructions to cause a terminal device (which may be a mobile phone, computer, server, or network device, etc.) to execute the methods described in the various embodiments of the present invention.
[0082] Example 2
[0083] Figure 6 A process editing device 600 based on robotic process automation according to this embodiment is shown, applied to a process editing system including an editor, a capture device, and an actuator. This device 600 corresponds to the method described according to the first aspect of Embodiment 1. (See reference...) Figure 6 As shown, the device 600 includes: a first generation module 610, configured to generate a corresponding process execution task and send it to the executor in response to a user-inputted run instruction to run a pre-edited target test process, wherein the target test process is used to test a target application; and an execution module 620, configured to execute the target test process using corresponding automated process technology based on the path description information of the operation objects of each test component in the target test process, wherein the path description information is information obtained by the capturer from the operation objects of each test component, and the path description information includes the technology type of the operation object, main window information, and object sub-path information.
[0084] Optionally, the device 600 further includes: a second generation module, used to generate corresponding capture tasks and send them to the capturer in response to a capture command input by the user to capture the operation objects of each test component during the editing of the target test process; a first determination module, used to capture the operation objects of each test component according to the capture tasks and determine the path description information of the operation objects of each test component; and a sending module, used to send the determined path description information of the operation objects of each test component to the editor.
[0085] Optionally, the capture task includes component parameters of the test component and basic information of the corresponding operation object, and the first determining module includes: a first determining submodule, used to determine the technology type of the operation object of the test component based on the basic information of the operation object of the test component in the capture task; a second determining submodule, used to determine the main window information of the main window where the operation object of the test component is located based on the component parameters in the capture task; a third determining submodule, used to determine the object subpath information of the operation object of the test component based on the component parameters in the capture task, wherein the object subpath information records the tree structure path of the operation object of the test component in the main window; and a fourth determining submodule, used to determine the path description information of the operation object of the test component based on the determined technology type, main window information, and tree structure path.
[0086] Optionally, the process editing system pre-integrates multiple automated process technologies, and the execution module 620 includes: a fifth determining submodule, used to determine the automated process technology corresponding to the technology type from multiple automated process technologies based on the technology type in the path description information of the operation objects of each test component in the target test process; and an execution submodule, used to execute the target test process using the determined automated process technology based on the main window information and object sub-path information in the path description information of the operation objects of each test component in the target test process.
[0087] Optionally, the device 600 further includes a process generation module, configured to generate a target test process through the following steps: In response to the user's operation of adding various test components to the process editing area, the editor displays each test component and its corresponding parameter setting interface in the process editing area; the editor determines the component parameters of each test component based on the information entered by the user in the parameter setting interface; the editor determines the connection relationships between the various test components based on the user's connection operations; and the editor generates the target test process based on the component parameters and connection relationships.
[0088] Optionally, the device 600 further includes a result sending module, used to send the corresponding execution log and execution results to the editor after the execution of the target test process is completed.
[0089] Therefore, according to this embodiment, this technical solution uses automated process technology to complete all processes in a test scenario. When capturing an operation object, the capture device obtains the path description information of the operation object. Based on the path description information, the executor can determine the automated process technology corresponding to the target application from multiple automated process technologies. Developers only need to edit the business process to achieve automated business completion; they do not need to manually determine the corresponding automated process technology for the target application, nor do they need to familiarize themselves with and learn multiple automated process technologies to correctly select the appropriate one, thus reducing the learning cost for developers. Furthermore, by determining the corresponding automated process technology for the target application through the executor, the correct automated process technology can be accurately selected for project testing, making the project more stable. Since this technical solution uses a visual editing process, project implementation is simple and fast, improving development efficiency. Therefore, even if different automated process technologies are applied to applications developed with different technologies, developers do not need to understand the technology type of the target application before using the corresponding automated process technology to test the target application. This technical solution achieves the effect of reducing the learning cost by eliminating the need for developers to have high technical proficiency. This further addresses the technical problem in existing technologies where different automated process technologies are applied to applications developed using different technologies. Developers can only use the corresponding automated process technology to test the target application after understanding the technology type of the target application, resulting in high technical proficiency requirements and high learning costs for developers.
[0090] Example 3
[0091] Figure 7 A process editing device 700 based on robotic process automation according to this embodiment is shown, applied to a process editing system including an editor, a capture device, and an actuator. This device 700 corresponds to the method described according to the first aspect of Embodiment 1. (See reference...) Figure 7As shown, the device 700 includes: a processor 710; and a memory 720 connected to the processor 710, used to provide the processor 710 with instructions to process the following steps: the editor responds to a user input to run a completed target test process, generates a corresponding process execution task and sends it to the executor, wherein the target test process is used to test a target application; and the executor executes the target test process using corresponding automated process technology based on the path description information of the operation objects of each test component in the target test process, wherein the path description information is information obtained by the capturer from the operation objects of each test component, and the path description information includes the technology type of the operation object, main window information and object sub-path information.
[0092] Optionally, the memory 720 is also used to provide the processor 710 with instructions to process the following steps: during the editing of the target test process, the editor responds to the user's input capture instruction to capture the operation objects of each test component, generates a corresponding capture task and sends it to the capturer; the capturer captures the operation objects of each test component according to the capture task and determines the path description information of the operation objects of each test component; and the capturer sends the determined path description information of the operation objects of each test component to the editor.
[0093] Optionally, the capture task includes the component parameters of the test component and the basic information of the corresponding operation object. The capturer captures the operation object of the test component according to the capture task and determines the path description information of the operation object of the test component. This includes: the capturer determines the technology type of the operation object of the test component according to the basic information of the operation object of the test component in the capture task; the capturer determines the main window information of the main window where the operation object of the test component is located according to the component parameters in the capture task; the capturer determines the object sub-path information of the operation object of the test component according to the component parameters in the capture task, wherein the object sub-path information records the tree structure path of the operation object of the test component in the main window; and the capturer determines the path description information of the operation object of the test component according to the determined technology type, main window information, and tree structure path.
[0094] Optionally, the process editing system pre-integrates multiple automated process technologies, and the executor executes the operation of the target test process using the corresponding automated process technology based on the path description information of the operation objects of each test component in the target test process. This includes: the executor determining the automated process technology corresponding to the technology type from multiple automated process technologies based on the technology type in the path description information of the operation objects of each test component in the target test process; and the executor executing the target test process using the determined automated process technology based on the main window information and object sub-path information in the path description information of the operation objects of each test component in the target test process.
[0095] Optionally, the editor generates the target test flow through the following steps: In response to the user's operation of adding various test components to the flow editing area, the editor displays each test component and the corresponding parameter setting interface in the flow editing area; the editor determines the component parameters of each test component based on the information entered by the user in the parameter setting interface; the editor determines the connection relationship between each test component based on the user's connection operation on each test component; and the editor generates the target test flow based on the component parameters and connection relationships.
[0096] Optionally, the memory 720 is also used to provide the processor 710 with instructions to process the following steps: after the executor finishes executing the target test process, it sends the corresponding execution log and execution results to the editor.
[0097] Therefore, according to this embodiment, this technical solution uses automated process technology to complete all processes in a test scenario. When capturing an operation object, the capture device obtains the path description information of the operation object. Based on the path description information, the executor can determine the automated process technology corresponding to the target application from multiple automated process technologies. Developers only need to edit the business process to achieve automated business completion; they do not need to manually determine the corresponding automated process technology for the target application, nor do they need to familiarize themselves with and learn multiple automated process technologies to correctly select the appropriate one, thus reducing the learning cost for developers. Furthermore, by determining the corresponding automated process technology for the target application through the executor, the correct automated process technology can be accurately selected for project testing, making the project more stable. Since this technical solution uses a visual editing process, project implementation is simple and fast, improving development efficiency. Therefore, even if different automated process technologies are applied to applications developed with different technologies, developers do not need to understand the technology type of the target application before using the corresponding automated process technology to test the target application. This technical solution achieves the effect of reducing the learning cost by eliminating the need for developers to have high technical proficiency. This further addresses the technical problem in existing technologies where different automated process technologies are applied to applications developed using different technologies. Developers can only use the corresponding automated process technology to test the target application after understanding the technology type of the target application, resulting in high technical proficiency requirements and high learning costs for developers.
[0098] The sequence numbers of the above embodiments of the present invention are for descriptive purposes only and do not represent the superiority or inferiority of the embodiments.
[0099] In the above embodiments of the present invention, the descriptions of each embodiment have different focuses. For parts not described in detail in a certain embodiment, please refer to the relevant descriptions of other embodiments.
[0100] In the several embodiments provided in this application, it should be understood that the disclosed technical content can be implemented in other ways. The device embodiments described above are merely illustrative; for example, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the displayed or discussed mutual coupling, direct coupling, or communication connection may be through some interfaces; the indirect coupling or communication connection between units or modules may be electrical or other forms.
[0101] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0102] Furthermore, the functional units in the various embodiments of the present invention can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.
[0103] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, read-only memory (ROM), random access memory (RAM), portable hard drives, magnetic disks, or optical disks.
[0104] The above description is only a preferred embodiment of the present invention. It should be noted that for those skilled in the art, several improvements and modifications can be made without departing from the principle of the present invention, and these improvements and modifications should also be considered within the scope of protection of the present invention.
Claims
1. A workflow editing method based on robotic process automation, applied to a workflow editing system, characterized in that, The process editing system includes an editor, a capturer, and an executor, and the method includes: The editor, in response to a user-input command to run a pre-edited target test process, generates a corresponding process execution task and sends it to the executor, wherein the target test process is used to test a target application; and The executor executes the target test process using corresponding automated process technology based on the path description information of the operation objects of each test component in the target test process. The path description information is the information obtained by the capturer from capturing the operation objects of each test component, and the path description information includes the technology type, main window information and object sub-path information of the operation object. During the editing of the target test process, the editor responds to the user's input capture command to capture the operation objects of each of the test components, generates the corresponding capture task and sends it to the capturer; The capturer captures the operation objects of each test component according to the capture task, and determines the path description information of the operation objects of each test component; and The capturer sends the path description information of the operation objects of each of the determined test components to the editor; The capture task includes the component parameters of the test component and the basic information of the corresponding operation object. The capturer captures the operation object of the test component according to the capture task, and determines the path description information of the operation object of the test component, including: The capturer determines the technology type of the operation object of the test component based on the basic information of the operation object of the test component in the capture task; The capturer determines the main window information of the main window where the operation object of the test component is located based on the component parameters in the capture task; The capturer determines the object sub-path information of the operation object of the test component based on the component parameters in the capture task, wherein the object sub-path information records the tree structure path of the operation object of the test component in the main window; and The capture device determines the path description information of the operation object of the test component based on the determined technology type, main window information, and tree structure path.
2. The method according to claim 1, characterized in that, The process editing system pre-integrates multiple automated process technologies, and the executor executes the operations of the target test process using the corresponding automated process technologies based on the path description information of the operation objects of each test component in the target test process, including: The executor determines the automation process technology corresponding to the specified technology type from among the multiple automation process technologies based on the technology type in the path description information of the operation objects of each test component in the target test process; and The executor executes the target test process using the determined automation process technology, based on the main window information and object sub-path information in the path description information of the operation objects of each test component in the target test process.
3. The method according to claim 1, characterized in that, The editor generates the target test process through the following steps: In response to the user's operation of adding each of the test components to the process editing area, the editor displays each of the test components and the parameter setting interface corresponding to each of the test components in the process editing area. The editor determines the component parameters of each test component based on the information entered by the user in the parameter setting interface; The editor determines the connection relationship between the various test components based on the user's connection operations on each of the test components; as well as The editor generates the target test process based on the component parameters and the connection relationships.
4. The method according to claim 1, characterized in that, Also includes: After the executor finishes executing the target test process, it sends the corresponding execution log and execution results to the editor.
5. A storage medium, characterized in that, The storage medium includes a stored program, wherein, when the program is executed, the method described in any one of claims 1 to 4 is performed by a processor.
6. A process editing device based on robotic process automation, applied to a process editing system, characterized in that, The workflow editing system includes an editor, a capture unit, and an executor, and the device includes: The first generation module is configured to, in response to a user-inputted command to run a pre-edited target test process, generate a corresponding process execution task and send it to the executor, wherein the target test process is used to test a target application; and The execution module is used to execute the target test process using corresponding automated process technology based on the path description information of the operation objects of each test component in the target test process. The path description information is the information obtained by the capturer from capturing the operation objects of each test component, and the path description information includes the technology type, main window information and object sub-path information of the operation object. During the editing of the target test process, the editor responds to the user's input capture command to capture the operation objects of each of the test components, generates the corresponding capture task and sends it to the capturer; The capturer captures the operation objects of each test component according to the capture task, and determines the path description information of the operation objects of each test component; and The capturer sends the path description information of the operation objects of each of the determined test components to the editor; The capture task includes the component parameters of the test component and the basic information of the corresponding operation object. The capturer captures the operation object of the test component according to the capture task, and determines the path description information of the operation object of the test component, including: The capturer determines the technology type of the operation object of the test component based on the basic information of the operation object of the test component in the capture task; The capturer determines the main window information of the main window where the operation object of the test component is located based on the component parameters in the capture task; The capturer determines the object sub-path information of the operation object of the test component based on the component parameters in the capture task, wherein the object sub-path information records the tree structure path of the operation object of the test component in the main window; and The capture device determines the path description information of the operation object of the test component based on the determined technology type, main window information, and tree structure path.