You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+15-37Lines changed: 15 additions & 37 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,62 +4,40 @@ Tavor ([Sindarin](https://en.wikipedia.org/wiki/Sindarin) for woodpecker) is a f
4
4
5
5
### <aname="quick-example"></a>A quick example
6
6
7
-
Imagine that you want to test a vending machine which ejects a product after receiving 100 credits. It is possible to input 25 and 50 credit coins into the machine. After receiving enough credits the machine ejects a product and resets the credit counter to zero. To simplify the example the machine does not handle credit overflows. A representation of the states and actions of the machine could look like this:
7
+
We want to test a service which processes an XML structure. The structure can contain groups and items. A group contains other groups or items. An Item consists of an attribute `name` with an alphanumeric value. The item's value contains a number. This structure sounds simple but allows an enormous variety of possible outcomes. It is therefore hard to test since a tester has to think about every important possibility if the generation of the test data is done manually. Doing this manually is cumbersome and error-prone. Tavor can be used to automate the generation.
8
8
9
-

10
-
11
-
This state machine can be defined using the following [Tavor format](#format):
9
+
The described structure can be defined using the following [Tavor format](#format):
Generating data like this is just one example of the capabilities of Tavor. Please have a look at [the complete example](#complete-example) with a complete overview over the basic features or keep reading to find out more about the background and capabilities of Tavor.
@@ -218,7 +196,7 @@ The complete example has its own [page which can be found here](/doc/complete-ex
218
196
219
197
## <aname="precompiled"></a>Where are the precompiled binaries?
220
198
221
-
You can find all precompiled binaries on the [release page](https://github.com/zimmski/tavor/releases). Currently only 32 and 64 bit Linux binaries are provided. Other architectures are currently not supported, but might work. Please have a look at the [feature request section](#feature-request) if you need them to work or you want more binaries for different architectures.
199
+
You can find all precompiled binaries on the [release page](https://github.com/zimmski/tavor/releases). Currently only 32 and 64 bit Linux binaries are provided. Other architectures are currently not supported, but might work. Please have a look at the [feature request section](#feature-request) if you need them to work or if you want more binaries for different architectures.
Copy file name to clipboardExpand all lines: doc/complete-example.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,7 +2,7 @@
2
2
3
3
This example provides a complete overview of Tavor. It does not utilize every single feature but every component which should give you an idea on how Tavor can be used in your own projects. The example tests an implementation of the following state machine.
4
4
5
-

5
+

6
6
7
7
The example uses the *Tavor format* to define this state machine and the *Tavor binary* to generate key-driven test files. An *executor* translates keys of a file into actions for the implementation under test. After successfully testing the original implementation, some bugs will be introduced to show the failure of some tests as well as automatically delta-debugging the failed key-driven test files.
0 commit comments