summaryrefslogtreecommitdiff
path: root/saga.yarn
blob: 3e6034099848d23eb521c95789d3b0c422afe340 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
---
title: Saga — acceptance testing
author:
- Lars Wirzenius
- Daniel Silverstone
version: WIP
keywords:
- automated acceptance testing
- scenario testing
- gherkin
- cucumber
abstract: |
  Saga is a tool that supports acceptance testing in two ways: it is a
  way to implement and run automated acceptance tests, and also
  presents the acceptance test suite to non-expert readers as a
  human-readable text document.

  This document explains Saga and its input language.
...

# Introduction

Saga is a tool for acceptance testing of software. This means it helps
software developers and teams to make sure their software fulfils the
acceptance criterita for the software. Such criteria may come from
users, the developers, their employers, or other elsewhere.

Saga is specifically mean for automated acceptance testing. It takes a
two-pronged approach, where it lets developers implement automated
tests for all the acceptance criteria they have, and runs the tests.
On the other hand, Saga also produces a PDF file, which documents the
automated tests for non-technical stakeholders.

More concretely, Saga helps developers implement and document their
automated acceptance tests in a way that, at the same time, helps the
developers automatically test their software, and write documention
for the tests in way that doesn't require programming knowledge to
understand.

Saga is meant to be a tool for developers, who use it to produce a
document, which is meant to facilitate communication between various
shareholders of the software being developed.

Saga's overall working principle is that the tests are implemented and
documented in a number of source files, which Saga reads to execute
tests, and to produce a PDF document for non-developer consumption.

# Saga architecture

* What is the overall Saga architecture?

# Saga input language

* What is the overall approach to the Saga input language?
*