Skip to content

Setup with make

How-to 2 min read Updated 3 November 2026

The Robot Framework template project contains a ready test, examples for every way of using wopee_rf and a Makefile that installs everything. Commander creates a repository from it for every Robot Framework project; clone that repository instead of the public template to start with your project UUID filled in.

make needs a bash shell: on Windows use WSL or Git Bash, or follow Getting started.

Prerequisites

  • Python 3.11 or newer (on macOS python3 is often 3.9), Node.js 22 or newer, make and git
  • A Wopee.io project with test framework Robot Framework and an API key: follow steps 1 and 2 of Getting started

Install

git clone https://github.com/Wopee-io/robotframework-template
cd robotframework-template
make install

make install creates .venv, installs requirements.txt (including wopee_rf with its wopee_sdk dependency), runs rfbrowser init and copies .env.example to .env. rfbrowser init downloads Chromium, Firefox and WebKit, which takes a few minutes.

Configure

Edit .env:

WOPEE_PROJECT_URL=https://www.saucedemo.com
WOPEE_PROJECT_UUID=your-project-uuid
WOPEE_API_KEY=your-api-key
WOPEE_SCREENSHOT_VALIDATION_ENABLED=true
WOPEE_DRIVER_LIBRARY=BrowserLibrary

Paste your API key after WOPEE_API_KEY= and copy WOPEE_PROJECT_UUID from More › Settings › API Keys in Commander. Add WOPEE_API_URL only for an instance other than cmd.wopee.io. WOPEE_PROJECT_URL is the app the template tests open. The make targets set WOPEE_DRIVER_LIBRARY themselves; the value in .env matters only when you run robot directly.

.env.example also lists WOPEE_RUN_NAME and WOPEE_CI_BUILD_ID. Nothing reads them. All supported variables are listed in Configuration and listener › Configuration.

Run

make test

Runs tests/simple.robot with the Browser library: it opens WOPEE_PROJECT_URL, starts a suite named Suite name-<timestamp> and tracks the landing page. The run appears in Commander under Runs with the step Landing page in status new. Approve it, run make test again and the step is ok.

Examples

The test-examples/ folder holds one example per integration. Run them with the template's virtual environment active (source .venv/bin/activate):

Example Command
Browser library, keywords WOPEE_DRIVER_LIBRARY=BrowserLibrary robot -d reports test-examples/browser_standalone.robot
SeleniumLibrary, keywords WOPEE_DRIVER_LIBRARY=SeleniumLibrary robot -d reports test-examples/selenium_standalone.robot
Browser library, listener WOPEE_DRIVER_LIBRARY=BrowserLibrary WOPEE_TRACKED_KEYWORDS="Browser.Click;BuiltIn.Log" robot -d reports --listener 'wopee_rf.Listener:dot_env_path=.env' test-examples/browser_listener.robot
SeleniumLibrary, listener WOPEE_DRIVER_LIBRARY=SeleniumLibrary WOPEE_TRACKED_KEYWORDS="SeleniumLibrary.Click Link;SeleniumLibrary.Click Button;BuiltIn.Log" robot -d reports --listener 'wopee_rf.Listener:dot_env_path=.env' test-examples/selenium_listener.robot
Any image (Track) WOPEE_DRIVER_LIBRARY=NoLibrary robot -d reports test-examples/agnostic_standalone.robot (captures the image with SeleniumLibrary and Chrome)
GraphQL API make test.api

make test.api runs test-examples/api_integration.robot, which calls the Wopee.io API directly. See API_INTEGRATION.md in the template.

Clean up

make clean

Removes reports/ and screenshots/. The runs stay in Commander.