[go: up one dir, main page]

CN118227506B - UI (user interface) automatic test system and method based on RPA (remote procedure alliance) robot - Google Patents

UI (user interface) automatic test system and method based on RPA (remote procedure alliance) robot Download PDF

Info

Publication number
CN118227506B
CN118227506B CN202410594140.XA CN202410594140A CN118227506B CN 118227506 B CN118227506 B CN 118227506B CN 202410594140 A CN202410594140 A CN 202410594140A CN 118227506 B CN118227506 B CN 118227506B
Authority
CN
China
Prior art keywords
flow
test
module
robot
automatic
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202410594140.XA
Other languages
Chinese (zh)
Other versions
CN118227506A (en
Inventor
江春
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang Zhenshi Intelligent Technology Co ltd
Original Assignee
Zhejiang Zhenshi Intelligent Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhejiang Zhenshi Intelligent Technology Co ltd filed Critical Zhejiang Zhenshi Intelligent Technology Co ltd
Priority to CN202410594140.XA priority Critical patent/CN118227506B/en
Publication of CN118227506A publication Critical patent/CN118227506A/en
Application granted granted Critical
Publication of CN118227506B publication Critical patent/CN118227506B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Prevention of errors by analysis, debugging or testing of software
    • G06F11/3668Testing of software
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Prevention of errors by analysis, debugging or testing of software
    • G06F11/3668Testing of software
    • G06F11/3672Test management
    • G06F11/368Test management for test version control, e.g. updating test cases to a new software version
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Prevention of errors by analysis, debugging or testing of software
    • G06F11/3668Testing of software
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

The invention belongs to the technical field of software testing, and particularly relates to a UI (user interface) automatic testing system and method based on an RPA (remote procedure alliance) robot. The system comprises: the flow design module is used for constructing and designing an automatic robot flow; the flow scheduling module is used for managing the flow of the automatic robot; the flow scheduling module is responsible for coordinating the activities of the automatic test process, monitoring the execution of the automatic test process and processing abnormal conditions; the flow execution module is used for executing the automatic robot flow developed in the flow design module, receiving the execution task issued by the flow scheduling module, performing data interaction with the flow scheduling module and reporting the execution process and the result to the flow scheduling module. The invention has the characteristics of helping to improve the efficiency of software testers, reducing the occupation ratio of manual testing and better serving the software testers.

Description

UI (user interface) automatic test system and method based on RPA (remote procedure alliance) robot
Technical Field
The invention belongs to the technical field of software testing, and particularly relates to a UI (user interface) automatic testing system and method based on an RPA (remote procedure alliance) robot.
Background
The RPA (Robotic Process Automation, robot process automation) technology is a process automation technology, and a process editor provided by RPA software can be used for designing and configuring a service operation process capable of being automatically executed, and the service operation process is packaged into a form of a software robot or a virtual robot, deployed to a production environment and a service system for execution, and simulates a series of operations of a person on a computer, such as opening a web page, starting an application, moving a mouse, clicking a mouse, inputting a keyboard, acquiring page information, inputting file content, excel operation, querying a database and the like.
Traditional UI automation refers to the use of software tools or programming techniques to simulate user interactions with an application and automatically perform operations on a user interface. Such automation techniques may be used to test a user interface of an application, perform repetitive tasks, or implement an automated workflow.
The prior UI automation technology mainly comprises the following contents:
1. Test frame: the test framework provides the basic structure and functionality to write, organize, and execute automated test scripts. Common test frames include Selenium, appium, cypress, testCafe, etc. These frameworks support different application types (Web, mobile, desktop, etc.) and programming languages, providing rich APIs and tools for element localization, interaction, and assertion.
2. Element positioning tool: element positioning is a key step in UI automation testing for positioning and identifying UI elements that need to be operated on in the testing. Common element locating tools include XPath, CSS selector, ID, name, class name, and the like. The test framework typically provides corresponding APIs and methods to support these positioning modes.
3. Programming language: UI automation testing typically uses a programming language to write test scripts. Common programming languages include Java, python, javaScript, C # and the like. When selecting a programming language, factors such as the supporting degree of the test framework, the familiarity degree of the team, the technical stack of the application program and the like need to be considered.
4. Integrated Development Environment (IDE): IDE is a tool for writing, debugging and managing code. For UI automation testing, common IDEs include Eclipse, IDEA, pyCharm, visual Studio, and the like. The IDEs provide functions such as code editing, debugging, automatic complement, version control and the like, and the development efficiency of the test script is improved.
5. Continuous integration/continuous delivery (CI/CD) tool: the CI/CD tool is used to automate the building, testing and deployment of applications. They can be integrated with UI automation testing, providing the advantages of fast feedback and continuous integration by triggering an automated test procedure. Common CI/CD tools include Jenkins, travis CI, gitLab CI/CD, and the like.
6. Cloud test platform: the cloud test platform provides the capability of executing automatic test in a distributed environment, and can run a plurality of test cases in parallel, so that the test speed is increased. Some common cloud testing platforms include Sauce Labs, browserStack, kobiton, and the like.
7. Test report and result management: test reporting and result management tools are used to collect, analyze and present the results of automated tests. These tools typically provide rich report templates, charts, and statistics that help test teams analyze test coverage, defect trends, etc. Common tools include Extent Reports, allure, testRail, and the like.
However, the existing UI automation technology still has the following problems:
1. Part of the functions cannot be fully automated: one common problem with UI automated test tools that are difficult to implement fully automation is the scenario where manual intervention is required, such as verification code input. This is because the captchas are typically security mechanisms designed to prevent machine automation operations that cannot be directly simulated by an automation script. In this case, the tester needs to manually enter the verification code or bypass the verification code by other mechanisms to ensure that the test is performed.
2. The capability requirement of writers is high: script writing using existing UI automation test tools requires a certain programming and technical capabilities. The testers need to be familiar with test frameworks, programming languages, element positioning methods, etc. to write reliable, maintainable test scripts. For testers without a programming background or less experience, learning and mastering these skills may require some time and effort.
3. The environment configuration is complex: configuring the running environment of the UI automation test tool may be complex. This involves installing and configuring a test framework, associated dependencies, browser drivers, etc. Each tool and framework has its own specific requirements and configuration steps, and it may take some time for the tester to understand and set up the correct environment to ensure that the test script runs smoothly.
4. Team coordination: UI automation testing typically requires coordination and coordination of the entire team to proceed successfully. The testers need to closely cooperate with developers, product teams and operation and maintenance teams to complete development, deployment and scheduling of UI automation scripts. In the testing process, communication with the developer and solution of the problem may be required to ensure stability and accuracy of the test script.
Therefore, it is very important to design a UI (user interface) automatic testing system and method based on an RPA (remote procedure A) robot, which can help to improve the efficiency of software testers, reduce the duty ratio of manual testing and better serve the software testers.
Disclosure of Invention
The invention provides an RPA robot-based UI automatic testing system and method which can help to improve the efficiency of software testers, reduce the occupation ratio of manual testing and better serve the software testers, and aims to solve the problems that in the prior art, the existing UI automatic technology has partial functions which cannot be fully automated, the capability requirement on writers is high, the environment configuration is complex and team coordination is needed.
In order to achieve the aim of the invention, the invention adopts the following technical scheme:
an RPA robot-based UI automated test system comprising:
The flow design module is used for constructing and designing an automatic robot flow;
The flow scheduling module is used for managing the flow of the automatic robot; the flow scheduling module is responsible for coordinating the activities of the automatic test process, monitoring the execution of the automatic test process and processing abnormal conditions;
The flow execution module is used for executing the automatic robot flow developed in the flow design module, receiving the execution task issued by the flow scheduling module, performing data interaction with the flow scheduling module and reporting the execution process and the result to the flow scheduling module.
Preferably, the flow design module includes:
A user interface for a user to intuitively create and manage an automated UI test procedure, including drag-and-drop flow charts, enabling the user to select and configure various components from a predefined library of test components;
The component library is used for constructing an automatic UI test flow for various scenes and requirements;
the flow chart design module is used for combining a plurality of automatic test flows into a complete automatic test flow;
The variable and logic module is used for the user to use the variable to store, process and transmit data in the test flow, and simultaneously use condition judgment and circulation, and execute different operations according to different conditions to meet different requirements of automatic test;
the debugging and testing module is used for verifying the correctness of an automatic testing process and specifically comprises single-step execution, breakpoint setting and variable monitoring, and is used for helping a user to diagnose and repair errors;
the security and stability module is used for ensuring the reliability of an automatic process and the security of data, and specifically comprises an access control mechanism, an encryption transmission mechanism, an error processing mechanism and an abnormal recovery mechanism;
The deployment and management module is used for deploying and managing the developed automatic test flow in the production environment, and specifically comprises version control, authority management and log record.
Preferably, the flow scheduling module includes:
the task scheduling and distributing module is used for providing task scheduling and distributing functions so as to determine that the corresponding robot executes the corresponding automatic test task, and particularly comprises the steps of dynamically distributing according to the priority, the availability and the environment of the robot;
The robot management module is used for providing management functions of the robot, and specifically comprises registering, configuring and monitoring the state of the robot;
The abnormality processing module is used for providing an abnormality processing function, monitoring and processing abnormality conditions in the execution process of the automatic test, and specifically comprises error processing, automatic retry, alarm and notification so as to ensure stable operation of the flow;
the log and report module is used for providing log record and report functions to track the execution and performance of the robot, and particularly comprises recording the execution history, error log, execution time statistics and business report of the automatic test task;
the security and authority management module is used for having security and authority management functions so as to protect the security of the robot flow and sensitive data, and specifically comprises access control, encryption transmission, identity verification and authorization;
the monitoring and performance optimization module is used for providing monitoring and performance optimization functions so as to ensure efficient execution of the robot flow, and specifically comprises monitoring resource utilization rate and performance bottleneck analysis.
Preferably, the flow execution module includes:
The issuing task receiving module is used for establishing network connection with the flow scheduling module and realizing the task receiving by using an API interface;
the automatic UI test flow operation module is used for enabling the robot to start operating the automatic flow at a designated time according to the received task;
The running process recording module is used for recording key events and operations in the automatic UI test execution process by the robot, and synchronously displaying the key events and operations in the page of the flow scheduling module by generating a log file and sending a real-time log message;
and the operation result uploading module is used for uploading the execution result to the flow scheduling module by the RPA automatic UI testing robot after the execution of the automatic UI testing flow is completed.
Preferably, in the automatic UI test procedure operation module, the operation of the automatic procedure includes simulating user interface interaction, executing user software test, opening a web page, clicking a mouse, and operating a window.
Preferably, in the running process recording module, the key events and operations include task start time, execution steps, execution time, errors and exception information.
Preferably, in the operation result uploading module, the execution result includes an execution log, an operation video and an execution result file.
The invention also provides an UI automatic test method based on the RPA robot, which comprises the following steps:
s1, designing a UI automation test case set; the test case needs to determine a test object, a test range and a UI page function to be tested; the UI page functions comprise various components, interactions and flows of a user interface;
s2, creating a new flow in the flow design module; the steps in the new flow are specifically designed as follows:
According to the test cases, each step is converted into components and operations in the RPA robot flow;
adding logic control in the RPA flow according to the flow of the test case;
adding an output log component at a proper position in the RPA flow, and printing relevant variable values and debugging information during running;
Adding a corresponding verification step in the RPA flow according to the expected result of the test case;
After the design and writing of the new flow are completed, testing and debugging the new flow by using a debugging function provided by the RPA designer;
after the debugging and testing of the new flow are completed, the new flow is saved and version management is carried out;
S3, in the flow execution module, according to an operating system to be tested, the test account is connected and logged in, so that the robot account in a scene to be tested is ensured to be successfully logged in and to be in an online state;
S4, issuing the new flow which is debugged in the step S2 to a flow scheduling module of the RPA robot, and configuring a scheduling task;
s5, the RPA robot operates the flow on the appointed time and the appointed robot account through the flow issued by the flow scheduling module and the set operation strategy, and monitors and analyzes the operation condition through the modes of screen recording, video playback and log recording.
Compared with the prior art, the invention has the beneficial effects that: (1) The system is easy to use, and the RPA robot generally provides a visual development interface so that non-technical staff can also create an automatic UI test task; these tools use drag-and-drop and configuration methods without the need to write complex code, which allows testers and business users to quickly go up and create their own UI automation test flows; (2) The RPA robot provides rich operation libraries and built-in functional modules and is used for processing UI element interaction, data processing, error processing and the like; the functional modules can greatly accelerate the development speed of automatic test tasks and reduce the workload of writing codes; (3) powerful element pick-up checking function: the RPA robot provides element positioning and picking functions of various methods, comprises a selector element, CV (Computer Vision) elements, OCR (Optical Character Recognition) image positioning technology and an intelligent repairing method, supports various types of applications, and runs different DPIs under various browsers; (4) Cross-platform support RPA robots typically support a variety of application types including desktop applications, web applications, mobile applications, and the like; the UI test operation on different platforms can be automated by using the same set of tools and flow, so that the efficiency and flexibility of test work are improved; (5) The RPA robot provides flexible task scheduling and monitoring functions, can set the execution time and frequency of an automatic test task, and monitors the execution state and result of the test task; this allows UI automation test tasks to be run automatically as needed, and execution results and error information to be obtained in time; (6) The RPA robot generally provides a visual flow editor and management interface to facilitate maintenance and update of automation tasks, and can update UI element positioning, processing logic or add new steps through simple drag-and-drop and configuration operations without modifying complex code.
Drawings
FIG. 1 is a functional architecture diagram of an RPA robot-based UI automation test system of the present invention;
FIG. 2 is a flow chart of the RPA robot picking up elements according to the present invention;
fig. 3 is a timing chart of an automatic UI test method based on an RPA robot in practical application according to an embodiment of the present invention.
Detailed Description
In order to more clearly illustrate the embodiments of the present invention, specific embodiments of the present invention will be described below with reference to the accompanying drawings. It is evident that the drawings in the following description are only examples of the invention, from which other drawings and other embodiments can be obtained by a person skilled in the art without inventive effort.
As shown in fig. 1, the invention provides an UI automation test system based on an RPA robot, which specifically adopts three functional modules integrated in the RPA robot: the system comprises a flow design module, a flow scheduling module and a flow operation module.
Wherein, the flow design module: tools for building and designing automated robotic flows provide a graphical interface that allows a user to create a flow of automated UI tests without having to write code.
The flow design module specifically comprises the following contents:
User interface: the RPA-based automated UI test flow design module provides an easy-to-use user interface that enables a user to intuitively create and manage an automated UI test flow, including drag-and-drop flow charts, that enables the user to select and configure various components from a predefined library of test components.
Component library: the RPA-based automatic UI test flow design module provides a rich component library, wherein the component library comprises common components and is used for constructing an automatic UI test flow for various scenes and requirements (such as opening a webpage, starting an application, moving a mouse, clicking a mouse, inputting a keyboard, acquiring page information, inputting file content, excel operation, inquiring a database and integrating other common applications).
The flow chart design module: the automatic UI test flow design module based on RPA supports workflow design, so that a user can combine a plurality of automatic test flows into a complete automatic test flow. The user can customize the order, condition, and cycle of operations, as well as the manner in which error handling and exception conditions are handled.
Variable and logic modules: the RPA-based automated UI test flow design module provides variables and logic functions, and a user can use the variables to store, process and transmit data in the test flow. And using condition judgment and circulation, and executing different operations according to different conditions to meet different requirements of automatic test.
Debugging and testing module: the RPA-based automated UI test procedure design module provides debugging and testing functions, so that a user can verify the correctness of the automated test procedure. This may include single step execution, breakpoint setting, variable monitoring, etc., to assist the user in diagnosing and repairing errors.
Security and stability module: the automatic UI test flow design module based on the RPA has safety and stability so as to ensure the reliability of an automatic flow and the safety of data. Including access control, encrypted transmissions, error handling, and exception recovery mechanisms.
Deployment and management module: the automatic UI test flow design module of the RPA provides a deployment function, and a user deploys and manages the developed automatic test flow in a production environment. Including version control, rights management, logging.
The flow scheduling module: a service for managing and executing automated robotic processes. Is responsible for coordinating the activities of the automated test procedures, monitoring their execution, and handling abnormal situations.
The flow scheduling module specifically comprises the following contents:
task scheduling and allocation module: task scheduling and allocation functions are provided to determine which robot performs which automated test task. Including dynamic allocation based on task priority, availability, and robot environment.
Robot management module: management functions of the robot are provided, including registering, configuring, and monitoring the status of the robot. Including connection and disconnection of robots, version management, parameter configuration, performance monitoring, etc.
An exception handling module: the exception handling function is provided, so that the exception condition in the automatic test execution process can be monitored and processed. Including error handling, automatic retry, alarm and notification, etc., to ensure stable operation of the process.
Log and report module: logging and reporting functions are provided to track the performance and capabilities of the robot. This may include recording the execution history, error log, execution time statistics, and business reports of the automated test tasks, etc.
Security and rights management module: the robot has the safety and authority management functions so as to protect the safety of the robot flow and sensitive data. Including access control, encrypted transmissions, authentication and authorization, etc.
Monitoring and performance optimization module: monitoring and performance optimization functions are provided to ensure efficient execution of the robot flow. Including monitoring resource utilization and performance bottleneck analysis.
The flow execution module: the system is used for executing the automatic test flow developed in the automatic test design module, receiving the execution task issued by the flow scheduling module, performing data interaction with the flow scheduling module, and reporting the execution process and the result (log record, operation video and execution result) to the flow scheduling module.
The flow execution module specifically comprises the following contents:
the issuing task receiving module: the network connection is established with the flow scheduling module, the task is received by using the API interface, the input parameters are input, and the time and the priority of the flow are executed.
An automatic UI test flow operation module: and the robot starts to run the automatic flow at the appointed time according to the received task. Including simulating user interface interactions, performing user software testing, web page opening, mouse clicks, window operations, etc., to simulate the process of manually performing UI testing.
The operation process recording module: the robot records key events and operations in the automated UI test execution process. Including task start time, execution steps, execution time, errors, and exception information. And synchronizing the generated log file and the sent real-time log information to the page of the flow scheduling module for display.
And an operation result uploading module: after execution is completed, the RPA automatic UI testing robot uploads an execution result to the flow scheduling module. The execution result comprises an execution log, an operation video and an execution result file, and the result file is sent to a position appointed by the flow scheduling module, and the result information is uploaded to the flow scheduling module through an API.
In addition, the invention also provides an UI automatic test method based on the RPA robot, which comprises the following steps:
1. Designing a UI automation test case set; the test case needs to determine a test object, a test range and a UI page function to be tested; the UI page functions comprise various components, interactions and flows of a user interface;
2. Creating a new flow in the flow design module; the steps in the new flow are specifically designed as follows:
According to the test cases, each step is converted into components and operations in the RPA robot flow;
adding logic control in the RPA flow according to the flow of the test case;
adding an output log component at a proper position in the RPA flow, and printing relevant variable values and debugging information during running;
Adding a corresponding verification step in the RPA flow according to the expected result of the test case;
After the design and writing of the new flow are completed, testing and debugging the new flow by using a debugging function provided by the RPA designer;
after the debugging and testing of the new flow are completed, the new flow is saved and version management is carried out;
3. in the flow execution module, according to the operating system to be tested, the test account is connected and logged in, so that the robot account in the scene to be tested is ensured to be successfully logged in and to be in an on-line state;
4. Releasing the new flow which is debugged in the step S2 to a flow scheduling module of the RPA robot, and configuring a scheduling task;
And 5, the RPA robot operates the flow on the appointed time and the appointed robot account through the flow issued by the flow scheduling module and the set operation strategy, and monitors and analyzes the operation condition through the modes of screen recording, video playback and log recording.
Based on the technical scheme of the invention, the implementation process of the invention in practical application is illustrated by the following case scenario, and the specific application implementation scheme is as follows:
Taking the process of UI automation test by the RPA robot as an example, as shown in fig. 3, a timing chart for implementing UI automation test in the RPA machine is intuitively displayed, and the call relationship between the functions of each module in the UI automation test process is illustrated, and the specific implementation flow is as follows:
1. and designing a UI automation test case set, namely determining a test object, a test scope and defining the UI page functions to be tested, wherein the UI page functions comprise various components, interactions and flows of a user interface. And (3) formulating a test strategy, and determining the emphasis and the priority of the test according to the test range and the project requirement. Which functions are considered to be critical to the user experience and core business processes are taken as main testing targets.
Writing a test case: and writing specific test cases according to the test strategy. Test cases should cover a variety of normal and abnormal situations, including user input verification, boundary conditions, error handling, etc. Normal conditions: the operating path and flow of the system normally used by the user are simulated. Abnormal conditions: test input verification, such as user input of illegal characters, input beyond a limited range, etc. Boundary conditions: the behavior of the system under extreme conditions, such as inputting minimum values, maximum values, etc., is tested. Error handling: the test system handles error inputs or abnormal situations, such as error prompts, log records, etc.
Design test data and environment: and designing corresponding test data and environments according to the requirements of the test cases. Test data should cover a variety of situations, including normal and abnormal data. The test environment should be as close as practical to the environment of use to ensure accuracy and reliability of the test. The design of UI automation test needs to fully consider the environment (including browser type, operating system type, resolution, DPI, etc.) that the tested system needs to be compatible with
2. In the flow design module of the invention, a new flow is created, and can be named and described according to the use cases according to the requirements.
The design flow steps are as follows: and converting each step into components and operations in the RPA robot flow according to the test case. Drag and drop may be used to select appropriate components in the designer, such as open and close a browser/application, click on an element, enter text, jump links, etc.
Logic to add control flow: according to the flow of the test case, logic control such as condition judgment, circulation and the like is added in the RPA flow. The RPA designer integrates various components, adds the components to the flow according to the requirement, and configures corresponding condition judgment and circulation operation.
Outputting debugging information: an output log component is added at the appropriate location in the flow, and relevant variable values and debug information are printed at run-time. And performing fault investigation in the subsequent analysis and debugging processes.
And (3) checking an addition result: and adding a corresponding verification step in the flow according to the expected result of the test case. The result verification can be performed by using the database component, the judgment can be performed by using the element text on the interface, the judgment can be performed by using the address on the link, and the verification can be performed by using the interface return value. Ensuring that the verification step can correctly judge whether the test result meets the expectations.
And (3) running: after the design and writing of the flow are completed, the flow is tested and debugged by using the debugging function provided by the RPA designer. Ensuring that each step is performed as expected and that the verification result is correct. The preservation and management flow: after the debugging and testing of the flow are completed, the flow is saved and version management is performed. Traceability of the flow and update iterations can be ensured.
For example, in the process design module, the UI automation test process mainly needs simulation testers to manually perform regression operation on test scenes, the most important function is to test element information in pages corresponding to each clicking action, namely, element pickup functions of RPA, and the RPA robot integrates the pages of each type together, and can acquire element information required to be clicked in an interface through one-key call. FIG. 2 is a flow chart of element picking, and the specific process is as follows:
And when part of elements cannot generate element nodes in the picking process, elements CV (Computer Vision) are automatically called to pick up, so that CV type element node information is generated.
3. In the flow execution module of the RPA robot, according to an operating system to be tested, and the connection login of the test account, the successful login of the robot account in the scene to be tested is ensured, and the robot account is in an online state.
4. And publishing the debugged automatic UI test flow to a flow scheduling module of the RPA robot, and configuring a task scheduling mode.
And (3) introducing a process: in the process scheduling module, an option to import or publish a process is found. And selecting an automatic UI test flow file to be imported according to the guidance of the interface, namely, debugging the passed flow file in the step 3.
Creating a scheduling task: in the flow scheduling module, an option to create a scheduled task is selected. According to the interface and the guide of the software, relevant task information is filled in, including automatic test task names, descriptions, trigger conditions and the like.
And (3) configuring an operation mode: and finding out the option of the operation mode in the configuration page of the scheduling task. Selecting an operation mode according to test requirements: manually or automatically. When the manual operation mode is selected, the robot waits for manual triggering to be performed. The robot will automatically execute according to a predetermined trigger condition by selecting an automatic operation mode.
Selecting a scheduling mode: and selecting a proper scheduling mode from a configuration page for scheduling tasks. The scheduling mode comprises timing scheduling, event triggering scheduling and the like. And selecting an appropriate scheduling mode according to the requirements. And (3) configuring scheduling time: and selecting timing scheduling and configuring the execution time of the task. The execution frequency, the start time, the end time and the like of the task are set according to the requirements of the software. And reasonable scheduling time configuration is ensured according to the requirements of the test scene. Selecting a robot for executing a flow: in a configuration page for scheduling tasks, a robot that performs the UI automation flow is selected.
And (3) completing scheduling configuration: after configuring all options of the scheduling task, it is ensured that all parameter settings are checked and confirmed. And storing the configuration of the scheduling task according to the requirements of the flow scheduling module. After the scheduling configuration is completed, the RPA robot automatically executes the UI automation test flow according to the setting. And the execution requirement of the flow and the requirement of a test scene are considered when the scheduling task is configured, so that an accurate and reliable automatic execution result is obtained.
The RPA robot can operate the flow on the appointed time and the appointed robot account through the flow issued by the flow scheduling module and the set operation strategy, and the following functions are provided for monitoring and analyzing the operation condition:
Recording screen function: the RPA robot module can record interface information in the running process. The robot will record screen operations and interface changes during operation for subsequent playback and analysis.
The operation steps and results are synchronously uploaded: the RPA robot module can timely upload step and result information in the running process of the automatic UI test to the flow scheduling module. Such information includes the execution status (success/failure), execution time, output result, etc. of each test step.
Video playback: in the flow scheduling module, interaction in the running process of the robot is checked through a video playback function. The operation and response conditions of the robot on the interface can be intuitively known.
Logging: the RPA robot module generates detailed log records, and records the execution status, input/output data, error information, and the like of each step. The log is checked to know the condition occurring in the running process and quickly locate the cause of failure.
Summarizing the operation conditions: the flow scheduling module provides running condition summarization of the UI automatic test flow, and the running condition summarization comprises statistical information such as the number of running successes, the number of failures, the running time and the like. The tester is helped to know the overall operation condition and trend.
Failure cause classification: the flow scheduling module classifies and records the running failure. By checking the classification statistics of failure reasons, the steps or modules with problems are quickly positioned, so that the speed of positioning and repairing the problems is increased.
Through the functions, testers can timely monitor and analyze the running condition of an automatic UI test flow based on the RPA robot, and possible problems and failure reasons can be rapidly located. This helps to improve the stability and reliability of the automated process and to speed up the problem solving, especially when positioning the BUGs in the system under test.
Through the embodiment, the UI automation test by using the RPA robot can be realized.
The UI automatic test flow written in the RPA robot can be used for different test scenes, including functional test, integration test, performance test and compatibility test.
1. Functional test is intended to verify whether the individual functions of the software system are working properly as required by the specification. In UI automation test, RPA robot can be used to write test cases, simulate user operation and input, and check whether the system functions are expected to run. By means of the automatic test based on the RPA robot technology, the efficiency and consistency of the test can be improved, and the workload of manual test can be reduced.
2. Integration test-integration test is used to verify whether different modules or components can work together normally after integration. In UI automation testing, RPA robots may be used to write test scripts, simulate interactions and data transfer between different modules, and check if the integrated system has the expected functionality and performance.
3. Performance testing is used to evaluate the performance and response capabilities of a system under different load conditions. In UI automation testing, multiple RPA robots may be used to simulate multiple users operating simultaneously, measuring the response time, throughput, and resource utilization of the system. By means of automatic performance test, the bottleneck and performance problems of the system can be found, and performance optimization is performed.
4. Compatibility testing is used to verify the compatibility of the system on different operating systems, browsers and devices. In UI automation, RPA robots may be used to write test scripts that simulate running applications in different environments, checking if the interfaces and functions of the applications work properly on various platforms.
The innovation points of the invention are as follows:
1. the use of the RPA robot for UI automatic test reduces the threshold of practitioners, and testers without code writing capability can also realize automatic test.
2. The RRA tool is used for UI automatic test, so that the coverage of element pickup is expanded, the pickup and operation of the process can be basically realized based on the scene of the service, and the boundary of the automatic test is expanded.
3. The whole flow of the UI automatic test coverage automatic test is carried out by using an RPA robot, and the method comprises the steps of compiling and debugging the flow, checking results, scheduling the flow and carrying out data statistical analysis.
4. The use of RPA robots for UI automation testing covers the compatibility of more scenario tests, browser compatibility, operating system compatibility, and resolution compatibility.
5. The RPA robot is used for carrying out UI automatic test to comprehensively monitor the flow operation (screen recording and operation log), so that data can be collected and positioned (error log analysis), errors can be better cleared, and the operation stability is improved.
The foregoing is only illustrative of the preferred embodiments and principles of the present invention, and changes in specific embodiments will occur to those skilled in the art upon consideration of the teachings provided herein, and such changes are intended to be included within the scope of the invention as defined by the claims.

Claims (5)

1. UI automated test system based on RPA robot, characterized by comprising:
The flow design module is used for constructing and designing an automatic robot flow;
The flow design module comprises:
A user interface for a user to intuitively create and manage an automated UI test procedure, including drag-and-drop flow charts, enabling the user to select and configure various components from a predefined library of test components;
The component library is used for constructing an automatic UI test flow for various scenes and requirements;
the flow chart design module is used for combining a plurality of automatic test flows into a complete automatic test flow;
The variable and logic module is used for the user to use the variable to store, process and transmit data in the test flow, and simultaneously use condition judgment and circulation, and execute different operations according to different conditions to meet different requirements of automatic test;
the debugging and testing module is used for verifying the correctness of an automatic testing process and specifically comprises single-step execution, breakpoint setting and variable monitoring, and is used for helping a user to diagnose and repair errors;
the security and stability module is used for ensuring the reliability of an automatic process and the security of data, and specifically comprises an access control mechanism, an encryption transmission mechanism, an error processing mechanism and an abnormal recovery mechanism;
The deployment and management module is used for deploying the developed automatic test flow into a production environment and managing the automatic test flow, and specifically comprises version control, authority management and log record;
The flow scheduling module is used for managing the flow of the automatic robot; the flow scheduling module is responsible for coordinating the activities of the automatic test process, monitoring the execution of the automatic test process and processing abnormal conditions;
The flow scheduling module comprises:
the task scheduling and distributing module is used for providing task scheduling and distributing functions so as to determine that the corresponding robot executes the corresponding automatic test task, and particularly comprises the steps of dynamically distributing according to the priority, the availability and the environment of the robot;
The robot management module is used for providing management functions of the robot, and specifically comprises registering, configuring and monitoring the state of the robot;
The abnormality processing module is used for providing an abnormality processing function, monitoring and processing abnormality conditions in the execution process of the automatic test, and specifically comprises error processing, automatic retry, alarm and notification so as to ensure stable operation of the flow;
the log and report module is used for providing log record and report functions to track the execution and performance of the robot, and particularly comprises recording the execution history, error log, execution time statistics and business report of the automatic test task;
the security and authority management module is used for having security and authority management functions so as to protect the security of the robot flow and sensitive data, and specifically comprises access control, encryption transmission, identity verification and authorization;
the monitoring and performance optimizing module is used for providing monitoring and performance optimizing functions to ensure the efficient execution of the robot flow, and specifically comprises monitoring the resource utilization rate and analyzing the performance bottleneck
The flow execution module is used for executing the automatic robot flow developed in the flow design module, receiving the execution task issued by the flow scheduling module, performing data interaction with the flow scheduling module and reporting the execution process and the result to the flow scheduling module;
the flow execution module comprises:
The issuing task receiving module is used for establishing network connection with the flow scheduling module and realizing the task receiving by using an API interface;
the automatic UI test flow operation module is used for enabling the robot to start operating the automatic flow at a designated time according to the received task;
The running process recording module is used for recording key events and operations in the automatic UI test execution process by the robot, and synchronously displaying the key events and operations in the page of the flow scheduling module by generating a log file and sending a real-time log message;
and the operation result uploading module is used for uploading the execution result to the flow scheduling module by the RPA automatic UI testing robot after the execution of the automatic UI testing flow is completed.
2. The system of claim 1, wherein the automated UI test procedure execution module executes an automated procedure comprising simulating user interface interactions, executing user software tests, web page opening, mouse clicking, and window operations.
3. The RPA robot-based UI automation test system of claim 1, wherein the critical events and operations in the run-time logging module include task start time, execution steps, execution time, errors and anomalies.
4. The UI automation test system based on RPA robot of claim 1, wherein the execution result includes an execution log, an execution video, and an execution result file in the execution result uploading module.
5. The UI automation test method based on the RPA robot is applied to the UI automation test system based on the RPA robot as claimed in any one of claims 1 to 4, and is characterized in that the UI automation test method based on the RPA robot comprises the following steps:
s1, designing a UI automation test case set; the test case needs to determine a test object, a test range and a UI page function to be tested; the UI page functions comprise various components, interactions and flows of a user interface;
s2, creating a new flow in the flow design module; the steps in the new flow are specifically designed as follows:
According to the test cases, each step is converted into components and operations in the RPA robot flow;
adding logic control in the RPA flow according to the flow of the test case;
adding an output log component at a proper position in the RPA flow, and printing relevant variable values and debugging information during running;
Adding a corresponding verification step in the RPA flow according to the expected result of the test case;
After the design and writing of the new flow are completed, testing and debugging the new flow by using a debugging function provided by the RPA designer;
after the debugging and testing of the new flow are completed, the new flow is saved and version management is carried out;
S3, in the flow execution module, according to an operating system to be tested, the test account is connected and logged in, so that the robot account in a scene to be tested is ensured to be successfully logged in and to be in an online state;
S4, issuing the new flow which is debugged in the step S2 to a flow scheduling module of the RPA robot, and configuring a scheduling task;
s5, the RPA robot operates the flow on the appointed time and the appointed robot account through the flow issued by the flow scheduling module and the set operation strategy, and monitors and analyzes the operation condition through the modes of screen recording, video playback and log recording.
CN202410594140.XA 2024-05-14 2024-05-14 UI (user interface) automatic test system and method based on RPA (remote procedure alliance) robot Active CN118227506B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202410594140.XA CN118227506B (en) 2024-05-14 2024-05-14 UI (user interface) automatic test system and method based on RPA (remote procedure alliance) robot

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202410594140.XA CN118227506B (en) 2024-05-14 2024-05-14 UI (user interface) automatic test system and method based on RPA (remote procedure alliance) robot

Publications (2)

Publication Number Publication Date
CN118227506A CN118227506A (en) 2024-06-21
CN118227506B true CN118227506B (en) 2024-08-02

Family

ID=91501063

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202410594140.XA Active CN118227506B (en) 2024-05-14 2024-05-14 UI (user interface) automatic test system and method based on RPA (remote procedure alliance) robot

Country Status (1)

Country Link
CN (1) CN118227506B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN119718932A (en) * 2024-12-11 2025-03-28 中国人民解放军军事科学院国防科技创新研究院 Modularized software testing method and system based on RPA and large model

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110928774A (en) * 2019-11-07 2020-03-27 杭州顺网科技股份有限公司 Automatic test system based on node formula
CN114138639A (en) * 2021-11-24 2022-03-04 Tcl华星光电技术有限公司 Robotic process automation management system and method

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11334471B1 (en) * 2020-12-02 2022-05-17 UiPath Inc. Mocking robotic process automation (RPA) activities for workflow testing
US11940905B2 (en) * 2021-09-15 2024-03-26 UiPath, Inc. System and computer-implemented method for testing an application using an automation bot

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110928774A (en) * 2019-11-07 2020-03-27 杭州顺网科技股份有限公司 Automatic test system based on node formula
CN114138639A (en) * 2021-11-24 2022-03-04 Tcl华星光电技术有限公司 Robotic process automation management system and method

Also Published As

Publication number Publication date
CN118227506A (en) 2024-06-21

Similar Documents

Publication Publication Date Title
WO2020140820A1 (en) Software testing method, system, apparatus, device, medium, and computer program product
CN103150249B (en) A kind of method and system of automatic test
US7895565B1 (en) Integrated system and method for validating the functionality and performance of software applications
US9846638B2 (en) Exposing method related data calls during testing in an event driven, multichannel architecture
Hammoudi et al. Why do record/replay tests of web applications break?
US10678666B1 (en) Method and system for implementing automated test and retest procedures in a virtual test environment
US8731896B2 (en) Virtual testbed for system verification test
US20140129173A1 (en) Application Component Testing
CN115658529A (en) Automatic testing method for user page and related equipment
CN118227506B (en) UI (user interface) automatic test system and method based on RPA (remote procedure alliance) robot
CN111444109B (en) Mobile terminal UI automatic test method and system
CN119829437A (en) Web automatic testing method and system based on parameterized input
Salam et al. Advanced framework for automated testing of mobile applications
CN115129587A (en) Equipment automatic joint debugging test method and system
CN112035356B (en) Automatic testing method and system for web application compatibility
Coppola et al. Translation from visual to layout-based android test cases: A proof of concept
CN120631769A (en) Automatic testing method, device and terminal based on front-end UI
Nieminen et al. Adaptable design for root cause analysis of a model-based software testing process
CN109669868A (en) The method and system of software test
US20250037607A1 (en) System and method for creating a training script on a virtual laboratory
CN116643996A (en) Automatic testing system and method based on customizable parameters of Monkey
Kettunen Improvement of Test Automation Process
Salari Enabling Test Automation for Industrial PLC Programs
CN117909212A (en) Automatic interface testing method based on track signal operation and maintenance system
CN119718932A (en) Modularized software testing method and system based on RPA and large model

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant