# Mock Testing

> Mock testing in UiPath Studio is a built-in feature that enables you to replace (“mock”) selected activities or even whole invoked workflows with lightweight stand-ins (mock files of your workflows) during a test run. The goal is to isolate a specific part of the automation you want to verify while shielding the test from side effects such as database writes, API calls, or UI updates.

## Overview

Mock testing in UiPath Studio is a built-in feature that enables you to replace (“mock”) selected activities or even whole invoked workflows with lightweight stand-ins (mock files of your workflows) during a test run. The goal is to isolate a specific part of the automation you want to verify while shielding the test from side effects such as database writes, API calls, or UI updates.

![docs image](https://dev-assets.cms.uipath.com/assets/images/studio/studio-docs-image-168973-406e8ba6.webp)

## Prerequisites

* Create a **Process** project type.
  :::note
  You can't use the mock feature in **Test Automation** projects.
  :::
* Install the [Testing Activities Package](https://docs.uipath.com/activities/docs/testing)

## Working With Mocks

You can create a mock file of your workflow by selecting **Mock workflow under test** in the [Create Test Case window](https://docs.uipath.com/studio/standalone/2025.10/user-guide/rpa-testing). This creates a copy of your workflow with the name `workflowName_mock` and stores it in **Project** &gt; **Mocks**. This folder mirrors the source workflow file tree structure. For example, if your workflow is stored in the **Project** tab as `production\Tests\testFolder01\testCase07.xaml`, the correspondent mock file is stored as `production\Mocks\Tests\testFolder01\testCase07_mock.xaml` .

In a practical scenario, you have an application that writes directly in a database but you want it to write on the screen. You can use **Surround with mock** to test this specific function, without having to make any changes to your main test case. As a general note, consider using mocks for tests that have permanent effects in production or require special resources.

## Mock Testing Conditions

* Within mock files, you can only edit the mocked activities.
* You can have multiple mock files for a workflow.
* Nested mocks are unavailable as you cannot use `Surround with Mock` on existing mock activities.
* The `mock.json` file contains configuration settings for mock files.
* In a Given-When-Then test case structure, **Surround with mock** is only available for activities within When.
* Changes made in the source workflow file are applied to the mock file when you **Save** your project. Alternatively, you can manually sync your mock files. For more information, see **Mock Testing Actions**.
* Synchronization does not work if the mock file is open with changes to be saved.
* Deleting a workflow associated with a mock file prompts you to choose whether you want to remove both files.
* The activity coverage indicator only takes into account the activities included in the source workflow, thus, not calculating any coverage of your mock activities.

## Mock Testing Actions

The following table lists the actions that you can take for your mock testing.

 <colgroup>
  <col/>
  <col/>
  <col/>
 </colgroup>
 
  
     Action  
     Description  
     Procedure  
  
 
 
  
    Create mock workflow 
     Create a copy of your main workflow for mock testing.  
   
      
         Open Studio and navigate to your project. 
         Right-click on your project and select Create Test Case . 
         Configure your test case and select Mock workflow under test . 
          If you have an existing mock file that you want to use, you can select it from the Mock dropdown.  A copy of your workflow is created in Projects &gt; Mocks .  
      

  
  
    Remove mock activity 
     Remove the mock that surrounds your activity  
   
      
         Open Studio and navigate to your project. 
         Go to Project &gt; Mocks and open a mock. 
         Right click on a mock activity and select Remove mock activity . 
      

  
  
    Surround activity with mock 
     Insert a mock activity.  
   
      
         Open Studio and navigate to your project. 
         Go to Project &gt; Mocks and open a mock. 
         Right click on an activity and select Surround with Mock from the dropdown. 
      

  
  
    Synchronize mock 
     Sync your mock files or folders with the source workflow file or folders, respectively.  
   
      
         Open Studio and navigate to your project. 
         Go to Project &gt; Mocks . 
         Right click on a file or folder and select Synchronize Mock from the dropdown.
