Docs

Installation Guides

This page covers every tool and dependency required for RobusTest Connect and device testing. Work through the sections that apply to your operating system and the device platforms you plan to test — you do not need all of them.

  • Testing Android devices? You need Java, the Android SDK, Python, Node.js and Appium.
  • Testing iOS devices? You need everything above plus Xcode, Homebrew and the iOS device tools. iOS testing requires a Mac.
  • On Windows? Several steps below must run from an elevated PowerShell session — start with that section.

Throughout this guide, ~/robustest/ refers to the RobusTest working directory on the machine running RobusTest Connect.


Elevated PowerShell

(Windows only)

An elevated PowerShell session (Run as Administrator) is required for several of the installation steps below.

  1. Search for PowerShell in the Windows search box.
  2. Right-click on the Windows PowerShell icon.
  3. Select Run as administrator.
  4. Navigate to the required folder, for example:
    ~/robustest/tools/android/cmdline-tools/latest/bin
    

Java

RobusTest requires the Java JDK (not JRE).

1. Download the Java JDK for your operating system from: https://www.oracle.com/java/technologies/downloads/

2. Run the installer and follow the on-screen instructions.

3. (Windows only) Set the JAVA_HOME environment variable:

  1. Open Command Prompt as Administrator (search for Command Prompt, right-click, select Run as Administrator).
  2. Run the following command, replacing the path with your actual JDK installation path:
setx -m JAVA_HOME "C:\Program Files\Java\jdk-14.0.2"

You should see: SUCCESS: Specified value was saved.


Android SDK

The Android SDK provides ADB (Android Debug Bridge), which RobusTest uses to communicate with Android devices.

1. Go to https://developer.android.com/studio/#downloads and scroll down to the Command Line Tools section.

2. Download the zip file for your operating system (Mac, Linux, or Windows).

3. Place the zip file in:

~/robustest/tools/android/

4. Unzip the file, then rename the extracted folder to cmdline-tools.

5. Inside cmdline-tools, rename the folder named tools to latest.

6. Open a terminal:

  • Mac / Linux: Open Terminal and navigate to ~/robustest/tools/android/cmdline-tools/latest/bin
  • Windows: Open an elevated PowerShell session

7. Install the Android SDK:

Mac / Linux:

./sdkmanager --update
./sdkmanager --list
# From the list, identify the latest build-tools version (e.g. "build-tools;27.0.3") and run:
./sdkmanager "build-tools;27.0.3"
./sdkmanager "platform-tools"

Windows:

.\sdkmanager --update
.\sdkmanager --list
# From the list, identify the latest build-tools version (e.g. "build-tools;30.0.2") and run:
.\sdkmanager "build-tools;30.0.2"
.\sdkmanager "platform-tools"

8. (Windows only) Set the ANDROID_HOME and ANDROID_SDK_ROOT environment variables:

  1. In the Windows search bar, search for env and click Edit the system environment variables.
  2. Click Environment Variables.
  3. Under User Variables, click New and add:
    • Variable name: ANDROID_HOME
    • Variable value: C:\Users\<username>\robustest\tools\android
  4. Click New again and add:
    • Variable name: ANDROID_SDK_ROOT
    • Variable value: C:\Users\<username>\robustest\tools\android
  5. Select the PATH variable, click Edit, then New, and add:
    • %ANDROID_HOME%
    • %ANDROID_HOME%\platform-tools
  6. Click OK on all windows.
  7. Close and reopen your elevated PowerShell session.

Python

Mac and Linux

Python comes pre-installed on Mac and Linux. No installation required.

Windows

1. Download the latest Python installer from https://python.org/downloads/.

2. Run the installer. On the first screen, make sure you check Add Python to PATH before proceeding.

3. Click Install Now.

4. After installation completes, click Disable path length limit if prompted.

5. Close your PowerShell session and open a new elevated PowerShell session.

6. Verify the installation:

python --version

If the Python version number is displayed, the installation was successful.


Python Virtual Environment

Windows

  1. Open an elevated PowerShell session and navigate to the robustest folder.

  2. Install pip (if not already available):

    python -m pip install --upgrade pip
    

    If you encounter permission errors:

    pip install --user --upgrade pip
    
  3. Install virtualenv and create the virtual environment:

    pip install --user virtualenv
    py -m virtualenv virtualenv
    
  4. Activate the virtual environment:

    .\virtualenv\Scripts\activate
    

    If you see an error about running scripts, run the following first:

    Set-ExecutionPolicy RemoteSigned
    

    Type A and press Enter, then re-run the activate command.

  5. Install dependencies:

    pip install -r requirements.txt
    

    The requirements.txt file is located in the robustest folder.

  6. Deactivate when done:

    deactivate
    
  7. Set the VIRT_ENV environment variable:

    1. Search for env in the Windows search bar → Edit the system environment variables.
    2. Click Environment VariablesNew under User Variables.
    3. Variable name: VIRT_ENV
    4. Variable value: C:\Users\<username>\robustest\virtualenv
  8. Inside ~/robustest/virtualenv, rename the Scripts folder to bin.

Mac and Linux

  1. Open Terminal and navigate to the robustest folder.

  2. Install pip and create the virtual environment:

    python -m pip install --upgrade pip
    pip install virtualenv
    virtualenv virtualenv
    
  3. Activate the virtual environment:

    source ~/robustest/virtualenv/bin/activate
    
  4. Install dependencies:

    pip install -r requirements.txt
    
  5. Deactivate when done:

    deactivate
    

Node.js and Appium

Mac and Linux

  1. Download the Node.js .tar.gz file for your OS from https://nodejs.org/en/download/.

  2. Copy the downloaded file to the ~/robustest/tools/ folder.

  3. Extract the archive:

    tar -xzf <filename>.tar.gz
    
  4. Delete the tar file, then rename the extracted folder to node.

  5. Add Node.js to your PATH:

    PATH=$PATH:~/robustest/tools/node/bin
    
  6. Install Appium:

    npm install -g appium
    

    If Appium is already installed, uninstall it first:

    npm uninstall -g appium
    npm install -g appium
    
  7. In the setEnvironment.sh file, in the node section, ensure that the path to the Node.js folder is correct.

Windows

  1. Download the Node.js Windows installer (.msi) from https://nodejs.org/en/download/.

  2. Run the installer. When prompted for the destination folder, change it to:

    C:\Users\<username>\robustest\tools\node
    

    Create the node folder inside robustest\tools\ if it does not exist.

  3. Add Node.js to the PATH environment variable:

    1. Search for env in the Windows search bar → Edit the system environment variables.
    2. Click Environment Variables.
    3. Under User Variables, select the PATH variable and click Edit.
    4. Click New and enter:
      C:\Users\<username>\robustest\tools\node
      
    5. Click OK on all windows, then restart your computer.
  4. Open an elevated PowerShell session and install Appium:

    npm install -g appium
    

Xcode

(Mac only — required for iOS testing)

  1. Install Xcode from the Apple App Store.

  2. Open Xcode once after installation to trigger Command Line Tools setup.

  3. If Command Line Tools were not installed automatically, run the following in Terminal:

    xcode-select --install
    

    Confirm installation in the pop-up dialog.

  4. Sign in to Xcode with your Apple ID:

    1. Open Xcode.
    2. Go to Xcode → Settings → Accounts.
    3. Click the + icon and sign in with your Apple ID.
    4. Click Download Manual Profiles.
    5. Click Manage Certificates.
    6. Click the dropdown at the bottom-left of the window and select Apple Development.
    7. A new iOS Development Certificate will appear in the list. Click Done.
    8. Go to Xcode → Settings → Locations.
    9. In the Command Line Tools dropdown, select your installed version of Xcode.

Homebrew and iOS Device Tools

(Mac only — required for iOS testing)

Homebrew is used to install the iOS device communication tools RobusTest needs.

  1. Install Homebrew:

    /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
    
  2. Install required modules. Run each command after the previous one completes successfully:

    brew update
    brew uninstall --ignore-dependencies libimobiledevice
    brew uninstall --ignore-dependencies usbmuxd
    brew uninstall --ignore-dependencies ideviceinstaller
    brew install --HEAD usbmuxd
    brew unlink usbmuxd
    brew link usbmuxd
    brew install --HEAD libimobiledevice
    brew link --overwrite libimobiledevice
    brew install ideviceinstaller
    brew link --overwrite ideviceinstaller
    brew install mobiledevice
    brew install ios-deploy
    brew install ios-webkit-debug-proxy
    brew install libzip
    export LDFLAGS="-L/usr/local/opt/openssl/lib"
    export CPPFLAGS="-I/usr/local/opt/openssl/include"
    export PATH=/usr/local/opt/openssl/bin:$PATH
    export LD_LIBRARY_PATH=/usr/local/opt/openssl/lib:$LD_LIBRARY_PATH
    export CPATH=/usr/local/opt/openssl/include:$CPATH
    export LIBRARY_PATH=/usr/local/opt/openssl/lib:$LIBRARY_PATH
    export PKG_CONFIG_PATH=/usr/local/opt/openssl/lib/pkgconfig
    brew install carthage
    
  3. Install iOS real device testing dependencies:

    cd ~/robustest/tools/node/lib/node_modules/appium/node_modules/appium-webdriveragent
    ./Scripts/bootstrap.sh
    

idevicelocation

(Mac only — required for iOS location simulation)

idevicelocation is required for location simulation on iOS devices in RobusTest Connect.

  1. Download the complete project from https://github.com/JonGabilondoAngulo/idevicelocation.

    A ZIP file with all folders is downloaded.

  2. Unzip the downloaded file.

  3. Run the following commands in order:

    ./autogen.sh
    make
    sudo make install
    
  4. If you encounter path-related issues while running ./autogen.sh, first run the export commands from the Homebrew and iOS Device Tools section above and then re-run ./autogen.sh.

  5. Copy the idevicelocation binary from the src folder inside the unzipped directory and move it to:

    ~/robustest/tools/idevicelocation
    

HTTPS for Your RobusTest Server

Unlike the sections above, which set up the machine running RobusTest Connect, this one concerns the RobusTest server itself.

By default, RobusTest is accessible over HTTP. To enable HTTPS access, provide the following files for the FQDN on which RobusTest is hosted:

  1. Certificate file
  2. Private Key file

For example, if RobusTest is accessed at devicelab.acme.com, provide the certificate and private key for that domain to the RobusTest team to configure HTTPS.