Our automation code is pretty much self documenting (more below). So, the automation is definitely included in the umbrella of documentation.
All of our automation logic is abstracted into keywords that are readable by business users. Things like:
Element Text Should Be [locator] [expectedtext]
Click Link [LinkText]
Beyond that, we abstract the granular checks into higher level keywords. So, a test at the highest level will be similar to gherkin.
A made up example would be:
- Log in as Administrator User
- Change Read Only User to Write User
- Log out
- Log in as Read Only User
- Make Change to Data
- Log out
Every one of those keywords may include a bunch of steps (although they still use pretty readable language). For some of our business users, we provide the documentation at this very highest level.
For others, we might provide the documentation at a slightly lower level.
For our official validation documentation, we include full execution results, which include the detail down to the lowest level keyword (i.e. Element Text Should Be) along with the results.
That's where having our results in xml has been really valuable, because we generate all the different formats off a single source file.