Running and reading results
Lesson lab: Syntax rules
This lesson continues in the same lab as the lesson before it. If you don’t have it yet, download it here.
Download ch02-first-suite--syntax-rules.zip
Or fetch and unpack it from a terminal in VS Code:
curl -fsSLO https://manykarim.github.io/robotframework-essentials-web/labs/ch02-first-suite--syntax-rules.zip && unzip -q ch02-first-suite--syntax-rules.zip && rm ch02-first-suite--syntax-rules.zipInvoke-WebRequest https://manykarim.github.io/robotframework-essentials-web/labs/ch02-first-suite--syntax-rules.zip -OutFile ch02-first-suite--syntax-rules.zip; Expand-Archive ch02-first-suite--syntax-rules.zip -DestinationPath .; Remove-Item ch02-first-suite--syntax-rules.zipOpen the folder in VS Code with code rfe-ch02-first-suite--syntax-rules (or File → Open Folder…) and accept the recommended RobotCode and Python extensions. Then set it up:
uv syncpython3 -m venv .venvsource .venv/bin/activatepip install -r requirements.txtpython -m venv .venv.venv\Scripts\Activate.ps1pip install -r requirements.txtKeep the environment active in every terminal where you run lesson commands.
poetry install --no-rootPython 3.13 or newer is required; uv installs it when it is missing.
Open in browserNo setup? Try the lab right here: its files, an editor and a terminal, running in your browser.
What's inside
Directoryrfe-ch02-first-suite--syntax-rules/
Directory.vscode/
- extensions.json
Directorychecks/
- first_suite.robot
- .gitignore
- .python-version
- LAB.md
- pyproject.toml
- README.md
- requirements.txt
- uv.lock
Every run produces three artifacts:
- output.xml — the machine-readable source of truth.
- log.html — the detailed log: every test, keyword, argument, and message.
- report.html — the high-level summary: pass/fail counts and timings.
The console gives you the quick verdict per test; the log tells you why. When
a test fails, the log is where you look first. Use --outputdir to keep these
files in one place instead of your project root.
Task 1 — Run the suite into an output directory
Section titled “Task 1 — Run the suite into an output directory”Run your suite and send the artifacts to results/:
uv run robot --outputdir results checksrobot --outputdir results checkspoetry run robot --outputdir results checksYou’ll see the run report each test and tally the result:
Robot Framework writes results/output.xml, results/log.html, and
results/report.html.
Done when
the run produced results/log.html and results/report.html.
Task 2 — Read log.html and report.html
Section titled “Task 2 — Read log.html and report.html”Open results/report.html for the summary, then results/log.html and expand
the test to see each keyword and its message. This is the habit that makes
failures quick to diagnose later.
Done when
nothing to run — continue once you have opened both files.
Check your understanding
Quick recall. Your first answer stays in this browser; the quiz never blocks your progress.
Which artifact shows the detailed, step-by-step execution?
log.html is the detailed log; report.html is the high-level summary; output.xml is the machine-readable source.
Show the answer
Answer: log.html — log.html is the detailed log; report.html is the high-level summary; output.xml is the machine-readable source.
What does the console PASS/FAIL line tell you that the log adds to?
The console gives quick per-test verdicts; log.html expands each into keywords, arguments, and messages.
Show the answer
Answer: The verdict per test; the log adds every step and message — The console gives quick per-test verdicts; log.html expands each into keywords, arguments, and messages.
Key terms
- --outputdircommand
robot --outputdir results checkswrites output.xml, log.html, and report.html into results/.- log.html vs report.htmlconcept
- log.html = detailed steps; report.html = summary/verdict overview.