Manual Overview
Testspace extends automated test results with manual testing — for exploratory testing, checklists, and any verification a human still has to perform by hand. Manual tests are written as specs: Markdown files with test cases and steps, enhanced with the Liquid templating language for reusable, data-driven content. Specs run through the same sessions, results, and metrics pipeline as your automated tests.
A Testspace project can be used for managing automated test results, executing manual tests, and conducting exploratory testing — all in the same space.
Two ways to author specs
Every Testspace project is either Standalone or Connected, and that choice determines where specs live and how you edit them.
| Standalone (recommended) | Connected | |
|---|---|---|
| Spec storage | Testspace's database | A Git repository (GitHub, GitLab, Bitbucket) |
| Editing | In-app editor, with a live Preview | Edited locally, committed, pushed |
| Setup | Check "Enable Manual Testing" on a space | A .testspace.yml file in the repo |
Standalone is the simpler starting point for most teams — write a spec, preview exactly what a tester will see, and run it, without touching a repository. Connected is for teams that want manual specs to live alongside the code under test, versioned and reviewed the same way as everything else in the repo — spec changes go through the same commit/PR workflow as code. Both are fully supported and share the same spec format, execution model, and results.
Want to see this in action? Browse a live Standalone Manual Testing demo → — real specs with version history, includes, variables, and presentational tags, executed through actual Test Sessions.
See Creating & Editing Specs for how authoring works on each path, and Spaces for how each gets set up.
Anatomy of a spec
A spec is Markdown, with an <H1> for the spec name and an <H2> for each test case:
---
testspace:
title: Turn off power
---
# {{ spec.title }}
This test verifies shutdown stages for each device.
## Idle case
- Confirm the device enters idle within 27 seconds
## Shutdown case
- Confirm the device powers off within 14 seconds
That {{ spec.title }} is Liquid — specs can use variables, loops, conditionals, and reusable includes, so one spec can cover a whole matrix of cases without repeating itself. See Writing a Spec for the full syntax.
Also included
- GitHub issues integration
- Exploratory testing built in
- Reusable content via includes and Liquid
- Automated fixtures — a hybrid of automation and manual verification via GitHub Actions or AWS Lambda
- For Connected projects, test planning that leverages a branching workflow, including pull requests