Transforms tests in documentation, and viceversa
Project description
Tests |
|
Downloads |
|
About |
|
Status |
About
Inspired by Concordion, and a little bit by Fitnesse and RobotFramework, LiveDoc is a way to maintain documentation live.
The idea is to use documentation as test, so documentation is tested as well. This way you will be sure it is always updated and you can show beautiful reports to the Product Owners.
Principles
Should be simple, so eval will be used to process the embedded code.
Should be easy to be used, by supporting Markdown to avoid hard HTML.
Should be extensible, by allowing custom fixtures, like Concordion does.
Should be powerful, by providing tools to simplify the work, just like RobotFramework libraries do.
Comparative
Feature |
Concordion |
Fitnesse |
RobotFramework |
LiveDoc |
---|---|---|---|---|
Markdown support |
Yes |
No |
No |
Yes |
Customizable output |
No |
No |
No |
Yes |
Xunit integration |
Yes |
Yes |
Yes |
No |
Xunit results |
Yes |
Yes |
Yes |
Yes |
REST test facilities |
No |
No |
Yes |
Planed |
Tables to write examples |
Yes |
Yes |
Yes |
Yes |
Fixtures language |
Java |
Many |
Python or Java |
Python |
HTML generators integration |
No |
No |
No |
Yes |
Different kind of tables |
No |
Yes |
No |
Planed |
Generates test code |
No |
No |
No |
Planed |
How does it work?
LiveDoc parses the generated HTML, searching some special code. You can generate that code anyway you want.
In order to write Markdown easily, I’ve chosen the Concordion way: by adding links to - with code in the title attribute. Example:
<a href=”-” title=”a = TEXT”>5</a>
This will show the value, 5 as usual HTML text, but will assign the text to the variable a. Now you can operate with it:
<a href=”-” title=”a += TEXT”>5</a>
And check the result:
<a href=”-” title=”a == TEXT”>10</a>
Or just show it (LiveDoc will show anything assigned to OUT variable):
<a href=”-” title=”OUT = a”></a>
And you can add text in between:
By setting the value of <a href=”-” title=”a = TEXT”>5</a> and adding <a href=”-” title=”a += TEXT”>5</a> more, it will return <a href=”-” title=”a == TEXT”>10</a>.
But this is hard to be written and read, so it can be simplified by using Markdown:
By setting the value of [5](- “a = TEXT”) and adding [5](- “a += TEXT”) more, it will return [10](- “a == TEXT)”.
Additionally, it is possible to set the test name just assigning the name to TESTNAME variable, grouping any following comparision as an assert to that test:
If TESTNAME is set to the [test name](- “TESTNAME = TEXT”), then any comparison will be added to that test.
By default, any title (h1, h2, …) is set as the test name.
Remember that to make it even easier, any comparision is an assertion.
Roadmap
0.5.0: advanced fixtures
FAQ
Does LiveDoc support python 2?
No. Python 2 is deprecated and will be retired on 2020, so please, move on to Python 3.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
File details
Details for the file livedoc-0.3.4-py3-none-any.whl
.
File metadata
- Download URL: livedoc-0.3.4-py3-none-any.whl
- Upload date:
- Size: 13.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b60fb2a99827f478466f276ae8d88ec287f0831283a2332a0d1713427448a311 |
|
MD5 | 61bb3a241ca58c9a891bb8b789f25726 |
|
BLAKE2b-256 | 8aae759d6f172568372904461b00ce6ae58c8d8b1c9f9354afe1ec39ff69ef12 |