<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://doc.expecco.de/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Anharman</id>
	<title>expecco Wiki (Version 25.x) - Benutzerbeiträge [de]</title>
	<link rel="self" type="application/atom+xml" href="https://doc.expecco.de/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Anharman"/>
	<link rel="alternate" type="text/html" href="https://doc.expecco.de/wiki/Spezial:Beitr%C3%A4ge/Anharman"/>
	<updated>2026-04-26T07:36:02Z</updated>
	<subtitle>Benutzerbeiträge</subtitle>
	<generator>MediaWiki 1.44.2</generator>
	<entry>
		<id>https://doc.expecco.de/index.php?title=Report_Generation/en&amp;diff=20333</id>
		<title>Report Generation/en</title>
		<link rel="alternate" type="text/html" href="https://doc.expecco.de/index.php?title=Report_Generation/en&amp;diff=20333"/>
		<updated>2020-09-16T07:12:44Z</updated>

		<summary type="html">&lt;p&gt;Anharman: /* Generating CSV Report Files */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
= Automatic Report Generation =&lt;br /&gt;
&lt;br /&gt;
Expecco can generate reports in a number of formats: as human readable PDF or HTML documents, or as machine readable XML-, CSV- or plain text containing all relevant information on the test execution. XML reports are further provided in 3 different formats: Junit compatible, Nunit compatible and the full detail XML.&lt;br /&gt;
&lt;br /&gt;
The full detail XML contains all data as collected during the run, including timestamps and input-/output values of every logged activity. Bz using XML processors (such as XSLT), any custom report can be generated from it, if the other reports are not sufficient.&lt;br /&gt;
&lt;br /&gt;
== Report Templates ==&lt;br /&gt;
Report templates are used to specify the content and layout of created reports. By default the so called &amp;quot;Default Report Template&amp;quot; is used to create reports. Other report templates can be created in testsuites by adding a report template element to the tree. They will be saved together with the testsuite.&lt;br /&gt;
&lt;br /&gt;
== How to create a report ==&lt;br /&gt;
[[Bild:Report Settings.png|thumb|200px|Report Settings]]&lt;br /&gt;
To create a report, a test has to be executed first. This can be either a single block test or a whole testplan. After the execution is finished, click on the &amp;quot;Print report&amp;quot; button ([[Bild:Icon Print Report.png|Report button]]) causing a dialog to open. Here you can select the output format (PDF, HTML, XML, CSV or TEXT), the report language, a paper format (either DIN A4 or Letter format) and a template for the report. This template can be the default Report template, a template from the current testsuite or a template which is stored separately in a file. You can also choose to edit the default report template.&lt;br /&gt;
&lt;br /&gt;
== How to customize a report template ==&lt;br /&gt;
To customize a report template you have to select it in the navigation tree. In the related editor the template can be modified. The same editor is also used to modify the default report template. You can access it either via the already mentioned dialog or via the general expecco settings.&lt;br /&gt;
&lt;br /&gt;
=== Filter Settings ===&lt;br /&gt;
[[Bild:Report Filter Settings.png|thumb|200px|Filter Settings]]&lt;br /&gt;
These settings determine which items are part of the report. This way you can create either detailed or condensed reports.&lt;br /&gt;
&lt;br /&gt;
==== Testsuite ====&lt;br /&gt;
*&#039;&#039;&#039;Do not Print Testsuite Environment&#039;&#039;&#039;&amp;lt;br&amp;gt;This option determines whether the testsuite environment, i.e. the variables defined in the current testsuite, are part of the test report. Please note that only variables which are defined as read-only will be shown in the report because the value of other variables can change during the test execution.&lt;br /&gt;
&lt;br /&gt;
==== Testplan ====&lt;br /&gt;
*&#039;&#039;&#039;Do not Print Testplan Environment&#039;&#039;&#039;&amp;lt;br&amp;gt;This option determines whether the environment of each executed testplan, i.e. the variables defined in the respective testplan, are included in the report. Please note that only variables which are defined as read-only will be shown in the report.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Do not Print Successful Testcases&#039;&#039;&#039;&amp;lt;br&amp;gt;This option removes all successful test cases from the report when checked, so that only failed tests are reported.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Only Print Testplan Summary&#039;&#039;&#039;&amp;lt;br&amp;gt;If checked, this option will reduce every testplan to a summary of the results of the different testplan items, i.e. it removes all further information such as sub-activities or logs.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Print Unexecuted Test Cases&#039;&#039;&#039;&amp;lt;br&amp;gt;This option also includes test cases to the report which have not been executed.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Print Pre/Post Condition&#039;&#039;&#039;&amp;lt;br&amp;gt;This option determines whether the pre- and post executions are present in the report or not. There is also an option to include this information only for failed tests.&lt;br /&gt;
&lt;br /&gt;
==== Activity ====&lt;br /&gt;
*&#039;&#039;&#039;Nesting Limit&#039;&#039;&#039;&amp;lt;br&amp;gt;This option determines to which level nested sub-activities are reported. This affects the length and also the level of detail of the generated report.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Activity Tags&#039;&#039;&#039;&amp;lt;br&amp;gt;In order to include or exclude activities spawned by certain blocks from the report, you can add tags to each block. These tags can be set in the [[Documentation Editor|documentation tab]] of the block. Later you can filter the executed blocks by their tags. Please note that an inclusion to the report has priority over an exclusion.&lt;br /&gt;
**&#039;&#039;&#039;Include Tag(s)&#039;&#039;&#039;&amp;lt;br&amp;gt;All blocks which have one or more of those tags will be present in the report. Multiple tags must be separated by &amp;quot;;&amp;quot;.&lt;br /&gt;
**&#039;&#039;&#039;Exclude Tag(s)&#039;&#039;&#039;&amp;lt;br&amp;gt;All blocks which do not have one or more of those tags will be present in the report. Multiple tags must be separated by &amp;quot;;&amp;quot;.&lt;br /&gt;
**&#039;&#039;&#039;Sub-activities Include Tag(s)&#039;&#039;&#039;&amp;lt;br&amp;gt;All sub activities which have one or more of those tags will be present in the report. Multiple tags must be separated by &amp;quot;;&amp;quot;.&lt;br /&gt;
**&#039;&#039;&#039;Sub-activities Exclude Tag(s)&#039;&#039;&#039;&amp;lt;br&amp;gt;All sub activities which do not have one or more of those tags will be present in the report. Multiple tags must be separated by &amp;quot;;&amp;quot;.&lt;br /&gt;
**&#039;&#039;&#039;Search Tags in Children&#039;&#039;&#039;&amp;lt;br&amp;gt;This option determines whether the sub-activities of an activity are searched for existing tags, when filtering.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Print Input/Output Pins&#039;&#039;&#039;&amp;lt;br&amp;gt;This option determines whether the data of input and output pins is present in the report. You can also add this information only in case the execution failed.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Do not Print Output Pins&#039;&#039;&#039;&amp;lt;br&amp;gt;This option removes the data of the output pins from the report, so that only input values are printed.&lt;br /&gt;
&lt;br /&gt;
==== Logs ====&lt;br /&gt;
These settings are used to specify how logs are reported.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Nesting Limit&#039;&#039;&#039;&amp;lt;br&amp;gt;This option is used to determine down to which level logs of nested sub activities are reported.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Log Tags&#039;&#039;&#039;&amp;lt;br&amp;gt;In order to include or exclude logs of certain blocks from the report you can add tags to each block. Please note that an inclusion to the report has priority over an exclusion.&lt;br /&gt;
**&#039;&#039;&#039;Include Tag(s)&#039;&#039;&#039;&amp;lt;br&amp;gt;All logs of blocks which have one or more of those tags will be present in the report. Multiple tags must be separated by &amp;quot;;&amp;quot;.&lt;br /&gt;
**&#039;&#039;&#039;Exclude Tag(s)&#039;&#039;&#039;&amp;lt;br&amp;gt;All logs of blocks which do not have one or more of those tags will be present in the report. Multiple tags must be separated by &amp;quot;;&amp;quot;.&lt;br /&gt;
**&#039;&#039;&#039;Search Tags in Children&#039;&#039;&#039;&amp;lt;br&amp;gt;This option determines whether the sub activities of an activity are searched for existing tags when filtering.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Log Types&#039;&#039;&#039;&amp;lt;br&amp;gt;These checkboxes are used to include or exclude different log message types from the report. Please note that there is a difference between logs that only change the state of an activity, e.g. &amp;quot;logFail&amp;quot;, and real exceptions that stop the execution, e.g. &amp;quot;fail&amp;quot;. The &amp;quot;All&amp;quot; button is used to toggle all types.&lt;br /&gt;
&lt;br /&gt;
=== Presentation Settings ===&lt;br /&gt;
[[Bild:Report Presentation Settings.png|thumb|200px|Presentation Settings]]&lt;br /&gt;
These settings are used to determine how the report is presented.&lt;br /&gt;
&lt;br /&gt;
==== Common ====&lt;br /&gt;
*&#039;&#039;&#039;Print Full Activity Name&#039;&#039;&#039;&amp;lt;br&amp;gt;This option determines whether the name of the corresponding block is printed when a step is reported. If the step-name is the same as the block name (which is the common case), then that option does not make a difference. But if a step has been renamed from the underlying block&#039;s name, then both names will be printed if they are different.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Print Activity Name in Logs as Well&#039;&#039;&#039;&amp;lt;br&amp;gt;This option determines whether the name of the activity which logged a message will be printed in front of the message.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Indention Level Limit&#039;&#039;&#039;&amp;lt;br&amp;gt;This option is used to determine to which nesting level reported sub activities are indented.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Highlight Top State in Every Row&#039;&#039;&#039;&amp;lt;br&amp;gt;This option adds a colored area with the top state color in every row. This helps to keep track of the overall test case result in case that many sub activities are reported.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Page Break after Testplan Summary&#039;&#039;&#039;&amp;lt;br&amp;gt;This option will add a page break after a testplan summary.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Page Break after every Testcase&#039;&#039;&#039;&amp;lt;br&amp;gt;This option will add a page break after every test case.&lt;br /&gt;
&lt;br /&gt;
==== Fonts ====&lt;br /&gt;
These settings are used to change the fonts used for the document, the column headers and the activity reports.&lt;br /&gt;
&lt;br /&gt;
==== Colors ====&lt;br /&gt;
These settings are used to change the color of different report items. Its possible to use the default color as defined in the [[Settings#State Colors|settings]] for error and failure logs. You can also print a &amp;quot;Only Black &amp;amp; White&amp;quot; report by toggling the corresponding check-box.&lt;br /&gt;
&lt;br /&gt;
=== Test Overview Settings ===&lt;br /&gt;
[[Bild:Report Test Overview Settings.png|200px|thumb|Test Overview Settings]]&lt;br /&gt;
These settings can be used to customize the report summary.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Testplan Summary&#039;&#039;&#039;&amp;lt;br&amp;gt;Here you can specify how the summary of a testplan is presented. The editor panel is described here: [[Report Generation#Editor Panel|Editor Panel]]&lt;br /&gt;
*&#039;&#039;&#039;Activity Summary&#039;&#039;&#039;&amp;lt;br&amp;gt;Here you can specify how the summary of an activity is presented. The editor panel is described here: [[Report Generation#Editor Panel|Editor Panel]]&lt;br /&gt;
&lt;br /&gt;
=== Document Settings ===&lt;br /&gt;
[[Bild:Report Document Settings.png|thumb|200px|Document Settings]]&lt;br /&gt;
These settings apply on the general design of the report. Note that the header and footer line will only be present in a PDF report.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Document Header&#039;&#039;&#039;&amp;lt;br&amp;gt;Here you can create a header for the report. The editor panel is described here: [[Report Generation#Editor Panel|Editor Panel]]&lt;br /&gt;
*&#039;&#039;&#039;Columns Width&#039;&#039;&#039;&amp;lt;br&amp;gt;Here you can resize the three columns of the report. Please note that each column has to fill at least 10 percent of the entire width.&lt;br /&gt;
*&#039;&#039;&#039;Header&#039;&#039;&#039;&amp;lt;br&amp;gt;These text fields are used to edit the header line of the report. The left fields are used to enter left aligned text, the center ones for center aligned text and the right ones for right aligned text. You can also create links by typing a target into the &amp;quot;link&amp;quot; fields under the text fields.&lt;br /&gt;
*&#039;&#039;&#039;Footer&#039;&#039;&#039;&amp;lt;br&amp;gt;These text fields are used to edit the footer line of the report. The usage is similar to the header line fields.&lt;br /&gt;
&lt;br /&gt;
=== Logo Settings ===&lt;br /&gt;
These settings are used to specify images, e.g. company logos, which can be used in the report. By default the expecco logo is used. To replace the default images just click on the &amp;quot;replace&amp;quot; button behind the filenames and select the new image&#039;s file in the file dialog. Please note that the file type has to be &amp;quot;.jpg&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
Here you can add a description for the report template. This can be useful to inform other users for example when to use this template.&lt;br /&gt;
&lt;br /&gt;
== Editor Panel ==&lt;br /&gt;
&amp;lt;!--[[Bild: Report Editor Panel.png|thumb|300px|Editor Panel]]--&amp;gt;&lt;br /&gt;
This editor panel is used to create style information for report summaries and the report header.&lt;br /&gt;
&lt;br /&gt;
The workspace is made up of a number of rows which are separated columns (limited to a maximum of 6 columns). A single field is called cell. It can contain either text or graphics, such as a pie chart or a logo.&lt;br /&gt;
&lt;br /&gt;
To enter text, double click on the cell causing a text editor to open.&lt;br /&gt;
&lt;br /&gt;
To insert graphics, right click on a cell and select &amp;quot;&#039;&#039;Insert Graphic&#039;&#039;&amp;quot;. Now you can select the type of the graphic. Please note that pie charts are only available for testplan reports and logos only for the document header.&lt;br /&gt;
&lt;br /&gt;
Inside text, the content of a placeholder variable, such as the name of the testsuite or the current date can be inserted: double click on a cell to open the editor and right click to open the context menu. Now select &amp;quot;&#039;&#039;Insert Variable&#039;&#039;&amp;quot; and choose one of the variables from the list.&lt;br /&gt;
Currently, variables available in a testplan overview are:&lt;br /&gt;
* %testplan_name% - The name of the testplan&lt;br /&gt;
* %testcases_size% - The number of testcases in the testplan&lt;br /&gt;
* %testcases_executed% - The number of testcases in the report&lt;br /&gt;
* %hostname% - The hostname of the executing machine&lt;br /&gt;
* %username% - The username (login name)&lt;br /&gt;
* %start_date% - The date when the testplan was started&lt;br /&gt;
* %start_time% - The time when the testplan was started&lt;br /&gt;
* %run_time% - the overall execution time of the testplan (when finished)&lt;br /&gt;
* %elapsed_time% - the elapsed execution time of the testplan (only useful if a GenerateReport block is used from within an executing testplan. same as run_time when finished)&lt;br /&gt;
&lt;br /&gt;
Variables available in an activity-overview are:&lt;br /&gt;
* %action_name% - The name of the activity&lt;br /&gt;
* %hostname% - The hostname of the executing machine&lt;br /&gt;
* %username% - The username (login name)&lt;br /&gt;
* %start_date% - The time when the activity was started&lt;br /&gt;
* %start_time% - The time when the activity was started&lt;br /&gt;
* %run_time% - the execution time of the activity&lt;br /&gt;
&lt;br /&gt;
=== Buttons ===&lt;br /&gt;
*[[Bild:Icon Insert Row.png]] Inserts a new row after the selected one&lt;br /&gt;
*[[Bild:Icon Insert Column.png]] Inserts a new column right from the selected one. Please note that only the selected row is affected.&lt;br /&gt;
*[[Bild:Icon Remove Row.png]] Removes the selected row&lt;br /&gt;
*[[Bild:Icon Remove Column.png]] Removes the selected column&lt;br /&gt;
*[[Bild:Icon Report Move Up.png]] [[Bild:Icon Report Move Down.png]] Moves the selected row up/down&lt;br /&gt;
*[[Bild:Icon Report Move Left.png]] [[Bild:Icon Report Move Right.png]] Moves the selected column left/right&lt;br /&gt;
*[[Bild:Icon Open Editor.png]] Opens an editor to modify the content of the selected column&lt;br /&gt;
*[[Bild:Icon Save Close Editor.png]] Closes the editor with saving changes&lt;br /&gt;
*[[Bild:Icon NoSave Close Editor.png]] Closes the editor without saving changes&lt;br /&gt;
*[[Bild:Icon Left Alignment.png]] [[Bild:Icon Center Alignment.png]] [[Bild:Icon Right Alignment.png]] Aligns the content of the column left/center/right&lt;br /&gt;
*[[Bild:Icon Show Hide Grid.png]] Shows/Hides a grid to resize the columns&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Report vs. expecco Log-File ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Im Gegensatz zu den Report Ausgaben, welche als abheftbare Dokumente oder als von anderen Programmen einlesbares Output gedacht sind, gibt es noch ein expecco internes Test-Ergebnis Speicherformat, die sogenannten expecco log file *.elf. In einer solchen Datei werden alle Relevanten Tree-Elemente, logDaten, Ein und Ausgangswerte usw. die nötig sind um den angezeigten Ergebnisbaum wiederherzustellen, abgespeichert.&lt;br /&gt;
&lt;br /&gt;
Genauso wie bei den Reports können Sie auch diese expecco log file nach der Ausführung eines Tests (ob Einzel Test block oder ganzer Testplan) wie folgend gezeigt erzeugen.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
In contrast to the generated reports, which are meant to be either human readable archived documents (HTML, PDF, text) or machine readable, to be processed by other programs (CSV, XML),&lt;br /&gt;
there is another, expecco-internal storage format, the so called &amp;quot;expecco log files&amp;quot;, with a &amp;quot;.elf&amp;quot; extension.&lt;br /&gt;
These files store all relevant tree elements, log data, in- and output in values which are required to reconstruct a full activity log/result tree.&lt;br /&gt;
This also means, that they include a copy of the executed blocks and their definitions, independent of any changes done to the test suite in the meantime. As such, they can be also archived to proof exactly which version of a suite was executed.&lt;br /&gt;
&lt;br /&gt;
Just like regular reports, these log files can be generated after the execution of a test (both single block- and full testplan tests), and saved to a file:&lt;br /&gt;
&lt;br /&gt;
[[Datei:Save_elf1.png‎]]&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
expecco ALM (formerly called &amp;quot;expeccoNET&amp;quot;) also provides central storage of all log files and makes them available later to team members with appropriate access rights.&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
expecco ALM (früher &amp;quot;expeccoNET&amp;quot;) bietet Ihnen auch die Möglichkeit alle Ihre expecco log files zentral abzuspeichern und für einen definierten Benutzerpool zugänglich zu machen.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Datei:Save_elf2.png]]&lt;br /&gt;
&lt;br /&gt;
As you can see, there is a menu item named &amp;quot;Load Test-Results (from expeccoNET)“ which loads those &amp;quot;.elf&amp;quot; files from this central database. If you do not have expecco ALM installed, you have to save/load those from a regular file.&lt;br /&gt;
After loading, the result tree is presented as it was right after the execution. You can also navigate through the tree, see pin values and other artefacts (however, of course, objects which where present on remote systems and only referred to via a bridge connection are no longer available. If required, these should be marshaled to XML or any other textual format, if that is required).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Wie Sie sehen existiert jeweils auch ein Menüeintrag „Load Test-Results (from expeccoNET)“ mit dem Sie eine solche *.elf Datei wieder einlesen können. Nach dem Einlesen wird Ihr Ergebnisbaum wieder so dargestellt wie er nach der Ausführung Ihres Tests dargestellt wurde.--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Another advantage of this format is that additional reports can be generated at any time later. For example, you can generate a new report with a different layout, look or detail. For example, if your company logo has changed in the meanwhile, or the product department needs another, less detailed report.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Ein weiterer Vorteil Ihre expecco log files abzuspeichern, liegt darin aus dem eingelesenen expecco log file / Ergebnisbaum wiederum einen Report zu erzeugen. Funktioniert hier genauso wie zuvor unter Punkt bla beschrieben. So können Sie jeder Zeit einen Report mit anderem Layout erzeugen. Es könnte sich z.&amp;amp;#x202f;B. Ihr Firmenlogo verändert haben oder Sie benötigen gegebenenfalls einen Report mit mehr Details oder weniger Details oder mit anderem CI Layout usw.&lt;br /&gt;
&lt;br /&gt;
Weiter können Sie auch über den Druck Dialog einen Report über mehrere expecco log files erstellen. So können Sie zum Beispiel Testergebnisse von verschiedenen Benutzern/Abteilungen in einem Report zusammenfassen.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Datei:Print_elf.png]]&lt;br /&gt;
&lt;br /&gt;
== Example: Executive Summary vs. Developer Report ==&lt;br /&gt;
[[Bild:Report Executive Summary.png|thumb|links|200px|Executive Summary]] [[Bild:Report Developer Report.png|thumb|200px|Developer Report.]]&lt;br /&gt;
The main advantage of report templates is the possibility to create standardized reports for different purposes. This way you can for example create a condensed report as a summary for an executive or a very detailed one for the development team to track down error causes or to document a test run.&lt;br /&gt;
&lt;br /&gt;
In the shown example the executive summary solely shows the overall test results which are visualized by a pie chart. Other irrelevant information has been removed to keep the report clear and readable. A corresponding template can be found here: [[Datei:Executive Summary Template.ert]]&lt;br /&gt;
&lt;br /&gt;
The shown developer report is more detailed and shows all relevant data to track down a possible error. In this case all irrelevant data from the developer&#039;s point of view is left out. For example the pie chart might not be useful in this case. A corresponding template can be found here: [[Datei:Developer Report Template.ert]]&lt;br /&gt;
&lt;br /&gt;
= Programmatic Report Generation =&lt;br /&gt;
&lt;br /&gt;
In rare situations, the automatic generated reports are not sufficient to fullfill your needs. It may be required to conform to a particular document format, or contain additional data, or it may need to be postprocessed (for example: cryptographically signed).&lt;br /&gt;
&lt;br /&gt;
For this, you can either take the automatic report and post-process it with an expecco action (this would be the case when it has to be signed), or create your report completely driven by your own actions.&lt;br /&gt;
In the following, a few examples are provided to show possible solutions:&lt;br /&gt;
&lt;br /&gt;
== Generating CSV Report Files ==&lt;br /&gt;
&lt;br /&gt;
Collect the CSV rows (i.e. the raw data to be put into the CSV columns) during the run, and write a CSV file at the end.&lt;br /&gt;
&lt;br /&gt;
For this:&lt;br /&gt;
* define an action, which creates an empty (sequencable) collection (i.e. &amp;quot;New OrderedCollection&amp;quot; will do).&lt;br /&gt;
* inside the action, store this created collection in a test suite variable (let&#039;s say: &amp;quot;collectedData&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
[[Datei:Pre-action_csv_report.png|500px]]&lt;br /&gt;
&lt;br /&gt;
* make this action a &amp;quot;pre-action&amp;quot; of your test plan&lt;br /&gt;
* during the run, add rows as required to the &amp;quot;collectedData&amp;quot; collection (give the vector to an &amp;quot;Add Element&amp;quot; step)&lt;br /&gt;
&lt;br /&gt;
[[Datei:Collect data csv report.png|650px]]&lt;br /&gt;
&lt;br /&gt;
* define an action which saves the collectedData to a CSV file (use the &amp;quot;Write CSV&amp;quot; action) &lt;br /&gt;
&lt;br /&gt;
[[Datei:Post-action csv report.png|500px]]&lt;br /&gt;
   &lt;br /&gt;
* make this write-action a &amp;quot;post-action&amp;quot; of your test plan&lt;br /&gt;
&lt;br /&gt;
[[Datei:Testplan csv report.png|650px]]&lt;br /&gt;
&lt;br /&gt;
All of the above actions are found in the standard library; there is no need to do any textual coding.&lt;br /&gt;
However, if you prefer scripts, you can of course do so as well.&lt;br /&gt;
&lt;br /&gt;
== Generating a PDF Report ==&lt;br /&gt;
&lt;br /&gt;
[[Datei:PDFGeneratorLibrary.png|mini]]&lt;br /&gt;
As part of the expecco installation, a PDF generator library is provided, which contains building blocks for PDF documents.&lt;br /&gt;
Similar to the above strategy, start PDF generation in a pre-action, collect data during the run and write the final PDF in a post-action at the end.&lt;/div&gt;</summary>
		<author><name>Anharman</name></author>
	</entry>
	<entry>
		<id>https://doc.expecco.de/index.php?title=Datei:Testplan_csv_report.png&amp;diff=20332</id>
		<title>Datei:Testplan csv report.png</title>
		<link rel="alternate" type="text/html" href="https://doc.expecco.de/index.php?title=Datei:Testplan_csv_report.png&amp;diff=20332"/>
		<updated>2020-09-16T07:11:20Z</updated>

		<summary type="html">&lt;p&gt;Anharman: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Testplan that demonstrates how to generate CSV Report file&lt;/div&gt;</summary>
		<author><name>Anharman</name></author>
	</entry>
	<entry>
		<id>https://doc.expecco.de/index.php?title=Datei:Post-action_csv_report.png&amp;diff=20331</id>
		<title>Datei:Post-action csv report.png</title>
		<link rel="alternate" type="text/html" href="https://doc.expecco.de/index.php?title=Datei:Post-action_csv_report.png&amp;diff=20331"/>
		<updated>2020-09-16T07:09:48Z</updated>

		<summary type="html">&lt;p&gt;Anharman: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Post-action for generating CSV Report Files&lt;/div&gt;</summary>
		<author><name>Anharman</name></author>
	</entry>
	<entry>
		<id>https://doc.expecco.de/index.php?title=Datei:Collect_data_csv_report.png&amp;diff=20330</id>
		<title>Datei:Collect data csv report.png</title>
		<link rel="alternate" type="text/html" href="https://doc.expecco.de/index.php?title=Datei:Collect_data_csv_report.png&amp;diff=20330"/>
		<updated>2020-09-16T07:01:31Z</updated>

		<summary type="html">&lt;p&gt;Anharman: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Adds rows to the data collected for the CSV report&lt;/div&gt;</summary>
		<author><name>Anharman</name></author>
	</entry>
	<entry>
		<id>https://doc.expecco.de/index.php?title=Datei:Pre-action_csv_report.png&amp;diff=20329</id>
		<title>Datei:Pre-action csv report.png</title>
		<link rel="alternate" type="text/html" href="https://doc.expecco.de/index.php?title=Datei:Pre-action_csv_report.png&amp;diff=20329"/>
		<updated>2020-09-16T06:57:24Z</updated>

		<summary type="html">&lt;p&gt;Anharman: Anharman lud eine neue Version von Datei:Pre-action csv report.png hoch&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Pre-action for generating CSV Report file&lt;/div&gt;</summary>
		<author><name>Anharman</name></author>
	</entry>
	<entry>
		<id>https://doc.expecco.de/index.php?title=Datei:Pre-action_csv_report.png&amp;diff=20328</id>
		<title>Datei:Pre-action csv report.png</title>
		<link rel="alternate" type="text/html" href="https://doc.expecco.de/index.php?title=Datei:Pre-action_csv_report.png&amp;diff=20328"/>
		<updated>2020-09-16T06:49:38Z</updated>

		<summary type="html">&lt;p&gt;Anharman: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Pre-action for generating CSV Report file&lt;/div&gt;</summary>
		<author><name>Anharman</name></author>
	</entry>
</feed>