Launching the iOS Simulator from Terminal: A Step-by-Step Guide

Launching the iOS Simulator from Terminal: A Step-by-Step Guide

28 February 2025 Stephan Petzl Leave a comment Xcode

If you’re developing iOS applications, you might find it useful to launch the iOS Simulator directly from the Terminal. This can be especially handy for automating workflows or integrating with other tools. Here’s a concise guide to help you achieve just that.

Basic Command to Launch the Simulator

The simplest way to launch the iOS Simulator is by using the following command in your Terminal:

open -a Simulator.app

This command opens the Simulator application, allowing you to manually select and run your desired device.

Advanced Device Management

For more control over the devices in the Simulator, follow these steps:

  1. List available devices using:
    xcrun simctl list

    This command provides a list of all available simulators along with their UDIDs (Unique Device Identifiers).

  2. Choose a device and boot it with the command:
    xcrun simctl boot 

    Replace <YOUR-DEVICE-ID> with the UDID of your chosen device.

  3. To install and launch your application, use:
    xcrun simctl install  
    xcrun simctl launch  

    Here, replace <PATH-TO-APPLICATION-BUNDLE> and <BUNDLE-ID-OF-APP-BUNDLE> with the respective paths and bundle identifiers of your app.

Latest Techniques for Efficient Launching

For a streamlined approach, you can use the following command to directly open a specific simulator:

open -a Simulator --args -CurrentDeviceUDID 

This command will open the Simulator with the specified device already selected.

Enhancing Your Automation Workflow

For developers looking to integrate these commands into a larger automated testing framework, consider using a no-code test automation tool like Repeato. Repeato offers an intuitive platform for creating, running, and maintaining automated tests across iOS, Android, and web applications.

Repeato’s test recorder simplifies the process of recording tests, and its support for command line scripts and JavaScript code makes it easy to automate complex tasks. Moreover, by saving tests and workspace data in text and JSON formats, Repeato ensures seamless integration with version control systems.

For more information on how Repeato can enhance your testing workflow, visit our documentation or download page to get started.

Like this article? there’s more where that came from!