IP Library › Granted Patent US 12,475,024
Granted Patent B2
US 12,475,024 · App. 16/854,733 · Granted Nov 18, 2025

Test automation for robotic process automation

Inventors: Thomas Stocker (Gaishorn, AT); Gerd Weishaar (Vienna, AT)
Assignee: UiPath, Inc.
G06F11/3684G06F11/3688G06F11/3692G06F11/3696
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,475,024
App. No.
16/854,733
Granted
Nov 18, 2025
Kind
B2
Abstract

Test cases for existing workflows (or workflows under test) may be created and executed. A test case may be created for a workflow in production or one or more parts of the workflow, and the created test case for the workflow, or the one or more parts of the workflow, may be executed to identify environmental and/or automation issues for the workflow. A failed workflow test may be reported when the environmental and/or automation issues are identified.

Claims (50)

1 . A computer-implemented method, comprising:

creating, by at least one processor, a test case for one or more parts of a workflow under test, wherein the one or more parts of the workflow under test is a workflow in production or a workflow under development, wherein the workflow under test performs a series of steps on a plurality of applications, and the test case uses a ‘given-when-then’ template; and

invoking, using a ‘when’ module by the test case, the one or more parts of the workflow under test, wherein the invoking of the one or more parts of the workflow under test comprising:

referencing, by the test case, the one or more parts of the workflow under test when executing the workflow under test avoids the test case from holding a copy of the one or more parts of the workflow under test;

executing, using the ‘when’ module, the test case for the one or more parts of the workflow under test, to identify environmental and/or automation issues with the one or more parts of the workflow under test; and

reporting a failed workflow test when the environmental and/or automation issues are identified.

2 . The computer-implemented method of claim 1 , further comprising:

opening the one or more parts of the workflow under test within an application; and

selecting the one or more parts of the workflow under test to determine a scope of the test case.

3 . The computer-implemented method of claim 1 , wherein the creating of the test case is based on the ‘given-when-then’ template,

the ‘given-when-then’ template invoking the one or more parts of the workflow under test, executing an application with one or more required pre-conditions, and holding one or more types of assertions, and

the ‘given-when-then’ template comprises the ‘when’ module, a ‘given’ module, and a ‘then’ module.

4 . The computer-implemented method of claim 3 , wherein the ‘when’ module invoking the one or more parts of the workflow under test and placing the one or more parts of the workflow under test as a reference, allowing for the test case to reference the one or more parts of the workflow under test.

5 . The computer-implemented method of claim 3 , wherein the ‘given’ module adding one or more required preconditions for the ‘when’ module to successfully execute the one or more parts of the workflow under test,

the one or more preconditions comprise one or more input parameters and one or more applications used by the one or more parts of the workflow under test.

6 . The computer-implemented method of claim 5 , wherein the ‘given’ module providing a possibility to mock steps of the one or more parts of the workflow under test, ensuring that the one or more parts of the workflow under test is executed without errors,

the mocking of the steps includes simulating a series of steps within the one or more parts of the workflow under test, and

the one or more parts of the workflow under test is a test object for which test cases are created for and are invoked by the ‘when’ module.

7 . The computer-implemented method of claim 5 , wherein the ‘given’ module automatically identifying one or more variables and/or one or more parameters required for the one or more parts of the workflow under test to be executed.

8 . The computer-implemented method of claim 5 , wherein the ‘given’ module automatically creating a variable with same name as the one or more parts of the workflow under test when the test case is created for the one or more parts of the workflow under test.

9 . The computer-implemented method of claim 3 , wherein the ‘then’ module verifying the one or more parts of the workflow under test and implementing one or more existing verification activities from a user.

10 . The computer-implemented method of claim 1 , further comprising:

publishing the test case referencing the one or more parts of the workflow under test for which the test case was created; and

grouping the test case with one or more other test cases to create a test set for execution.

11 . A system, comprising:

memory storing computer program instructions; and

at least one processor configured to execute the computer program instructions, the computer program instructions are configured to execute:

creating a test case for one or more parts of a workflow under test, wherein the one or more parts of the workflow under test is a workflow in production or a workflow under development, wherein the workflow under test performs a series of steps on a plurality of applications, and the test case uses a ‘given-when-then’ template; and

invoking, using a ‘when’ module by the test case, the one or more parts of the workflow under test, wherein the invoking of the one or more parts of the workflow under test comprising:

referencing, by the test case, the one or more parts of the workflow under test when executing the workflow under test avoids the test case from holding a copy of the one or more parts of the workflow under test;

executing, using the ‘when’ module, the test case for the one or more parts of the workflow under test, to identify environmental and/or automation issues fer-with the one or more parts of the workflow under test; and

reporting a failed workflow test when the environmental and/or automation issues are identified.

12 . The system of claim 11 , wherein the computer program instructions are further configured to execute:

opening the one or more parts of the workflow under test within an application; and

selecting the one or more parts of the workflow under test to determine a scope of the test case.

13 . The system of claim 11 , wherein the creating of the test case is based on the ‘given’-when-then' template,

the ‘given-when-then’ template being configured to invoke the one or more parts of the workflow under test, execute an application with one or more required pre-conditions, and hold one or more types of assertions, and

the ‘given-when-then’ template comprises the ‘when’ module, a ‘given’ module, and a ‘then’ module.

14 . The system of claim 13 , wherein the ‘when’ module is configured to invoke the one or more parts of the workflow under test and place the one or more parts of the workflow under test as a reference, allowing for the test case to reference the one or more parts of the workflow under test.

15 . The system of claim 13 , wherein the ‘given’ module is configured to add one or more required preconditions for the ‘when’ module to successfully execute the one or more parts of the workflow under test,

the one or more preconditions comprise one or more input parameters and one or more applications used by the one or more parts of the workflow.

16 . The system of claim 15 , wherein the ‘given’ module is configured to provide a possibility to mock steps of the one or more parts of the workflow under test, ensuring that the one or more parts of the workflow under test is executed without errors,

the mocking of the steps includes simulating a series of steps within the one or more parts of the workflow under test,

the one or more parts of the workflow under test is a test object for which test cases are created for and are invoked by the ‘when’ module.

17 . The system of claim 15 , wherein the ‘given’ module is configured to automatically identify one or more variables and/or one or more parameters required for one or more parts of the workflow to be executed.

18 . The system of claim 15 , wherein the ‘given’ module is configured to automatically create a variable with same name as the one or more parts of the workflow under test when the test case is created for the one or more parts of the workflow under test.

19 . The system of claim 13 , wherein the ‘then’ module is configured to verify the one or more parts of the workflow under test and implement one or more existing verification activities from a user.

20 . The system of claim 11 , wherein the computer program instructions are further configured to execute:

publishing the test case referencing the one or more parts of the workflow under test for which the test case was created; and

grouping the test case with one or more other test cases to create a test set for execution.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 21, 2020
From: STOCKER, THOMAS; WEISHAAR, GERD
To: UIPATH, INC.
Reel/Frame 052457/0328 →
Continuity (1)
Related Publication 20210326244A1 · Oct 21, 2021
References Cited (82)
US 8826084B1 · Gauf et al. · 2014 [cited by applicant]
US 9111041B1 · Zhang et al. · 2015 [cited by applicant]
US 10019344B1 · Chheda et al. · 2018 [cited by applicant]
US 10235192B2 · Hall et al. · 2019 [cited by applicant]
US 10248549B1 · Davies · 2019 [cited by applicant]
US 10289524B2 · Kaulgud et al. · 2019 [cited by applicant]
US 10365799B2 · Hosbettu et al. · 2019 [cited by applicant]
US 11106569B1 · Chapagain et al. · 2021 [cited by applicant]
US 20060195817A1 · Moon · 2006 [cited by applicant]
US 20090019271A1 · Kawakami · 2009 [cited by applicant]
US 20090070121A1 · Leonelli et al. · 2009 [cited by applicant]
US 20090125362A1 · Reid · 2009 [cited by examiner]
US 20130297678A1 · Schach et al. · 2013 [cited by applicant]
US 20160004622A1 · Kaulgud · 2016 [cited by examiner]
US 20160055077A1 · Baloch et al. · 2016 [cited by applicant]
US 20160202962A1 · Arif et al. · 2016 [cited by applicant]
US 20160283293A1 · Goel et al. · 2016 [cited by applicant]
US 20170024312A1 · Salame · 2017 [cited by applicant]
US 20170052824A1 · Sharma et al. · 2017 [cited by applicant]
US 20180197123A1 · Parimelazhagan et al. · 2018 [cited by applicant]
US 20180203994A1 · Shukla et al. · 2018 [cited by applicant]
US 20180370029A1 · Hall et al. · 2018 [cited by applicant]
US 20180370033A1 · Geffen et al. · 2018 [cited by applicant]
US 20190052551A1 · Barczynski et al. · 2019 [cited by applicant]
US 20190129827A1 · Ramasamy et al. · 2019 [cited by applicant]
US 20190163616A1 · Govindaraju · 2019 [cited by examiner]
US 20190171513A1 · Parushothaman · 2019 [cited by applicant]
US 20190294531A1 · Avisror et al. · 2019 [cited by applicant]
US 20190303274A1 · Funnell et al. · 2019 [cited by applicant]
US 20200174917A1 · Patel · 2020 [cited by examiner]
US 20200184272A1 · Zhang · 2020 [cited by examiner]
US 20200319995A1 · Mitra · 2020 [cited by applicant]
CN 101933001A · 2010 [cited by applicant]
CN 103502952A · 2014 [cited by applicant]
CN 105930276A · 2016 [cited by applicant]
CN 110515846A · 2019 [cited by applicant]
CN 110795332A · 2020 [cited by applicant]
GB 2524737A · 2015 [cited by applicant]
JP 2010218533A · 2010 [cited by applicant]
JP 2018010681A · 2018 [cited by applicant]
JP 2018189641A · 2018 [cited by applicant]
JP 2019534523A · 2019 [cited by applicant]
KR 101335912B1 · 2013 [cited by applicant]
KR 101826618B1 · 2018 [cited by applicant]
WO 2019148481A1 · 2009 [cited by applicant]
Muhammad Nouman Zafar et al.; Towards a Workflow for Model-Based Testing of Embedded Systems; ACM; pp. 33-40; retrieved on Apr. 25, 2025 (Year: 2021). [cited by examiner]
Puram, Akshita Deora, “What End-to-End Test Automation for Behavior-Driven Development Looks Like”, https://smartbear.com/blog/test-and-monitor/native-test-automation-bdd/, [2019] [cited by applicant]
Test Automation in Production Environment, CloudQA, https://cloudqa.io/test-automation-in-production-environment, [2020]. [cited by applicant]
Gupta, Lokesh, “Test NG—Test Groups, Meta Group, Default Group Examples”, https://howtodoinjava.com/testng-test-groups-meta-group-default-group-examples/, [2016]. [cited by applicant]
CloudQA Test Suite Management Page available at https://doc.cloudqa.io/TestsuiteManagement.html (last accessed Sep. 11, 2020). [cited by applicant]
Andres Jiménez-Ramírez et al., Automated testing in robotic process automation projects, Journal of Software: Evolution and Process, e2259, pp. 1-11, Mar. 17, 2020 [retrieved on Dec. 23, 2020]. [cited by applicant]
International Search Report & Written Opinion, issued Jan. 19, 2021, PCT Application No. PCT/US20/51508. [cited by applicant]
International Search Report & Written Opinion, issued Jan. 20, 2021, PCT Application No. PCT/US20/51496. [cited by applicant]
Cuong V Luu, “Non-Final Office Action”, issued Jun. 11, 2021, U.S. Appl. No. 16/855,563. [cited by applicant]
Chacon Montero Jesus et al: “Towards a Method for Automated Testing in Robotic Process Automation Projects”, 2019 IEEE/ACM 14th International Workshop on Automation of Software Test (AST), IEEE, May 27, 2019 (May 27, 20… [cited by applicant]
European Search Report, issued Jan. 21, 2021, EP Patent Application No. 20200736.5. [cited by applicant]
European Search Report, issued Jan. 22, 2021, EP Patent Application No. 20200826.4. [cited by applicant]
Cuong V Luu, “Final Office Action”, issued Oct. 4, 2021, U.S. Appl. No. 16/855,563. [cited by applicant]
Cuong V Luu, “Non-Final Office Action”, issued Jan. 12, 2022, U.S. Appl. No. 16/855,563. [cited by applicant]
Office Action issued Oct. 28, 2021, KR Patent Application No. 10-2020-7028236. [cited by applicant]
Notice of Allowance, issued Jun. 1, 2022, KR Patent Application No. 10-2020-7028236. [cited by applicant]
Office Action, issued May 10, 2022, KR Patent Application No. 10-2020-7028233. [cited by applicant]
Final Office Action, issued Apr. 12, 2022, KR Patent Application No. 10-2020-7028236. [cited by applicant]
Office Action, issued Feb. 22, 2022, KR Patent Application No. 10-2020-7028233. [cited by applicant]
Cuong V Luu, “Final Office Action”, issued Apr. 4, 2022, U.S. Appl. No. 16/855,563. [cited by applicant]
Cuong V Luu, “Non-Final Office Action”, issued Oct. 12, 2022, U.S. Appl. No. 16/855,563. [cited by applicant]
Notice of Allowance, issued Aug. 5, 2022, KR Patent Application No. 10-2020-7028233. [cited by applicant]
Cuong V Luu, “Final Office Action”, issued Jan. 9, 2023, U.S. Appl. No. 16/855,563. [cited by applicant]
Andreas Bauer et al.; We Tried and Failed: An Experience Report on a Collaborative Workflow for GUI-based Testing; IEEE; 9 pages; retrieved on Jun. 27, 2023 (2023). [cited by applicant]
Cassio Prazeres et al.; Semantic Web Services discovery and composition: paths along workflows; IEEE; pp. 58-65; retrieved on Jul. 27, 2023. (Year: 2009). [cited by applicant]
Chengying Mao et al.; Workflow-based Testing Process Management of Software Project; IEEE; pp. 4950-4953; retrieved on Jun. 27, 2023 (2007). [cited by applicant]
Cuong V Luu, “Notice of Allowance”, issued Aug. 30, 2023, U.S. Appl. No. 16/855,563. [cited by applicant]
Cuong V Luu, “Notice of Allowance”, issued Sep. 7, 2023, U.S. Appl. No. 17/670,061. [cited by applicant]
Parham Porouhan et al.; Workflow Mining: Discovering Process Patterns & Models from MXML Logs; IEEE; pp. 118-125; retrieved on Jul. 27, 2023 (Year: 2023). [cited by applicant]
Cuong V Luu, “Non-Final Office Action”, issued May 1, 2023, U.S. Appl. No. 16/855,563. [cited by applicant]
Notification of Reasons for Refusal, issued Oct. 3, 2024, JP Patent Application No. 2020-553453. [cited by applicant]
Examination Report, issued Dec. 18, 2024, EP Patent Application No. 20200736.5. [cited by applicant]
Notification of Reasons for Refusal, issued Nov. 1, 2024, JP Patent Application No. 2020-553463. [cited by applicant]
Office Action, issued Dec. 3, 2024, EP Patent Application No. 20200826.4. [cited by applicant]
Office Action, issued Nov. 12, 2024, CN Patent Application No. 202080002313.4. [cited by applicant]
Office Action, issued Oct. 12, 2024, CN Patent Application No. 202080002317.2. [cited by applicant]
Notice of Allowance, issued Apr. 16, 2025, JP Patent Application No. 2020-553463. [cited by applicant]