Browse Source

Docs updated

bernhardbuhl 3 years ago
parent
commit
e332a93533
72 changed files with 1759 additions and 85 deletions
  1. BIN
      docs/_build/doctrees/Datagenerator.doctree
  2. BIN
      docs/_build/doctrees/OverviewUsage.doctree
  3. BIN
      docs/_build/doctrees/PlannedFeatures.doctree
  4. BIN
      docs/_build/doctrees/SaveResults2Database.doctree
  5. BIN
      docs/_build/doctrees/SendStatistics.doctree
  6. BIN
      docs/_build/doctrees/Variables.doctree
  7. BIN
      docs/_build/doctrees/baangt-Plugin.doctree
  8. BIN
      docs/_build/doctrees/changelog.doctree
  9. BIN
      docs/_build/doctrees/contents.doctree
  10. BIN
      docs/_build/doctrees/docs/baangt.base.doctree
  11. BIN
      docs/_build/doctrees/environment.pickle
  12. BIN
      docs/_build/doctrees/index.doctree
  13. 1 1
      docs/_build/html/.buildinfo
  14. 2 1
      docs/_build/html/BrowserDrivers.html
  15. 2 1
      docs/_build/html/DataFile.html
  16. 29 8
      docs/_build/html/Datagenerator.html
  17. 2 1
      docs/_build/html/Developer.html
  18. 2 1
      docs/_build/html/HistoryAndReasons.html
  19. 2 1
      docs/_build/html/Installation.html
  20. 5 4
      docs/_build/html/OverviewUsage.html
  21. 2 1
      docs/_build/html/ParametersConfigFile.html
  22. 7 13
      docs/_build/html/PlannedFeatures.html
  23. 2 1
      docs/_build/html/SaveResults2Database.html
  24. 316 0
      docs/_build/html/SendStatistics.html
  25. 2 1
      docs/_build/html/SimpleAPI.html
  26. 2 1
      docs/_build/html/Structure.html
  27. 2 1
      docs/_build/html/TestTypes.html
  28. 4 3
      docs/_build/html/Variables.html
  29. BIN
      docs/_build/html/_images/DataGeneratorInput.png
  30. BIN
      docs/_build/html/_images/thumbnailYoutube.png
  31. 113 0
      docs/_build/html/_sources/Datagenerator.rst.txt
  32. 1 1
      docs/_build/html/_sources/OverviewUsage.rst.txt
  33. 5 12
      docs/_build/html/_sources/PlannedFeatures.rst.txt
  34. 361 0
      docs/_build/html/_sources/SaveResults2Database.rst.txt
  35. 93 0
      docs/_build/html/_sources/SendStatistics.rst.txt
  36. 37 0
      docs/_build/html/_sources/Variables.rst.txt
  37. 100 0
      docs/_build/html/_sources/baangt-Plugin.rst.txt
  38. 4 0
      docs/_build/html/_sources/changelog.rst.txt
  39. 4 0
      docs/_build/html/_sources/contents.rst.txt
  40. 1 0
      docs/_build/html/_sources/index.rst.txt
  41. 13 0
      docs/_build/html/_static/theme_overrides.css
  42. 2 1
      docs/_build/html/articles/AgileWorkflowIntegration.html
  43. 2 1
      docs/_build/html/articles/Articles.html
  44. 2 1
      docs/_build/html/articles/AsynchronousAndCanonTests.html
  45. 2 1
      docs/_build/html/articles/BaangtIndustries.html
  46. 2 1
      docs/_build/html/articles/BugSoup.html
  47. 2 1
      docs/_build/html/articles/DataDoctor.html
  48. 2 1
      docs/_build/html/articles/ProductionSucks.html
  49. 2 1
      docs/_build/html/articles/SeleniumGridV4WithBaangt.html
  50. 2 1
      docs/_build/html/articles/StopTesting.html
  51. 316 0
      docs/_build/html/baangt-Plugin.html
  52. 5 1
      docs/_build/html/changelog.html
  53. 225 0
      docs/_build/html/contents.html
  54. 2 1
      docs/_build/html/contributors.html
  55. 2 1
      docs/_build/html/docs/baangt.TestCase.html
  56. 2 1
      docs/_build/html/docs/baangt.TestCaseSequence.html
  57. 2 1
      docs/_build/html/docs/baangt.TestSteps.DropsApp.html
  58. 2 1
      docs/_build/html/docs/baangt.TestSteps.html
  59. 20 3
      docs/_build/html/docs/baangt.base.html
  60. 2 1
      docs/_build/html/docs/baangt.html
  61. 2 1
      docs/_build/html/docs/baangt.katalonImporter.html
  62. 2 1
      docs/_build/html/docs/baangt.ui.html
  63. 2 1
      docs/_build/html/docs/baangtIA.html
  64. 2 1
      docs/_build/html/docs/modules.html
  65. 2 1
      docs/_build/html/docs/setup.html
  66. 6 3
      docs/_build/html/genindex.html
  67. 11 2
      docs/_build/html/index.html
  68. BIN
      docs/_build/html/objects.inv
  69. 17 1
      docs/_build/html/py-modindex.html
  70. 2 1
      docs/_build/html/search.html
  71. 1 1
      docs/_build/html/searchindex.js
  72. 2 1
      docs/_build/html/simpleExample.html

BIN
docs/_build/doctrees/Datagenerator.doctree


BIN
docs/_build/doctrees/OverviewUsage.doctree


BIN
docs/_build/doctrees/PlannedFeatures.doctree


BIN
docs/_build/doctrees/SaveResults2Database.doctree


BIN
docs/_build/doctrees/SendStatistics.doctree


BIN
docs/_build/doctrees/Variables.doctree


BIN
docs/_build/doctrees/baangt-Plugin.doctree


BIN
docs/_build/doctrees/changelog.doctree


BIN
docs/_build/doctrees/contents.doctree


BIN
docs/_build/doctrees/docs/baangt.base.doctree


BIN
docs/_build/doctrees/environment.pickle


BIN
docs/_build/doctrees/index.doctree


+ 1 - 1
docs/_build/html/.buildinfo

@@ -1,4 +1,4 @@
 # Sphinx build info version 1
 # This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
-config: e31d53b7085667f8f00bc7f50eb93f81
+config: ad20147fc3109837715c0456e44feeba
 tags: 645f666f9bcd5a90fca523b33c5a78b7

+ 2 - 1
docs/_build/html/BrowserDrivers.html

@@ -8,7 +8,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Handling of Browser Drivers &mdash; baangt 2020.5.2rc5 documentation</title>
+  <title>Handling of Browser Drivers &mdash; baangt 1.1.1 documentation</title>
   
 
   
@@ -105,6 +105,7 @@
 </ul>
 </li>
 <li class="toctree-l1"><a class="reference internal" href="Variables.html">   Variables</a></li>
+<li class="toctree-l1"><a class="reference internal" href="SendStatistics.html">   Results</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html">DataGenerator</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#input-file">Input File</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#data-type">Data Type</a></li>

+ 2 - 1
docs/_build/html/DataFile.html

@@ -8,7 +8,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Special functions in datafiles &mdash; baangt 2020.5.2rc5 documentation</title>
+  <title>Special functions in datafiles &mdash; baangt 1.1.1 documentation</title>
   
 
   
@@ -98,6 +98,7 @@
 <li class="toctree-l1"><a class="reference internal" href="PlannedFeatures.html">   Planned Features</a></li>
 <li class="toctree-l1"><a class="reference internal" href="BrowserDrivers.html">   Browser Drivers</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Variables.html">   Variables</a></li>
+<li class="toctree-l1"><a class="reference internal" href="SendStatistics.html">   Results</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html">DataGenerator</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#input-file">Input File</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#data-type">Data Type</a></li>

+ 29 - 8
docs/_build/html/Datagenerator.html

@@ -8,7 +8,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>DataGenerator &mdash; baangt 2020.5.2rc5 documentation</title>
+  <title>DataGenerator &mdash; baangt 1.1.1 documentation</title>
   
 
   
@@ -37,7 +37,7 @@
     <link rel="index" title="Index" href="genindex.html" />
     <link rel="search" title="Search" href="search.html" />
     <link rel="next" title="Developer guidelines for custom enhancements" href="Developer.html" />
-    <link rel="prev" title="Dealing with variables" href="Variables.html" /> 
+    <link rel="prev" title="SendStatistics" href="SendStatistics.html" /> 
 </head>
 
 <body class="wy-body-for-nav">
@@ -98,6 +98,7 @@
 <li class="toctree-l1"><a class="reference internal" href="PlannedFeatures.html">   Planned Features</a></li>
 <li class="toctree-l1"><a class="reference internal" href="BrowserDrivers.html">   Browser Drivers</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Variables.html">   Variables</a></li>
+<li class="toctree-l1"><a class="reference internal" href="SendStatistics.html">   Results</a></li>
 <li class="toctree-l1 current"><a class="current reference internal" href="#">DataGenerator</a></li>
 <li class="toctree-l1"><a class="reference internal" href="#input-file">Input File</a></li>
 <li class="toctree-l1"><a class="reference internal" href="#data-type">Data Type</a></li>
@@ -196,8 +197,9 @@ containing all data.</p>
 <li><p><code class="docutils literal notranslate"><span class="pre">RND_1,10,2</span></code>: <code class="docutils literal notranslate"><span class="pre">RND_</span></code> prefix is also used here but with a range.</p></li>
 <li><p>Simple range.</p></li>
 <li><p>List of header.</p></li>
-<li><p><code class="docutils literal notranslate"><span class="pre">FKR_</span></code> keyword is used here.</p></li>
-<li><p><code class="docutils literal notranslate"><span class="pre">FKR_</span></code> keyword is used here with a new integer value 0 in end.</p></li>
+<li><p><code class="docutils literal notranslate"><span class="pre">FKR_</span></code> prefix is used here.</p></li>
+<li><p><code class="docutils literal notranslate"><span class="pre">FKR_</span></code> prefix is used here with a new integer value 0 in end.</p></li>
+<li><p><code class="docutils literal notranslate"><span class="pre">RRD_</span></code> prefix is used here.</p></li>
 </ol>
 </dd>
 </dl>
@@ -254,6 +256,24 @@ Now this will generate list of 8 fake email and on every data any random email w
 simply use 0 number at the position of list length.
 Example:- <code class="docutils literal notranslate"><span class="pre">FKR_(email,</span> <span class="pre">EN_US,</span> <span class="pre">0)</span></code>
 Now this will generate new email for every data in the output.</p></li>
+<li><p><code class="docutils literal notranslate"><span class="pre">RRD_</span></code> is used when we have multiple sheets in a input file and we need to take value which are matching conditions
+from that sheet.
+Format:- <code class="docutils literal notranslate"><span class="pre">RRD_(&lt;sheetName&gt;,&lt;TargetData&gt;,[Header1:[Value1],Header2:[Value1,Value2]])</span></code>
+Here sheetName is the name of the sheet where our TargetData is located. A dictionary of TargetData is generated with all
+the data which are matching from our Header: Value pair. A header with multiple value list is than converted to all
+possible value as mentioned in above explanation. At last a random value is selected from TargetData dictionary for every
+output data.
+If TargetData = <code class="docutils literal notranslate"><span class="pre">*</span></code> then all the values of the matched row will be treated as TargetData.
+If Header:Value List = <code class="docutils literal notranslate"><span class="pre">[]</span></code> then the defined TargetData will be collected from every row of the defined sheet.
+i.e.
+For all value in matching row <code class="docutils literal notranslate"><span class="pre">RRD_(sheetName,*,[Header1:[Value1],Header2:[Value1,Value2]])</span></code>
+For TargetData from whole Sheet <code class="docutils literal notranslate"><span class="pre">RRD_(sheetName,TargetData,[])</span></code>
+For all data inside sheet <code class="docutils literal notranslate"><span class="pre">RRD_(sheetName,*,[])</span></code>
+If a input sheet has multiple cells using <code class="docutils literal notranslate"><span class="pre">RRD_</span></code> prefix with a matching data (=header of excel column) in TargetData
+then they will be treated as one unit. In the output file there will be only one column of that matching header and while
+selecting random data only the rows which have same value of that header will be considered.
+i.e. First <code class="docutils literal notranslate"><span class="pre">RRD_</span></code> cell has value “x” for the header while selected randomly, then the second cell will select data
+randomly only from the rows which have “x” value for the same header.</p></li>
 </ol>
 </dd>
 </dl>
@@ -261,13 +281,14 @@ Now this will generate new email for every data in the output.</p></li>
 <div class="section" id="all-data-types-format">
 <h1>All Data Types Format<a class="headerlink" href="#all-data-types-format" title="Permalink to this headline">¶</a></h1>
 <ol class="arabic simple">
-<li><p>Value             = <code class="docutils literal notranslate"><span class="pre">value</span></code></p></li>
+<li><p>Value             = <code class="docutils literal notranslate"><span class="pre">&lt;value&gt;</span></code></p></li>
 <li><p>list of values    = <code class="docutils literal notranslate"><span class="pre">[&lt;value1&gt;,&lt;value2&gt;]</span></code></p></li>
 <li><p>range             = <code class="docutils literal notranslate"><span class="pre">&lt;start&gt;-&lt;end&gt;,&lt;step&gt;</span></code></p></li>
 <li><p>random            = <code class="docutils literal notranslate"><span class="pre">RND_[list]</span></code></p></li>
 <li><p>random from range = <code class="docutils literal notranslate"><span class="pre">RND_&lt;start&gt;-&lt;end&gt;,&lt;step&gt;</span></code></p></li>
-<li><p>List of header    = <code class="docutils literal notranslate"><span class="pre">[title1,</span> <span class="pre">title2,</span> <span class="pre">title3]</span></code></p></li>
-<li><p>Faker Prefix      = <code class="docutils literal notranslate"><span class="pre">FKR_(type,</span> <span class="pre">locale,</span> <span class="pre">number_of_data)</span></code></p></li>
+<li><p>List of header    = <code class="docutils literal notranslate"><span class="pre">[&lt;title1&gt;,</span> <span class="pre">&lt;title2&gt;,</span> <span class="pre">&lt;title3&gt;]</span></code></p></li>
+<li><p>Faker Prefix      = <code class="docutils literal notranslate"><span class="pre">FKR_(&lt;type&gt;,</span> <span class="pre">&lt;locale&gt;,</span> <span class="pre">&lt;number_of_data&gt;)</span></code></p></li>
+<li><p>RRD Prefix        = <code class="docutils literal notranslate"><span class="pre">RRD_(&lt;sheetName&gt;,&lt;TargetData&gt;,[&lt;Header1&gt;:[&lt;Value1&gt;],&lt;Header2&gt;:[&lt;Value1&gt;,&lt;Value2&gt;]])</span></code></p></li>
 </ol>
 </div>
 
@@ -282,7 +303,7 @@ Now this will generate new email for every data in the output.</p></li>
         <a href="Developer.html" class="btn btn-neutral float-right" title="Developer guidelines for custom enhancements" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right"></span></a>
       
       
-        <a href="Variables.html" class="btn btn-neutral float-left" title="Dealing with variables" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left"></span> Previous</a>
+        <a href="SendStatistics.html" class="btn btn-neutral float-left" title="SendStatistics" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left"></span> Previous</a>
       
     </div>
   

+ 2 - 1
docs/_build/html/Developer.html

@@ -8,7 +8,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Developer guidelines for custom enhancements &mdash; baangt 2020.5.2rc5 documentation</title>
+  <title>Developer guidelines for custom enhancements &mdash; baangt 1.1.1 documentation</title>
   
 
   
@@ -98,6 +98,7 @@
 <li class="toctree-l1"><a class="reference internal" href="PlannedFeatures.html">   Planned Features</a></li>
 <li class="toctree-l1"><a class="reference internal" href="BrowserDrivers.html">   Browser Drivers</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Variables.html">   Variables</a></li>
+<li class="toctree-l1"><a class="reference internal" href="SendStatistics.html">   Results</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html">DataGenerator</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#input-file">Input File</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#data-type">Data Type</a></li>

+ 2 - 1
docs/_build/html/HistoryAndReasons.html

@@ -8,7 +8,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Why baangt and why is it open source? &mdash; baangt 2020.5.2rc5 documentation</title>
+  <title>Why baangt and why is it open source? &mdash; baangt 1.1.1 documentation</title>
   
 
   
@@ -102,6 +102,7 @@
 <li class="toctree-l1"><a class="reference internal" href="PlannedFeatures.html">   Planned Features</a></li>
 <li class="toctree-l1"><a class="reference internal" href="BrowserDrivers.html">   Browser Drivers</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Variables.html">   Variables</a></li>
+<li class="toctree-l1"><a class="reference internal" href="SendStatistics.html">   Results</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html">DataGenerator</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#input-file">Input File</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#data-type">Data Type</a></li>

+ 2 - 1
docs/_build/html/Installation.html

@@ -8,7 +8,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Installation &mdash; baangt 2020.5.2rc5 documentation</title>
+  <title>Installation &mdash; baangt 1.1.1 documentation</title>
   
 
   
@@ -104,6 +104,7 @@
 <li class="toctree-l1"><a class="reference internal" href="PlannedFeatures.html">   Planned Features</a></li>
 <li class="toctree-l1"><a class="reference internal" href="BrowserDrivers.html">   Browser Drivers</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Variables.html">   Variables</a></li>
+<li class="toctree-l1"><a class="reference internal" href="SendStatistics.html">   Results</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html">DataGenerator</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#input-file">Input File</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#data-type">Data Type</a></li>

+ 5 - 4
docs/_build/html/OverviewUsage.html

@@ -8,7 +8,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>What is baangt &mdash; baangt 2020.5.2rc5 documentation</title>
+  <title>What is baangt &mdash; baangt 1.1.1 documentation</title>
   
 
   
@@ -86,7 +86,7 @@
 <li class="toctree-l1"><a class="reference internal" href="Installation.html">   Installation</a></li>
 <li class="toctree-l1 current"><a class="current reference internal" href="#">   Overview</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="#the-fastest-simplest-way-to-record-test-cases">The fastest, simplest way to record test cases</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#more-powerful-and-still-ways">More powerful and still ways:</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="#more-powerful-and-still-simple-ways">More powerful and still simple ways:</a><ul>
 <li class="toctree-l3"><a class="reference internal" href="#hey-why-not-do-everything-in-excel">Hey, why not do everything in Excel?</a></li>
 </ul>
 </li>
@@ -108,6 +108,7 @@
 <li class="toctree-l1"><a class="reference internal" href="PlannedFeatures.html">   Planned Features</a></li>
 <li class="toctree-l1"><a class="reference internal" href="BrowserDrivers.html">   Browser Drivers</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Variables.html">   Variables</a></li>
+<li class="toctree-l1"><a class="reference internal" href="SendStatistics.html">   Results</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html">DataGenerator</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#input-file">Input File</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#data-type">Data Type</a></li>
@@ -207,8 +208,8 @@ stage to the next.</p>
 Testdata definition. This is super fast, very easy even for end-users but has limited flexibility, even though it comes packed
 with all features of the higher end solutions like reporting, fault tolerance, screenshots in case of errors and much more.</p>
 </div>
-<div class="section" id="more-powerful-and-still-ways">
-<h2>More powerful and still ways:<a class="headerlink" href="#more-powerful-and-still-ways" title="Permalink to this headline">¶</a></h2>
+<div class="section" id="more-powerful-and-still-simple-ways">
+<h2>More powerful and still simple ways:<a class="headerlink" href="#more-powerful-and-still-simple-ways" title="Permalink to this headline">¶</a></h2>
 <p>As your requirements grow you want to have Testcase and testrun definition separately (e.g. you want to execute the same
 test cases on different stages of your system landscape (Pre-Quality, Final-Quality, Dev) and not for every heartbeat test
 you would want to run through your 1000s of records of test data. Maybe you will have a SQL-Query in your Excel based data, which changes

+ 2 - 1
docs/_build/html/ParametersConfigFile.html

@@ -8,7 +8,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Parameters in Configuration files (globals) &mdash; baangt 2020.5.2rc5 documentation</title>
+  <title>Parameters in Configuration files (globals) &mdash; baangt 1.1.1 documentation</title>
   
 
   
@@ -98,6 +98,7 @@
 <li class="toctree-l1"><a class="reference internal" href="PlannedFeatures.html">   Planned Features</a></li>
 <li class="toctree-l1"><a class="reference internal" href="BrowserDrivers.html">   Browser Drivers</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Variables.html">   Variables</a></li>
+<li class="toctree-l1"><a class="reference internal" href="SendStatistics.html">   Results</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html">DataGenerator</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#input-file">Input File</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#data-type">Data Type</a></li>

+ 7 - 13
docs/_build/html/PlannedFeatures.html

@@ -8,7 +8,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Future Features &mdash; baangt 2020.5.2rc5 documentation</title>
+  <title>Future Features &mdash; baangt 1.1.1 documentation</title>
   
 
   
@@ -103,6 +103,7 @@
 </li>
 <li class="toctree-l1"><a class="reference internal" href="BrowserDrivers.html">   Browser Drivers</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Variables.html">   Variables</a></li>
+<li class="toctree-l1"><a class="reference internal" href="SendStatistics.html">   Results</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html">DataGenerator</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#input-file">Input File</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#data-type">Data Type</a></li>
@@ -192,24 +193,22 @@
 <li><dl class="simple">
 <dt>Nicer interactive UI-Starter (2020.03)</dt><dd><ul>
 <li><p>Phase 1 done 2020.02</p></li>
-<li><p>Phase 2 (UI-elements) (2020.03) –&gt; will move to 2020.04 RC5</p></li>
-<li><p>Provide live statistics (2020.04)</p></li>
+<li><p>Phase 2 done 2020.04</p></li>
+<li><p>Provide live statistics (2020.05)</p></li>
 </ul>
 </dd>
 </dl>
 </li>
-<li><p>Double Opt-In Automation (2020.03) –&gt; will move to 2020.05 RCx</p></li>
-<li><p>Better support to store test data output to database and export files (2020.04)</p></li>
-<li><p>Katalon Importer/Converter as Webservice (2020.04)</p></li>
 </ul>
 </div>
 <div class="section" id="features-for-later">
 <h2>Features for later<a class="headerlink" href="#features-for-later" title="Permalink to this headline">¶</a></h2>
 <ul class="simple">
-<li><p>Better support for multiple sources (e.g. multiple XLSX)</p></li>
+<li><p>Double Opt-In Automation (so far no ‘takers’)</p></li>
 <li><p>Proof of concept with PyWinAuto</p></li>
 <li><p>Integration with SAP Gui Scripting via VBS and PyWinAuto</p></li>
-<li><p>Better support for Mass testing APIs</p></li>
+<li><p>Improved support for Mass testing APIs</p></li>
+<li><p>Katalon Importer/Converter as Webservice (2020.04)</p></li>
 <li><p>Integration with Atlassian Confluence (for Testcase and Testrun definitions)</p></li>
 <li><p>Integration with Atlassian Confluence (to publish results of testruns)</p></li>
 <li><p>Integration with MS Teams to publish results of Testruns</p></li>
@@ -224,11 +223,6 @@
 <p>There’s no time plan yet, when a pro version will be released. So far whatever we do goes into the open source version.
 Future features might include:</p>
 <ul class="simple">
-<li><p>DB-Migration tools (to ease the pain of upgrading databases)</p></li>
-<li><p>Multi-User environment (who did when which activity and who changed when which test object)</p></li>
-<li><p>History of Testcases (what was changed when. If urgently needed we could come up with DB-Dump and GIT diff or so.)</p></li>
-<li><p>Test-Canons (deliberately stop test cases multiple times at certain test steps, wait for trigger, then resume. After first Testcase <em>finished</em> his first waiting period, start second round of Testcases (that’s how the name “Canon” came up). So far implemented in customer project, but needs to be polished up for public version)</p></li>
-<li><p>XML/PDF-Compare</p></li>
 <li><p>Consulting</p></li>
 <li><p>Priority support</p></li>
 <li><p>Testcase creation as a Service</p></li>

+ 2 - 1
docs/_build/html/SaveResults2Database.html

@@ -8,7 +8,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Save Testrun Results to Database &mdash; baangt 2020.5.2rc5 documentation</title>
+  <title>Save Testrun Results to Database &mdash; baangt 1.1.1 documentation</title>
   
 
   
@@ -118,6 +118,7 @@
 <li class="toctree-l1"><a class="reference internal" href="PlannedFeatures.html">   Planned Features</a></li>
 <li class="toctree-l1"><a class="reference internal" href="BrowserDrivers.html">   Browser Drivers</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Variables.html">   Variables</a></li>
+<li class="toctree-l1"><a class="reference internal" href="SendStatistics.html">   Results</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html">DataGenerator</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#input-file">Input File</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#data-type">Data Type</a></li>

+ 316 - 0
docs/_build/html/SendStatistics.html

@@ -0,0 +1,316 @@
+
+
+<!DOCTYPE html>
+<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
+<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
+<head>
+  <meta charset="utf-8">
+  
+  <meta name="viewport" content="width=device-width, initial-scale=1.0">
+  
+  <title>SendStatistics &mdash; baangt 1.1.1 documentation</title>
+  
+
+  
+  
+  
+  
+
+  
+  <script type="text/javascript" src="_static/js/modernizr.min.js"></script>
+  
+    
+      <script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
+        <script type="text/javascript" src="_static/jquery.js"></script>
+        <script type="text/javascript" src="_static/underscore.js"></script>
+        <script type="text/javascript" src="_static/doctools.js"></script>
+        <script type="text/javascript" src="_static/language_data.js"></script>
+    
+    <script type="text/javascript" src="_static/js/theme.js"></script>
+
+    
+
+  
+  <link rel="stylesheet" href="_static/css/theme.css" type="text/css" />
+  <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
+  <link rel="stylesheet" href="_static/theme_overrides.css" type="text/css" />
+    <link rel="index" title="Index" href="genindex.html" />
+    <link rel="search" title="Search" href="search.html" />
+    <link rel="next" title="DataGenerator" href="Datagenerator.html" />
+    <link rel="prev" title="Dealing with variables" href="Variables.html" /> 
+</head>
+
+<body class="wy-body-for-nav">
+
+   
+  <div class="wy-grid-for-nav">
+    
+    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
+      <div class="wy-side-scroll">
+        <div class="wy-side-nav-search" >
+          
+
+          
+            <a href="index.html" class="icon icon-home"> baangt
+          
+
+          
+          </a>
+
+          
+            
+            
+          
+
+          
+<div role="search">
+  <form id="rtd-search-form" class="wy-form" action="search.html" method="get">
+    <input type="text" name="q" placeholder="Search docs" />
+    <input type="hidden" name="check_keywords" value="yes" />
+    <input type="hidden" name="area" value="default" />
+  </form>
+</div>
+
+          
+        </div>
+
+        <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
+          
+            
+            
+              
+            
+            
+              <p class="caption"><span class="caption-text">Contents:</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="Installation.html">   Installation</a></li>
+<li class="toctree-l1"><a class="reference internal" href="OverviewUsage.html">   Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="simpleExample.html">   First Steps</a></li>
+<li class="toctree-l1"><a class="reference internal" href="Structure.html">   Structure</a></li>
+<li class="toctree-l1"><a class="reference internal" href="ParametersConfigFile.html">   Parameters</a></li>
+<li class="toctree-l1"><a class="reference internal" href="SimpleAPI.html">   First API Test</a></li>
+<li class="toctree-l1"><a class="reference internal" href="TestTypes.html">   Types of Tests</a></li>
+<li class="toctree-l1"><a class="reference internal" href="DataFile.html">   Data file</a></li>
+<li class="toctree-l1"><a class="reference internal" href="SaveResults2Database.html">   Results in Database</a></li>
+<li class="toctree-l1"><a class="reference internal" href="HistoryAndReasons.html">   History</a></li>
+<li class="toctree-l1"><a class="reference internal" href="contributors.html">   Contributions</a></li>
+<li class="toctree-l1"><a class="reference internal" href="changelog.html">   Changelog</a></li>
+<li class="toctree-l1"><a class="reference internal" href="PlannedFeatures.html">   Planned Features</a></li>
+<li class="toctree-l1"><a class="reference internal" href="BrowserDrivers.html">   Browser Drivers</a></li>
+<li class="toctree-l1"><a class="reference internal" href="Variables.html">   Variables</a></li>
+<li class="toctree-l1 current"><a class="current reference internal" href="#">   Results</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="#email">Email</a></li>
+<li class="toctree-l2"><a class="reference internal" href="#ms-teams">Ms Teams</a></li>
+<li class="toctree-l2"><a class="reference internal" href="#slack">Slack</a></li>
+<li class="toctree-l2"><a class="reference internal" href="#telegram">Telegram</a></li>
+<li class="toctree-l2"><a class="reference internal" href="#configuring-baangt">Configuring Baangt</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="Datagenerator.html">DataGenerator</a></li>
+<li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#input-file">Input File</a></li>
+<li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#data-type">Data Type</a></li>
+<li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#all-data-types-format">All Data Types Format</a></li>
+<li class="toctree-l1"><a class="reference internal" href="Developer.html">   For Developers</a></li>
+<li class="toctree-l1"><a class="reference internal" href="baangt-Plugin.html">What is a baangt-plugin</a></li>
+<li class="toctree-l1"><a class="reference internal" href="baangt-Plugin.html#how-to-make-a-baangt-plugin">how to make a baangt-plugin</a></li>
+<li class="toctree-l1"><a class="reference internal" href="baangt-Plugin.html#how-the-baangt-plugin-work">how the baangt-plugin work</a></li>
+<li class="toctree-l1"><a class="reference internal" href="baangt-Plugin.html#how-to-replace-the-existing-plugin-by-your-own-one">how to replace the existing plugin by your own one</a></li>
+<li class="toctree-l1"><a class="reference internal" href="articles/Articles.html">   :subheader: Articles</a></li>
+<li class="toctree-l1"><a class="reference external" href="http://www.baangt.org">   Web</a></li>
+</ul>
+<p class="caption"><span class="caption-text">Autodocs:</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="docs/baangt.base.html">Autodocs</a></li>
+<li class="toctree-l1"><a class="reference internal" href="docs/modules.html">Modules</a></li>
+</ul>
+
+            
+          
+        </div>
+      </div>
+    </nav>
+
+    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
+
+      
+      <nav class="wy-nav-top" aria-label="top navigation">
+        
+          <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
+          <a href="index.html">baangt</a>
+        
+      </nav>
+
+
+      <div class="wy-nav-content">
+        
+        <div class="rst-content">
+        
+          
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<div role="navigation" aria-label="breadcrumbs navigation">
+
+  <ul class="wy-breadcrumbs">
+    
+      <li><a href="index.html">Docs</a> &raquo;</li>
+        
+      <li>SendStatistics</li>
+    
+    
+      <li class="wy-breadcrumbs-aside">
+        
+            
+            <a href="_sources/SendStatistics.rst.txt" rel="nofollow"> View page source</a>
+          
+        
+      </li>
+    
+  </ul>
+
+  
+  <hr/>
+</div>
+          <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
+           <div itemprop="articleBody">
+            
+  <div class="section" id="sendstatistics">
+<h1>SendStatistics<a class="headerlink" href="#sendstatistics" title="Permalink to this headline">¶</a></h1>
+<p>While running tests on <code class="docutils literal notranslate"><span class="pre">baangt</span></code> we might need to share the report to multiple persons in a team. To do this one might
+have to be present in front of screen and wait for completion of the test. But to overcome this issue we have added a
+functionality in <code class="docutils literal notranslate"><span class="pre">baangt</span></code> to send the reports in various platform automatically, thus you don’t need to waste your
+time in front of screen just for waiting of completion, our program will take care of that.</p>
+<p>Their are 4 different services where we can send test reports. They are:</p>
+<ol class="arabic simple">
+<li><p>Email</p></li>
+<li><p>Ms Teams</p></li>
+<li><p>Slack</p></li>
+<li><p>Telegram</p></li>
+</ol>
+<p>Lets first discuss things we need to use this services in our program one by one.</p>
+<p><strong>Note :- If you don’t need to use any service from the following you just skip that part</strong></p>
+<div class="section" id="email">
+<h2>Email<a class="headerlink" href="#email" title="Permalink to this headline">¶</a></h2>
+<p>We don’t need anything(except recipients email ids).</p>
+</div>
+<div class="section" id="ms-teams">
+<h2>Ms Teams<a class="headerlink" href="#ms-teams" title="Permalink to this headline">¶</a></h2>
+<p>We need webhook url of Ms Teams channel where we need to send reports. If you need any help in getting webhook url you can
+refer to this link:- <a class="reference external" href="https://docs.microsoft.com/en-us/microsoftteams/platform/webhooks-and-connectors/how-to/connectors-using#setting-up-a-custom-incoming-webhook">https://docs.microsoft.com/en-us/microsoftteams/platform/webhooks-and-connectors/how-to/connectors-using#setting-up-a-custom-incoming-webhook</a></p>
+</div>
+<div class="section" id="slack">
+<h2>Slack<a class="headerlink" href="#slack" title="Permalink to this headline">¶</a></h2>
+<p>We need incoming webhook url for the app which has permission to post message in your group. For further assistance you
+can refer to “<cite>Set up Incoming Webhooks</cite>” section of <a class="reference external" href="https://slack.com/intl/en-in/help/articles/115005265063-Incoming-webhooks-for-Slack">https://slack.com/intl/en-in/help/articles/115005265063-Incoming-webhooks-for-Slack</a></p>
+</div>
+<div class="section" id="telegram">
+<h2>Telegram<a class="headerlink" href="#telegram" title="Permalink to this headline">¶</a></h2>
+<p>To send message in telegram channel we need channel username and a bot’s HTTP API token who has administrator privilage
+in your channel.</p>
+<p>First, to get username of the channel you can simply go to info section of your channel where you will find invite link
+which will look like <cite>t.me/your_channel_username</cite> here your_channel_username is what we need.</p>
+<p>Now to get HTTP API token of bot, first we need to create a bot. To create a new bot you need to search for <cite>&#64;botfather</cite> in
+telegram. If you are first time user of BotFather then you will see an introduction and a start button in the bottom. If
+you don’t see start button but seeing a text area in bottom you can just type <code class="docutils literal notranslate"><span class="pre">/start</span></code> then to create a new bot you
+have to select or type <code class="docutils literal notranslate"><span class="pre">/newbot</span></code> after that it will ask a name for your bot. You can name it anything but I for best
+practice we will use <cite>ChannelName bot</cite> after that it will ask a username for your bot which must be unique and the
+username must end with <cite>bot</cite> word so we can use <cite>ChannelName_bot</cite> after sending this you should get a congratulations
+message which means your bot is created. In this congratulation message you will get <cite>HTTP API access token</cite> we will
+need this further in our program.</p>
+<p>Our next step is to add the bot in our channel as administrator. Please visit this link for further assistance :-
+<a class="reference external" href="https://stackoverflow.com/a/33497769/8784795">https://stackoverflow.com/a/33497769/8784795</a></p>
+</div>
+<div class="section" id="configuring-baangt">
+<h2>Configuring Baangt<a class="headerlink" href="#configuring-baangt" title="Permalink to this headline">¶</a></h2>
+<p>Once we have all the necessary things we just need to add them in <code class="docutils literal notranslate"><span class="pre">main.ini</span></code> which must be inside <code class="docutils literal notranslate"><span class="pre">ini</span></code> folder.
+If you have used windows installer to setup <code class="docutils literal notranslate"><span class="pre">baangt</span></code> then it must be inside <cite>C:/Users/{username}/baangt</cite> directory,
+else it will be in the root directory of baangt. Once you find the <code class="docutils literal notranslate"><span class="pre">ini</span></code> folder their must be a main.ini file inside
+it. If it is not their you can make one. Just create a new file name <cite>main</cite> and extension <cite>ini</cite> which will look like
+<code class="docutils literal notranslate"><span class="pre">main.ini</span></code>. Then you can edit it via any text editor. It should look like.</p>
+<div class="line-block">
+<div class="line">[Default]</div>
+<div class="line">sendmailto = &lt;email&gt;</div>
+<div class="line">notificationwithattachment = &lt;True or False&gt;</div>
+<div class="line">mswebhook = &lt;MsTeam channel webhook url&gt;</div>
+<div class="line">slackwebhook = &lt;Slack App webhook url&gt;</div>
+<div class="line">telegrambot = &lt;telegram bot access token&gt;</div>
+<div class="line">telegramchannel = &lt;telegram channel name&gt;</div>
+</div>
+<p>Configurations of mail:- <code class="docutils literal notranslate"><span class="pre">sendmailto</span></code> and <code class="docutils literal notranslate"><span class="pre">notificationwithattachment</span></code> are the settings for email. <code class="docutils literal notranslate"><span class="pre">sendmailto</span></code>
+can contain single recipients or multiple recipients which would look like.
+<strong>sendmailto = example1&#64;xyz.com, example2&#64;xyz.com, example3&#64;xyz.com</strong> inshort they should be comma seperated.
+<strong>notificationwithattachment</strong> should be True if you want to send xlsx result file as attachment in the mail else it
+should be False.</p>
+<p>Configuration of MsTeam:- <code class="docutils literal notranslate"><span class="pre">mswebhook</span></code> takes single or multiple(comma seperated as above) webhook url and will send
+report in them.</p>
+<p>Configuration of Slack:- <code class="docutils literal notranslate"><span class="pre">slackwebhook</span></code> takes single or multiple(comma seperated as above) webhook url and will send
+report in them.</p>
+<p>Configurations of Telegram:- <code class="docutils literal notranslate"><span class="pre">telegrambot</span></code> and <code class="docutils literal notranslate"><span class="pre">telegramchannel</span></code> are the settings for telegram. <code class="docutils literal notranslate"><span class="pre">telegrambot</span></code> will
+take single value containing API token of bot. <code class="docutils literal notranslate"><span class="pre">telegramchannel</span></code> may contain single or multiple(comma seperated as
+above) username of channels. Make sure that all the channels have this bot as administrator.</p>
+<p><strong>Note:- If you don’t need to use any of the service out of these four, you can just leave their settings empty</strong></p>
+</div>
+</div>
+
+
+           </div>
+           
+          </div>
+          <footer>
+  
+    <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
+      
+        <a href="Datagenerator.html" class="btn btn-neutral float-right" title="DataGenerator" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right"></span></a>
+      
+      
+        <a href="Variables.html" class="btn btn-neutral float-left" title="Dealing with variables" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left"></span> Previous</a>
+      
+    </div>
+  
+
+  <hr/>
+
+  <div role="contentinfo">
+    <p>
+        &copy; Copyright 2020, Bernhard Buhl
+
+    </p>
+  </div>
+  Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>. 
+
+</footer>
+
+        </div>
+      </div>
+
+    </section>
+
+  </div>
+  
+
+
+  <script type="text/javascript">
+      jQuery(function () {
+          SphinxRtdTheme.Navigation.enable(true);
+      });
+  </script>
+
+  
+  
+    
+   
+
+</body>
+</html>

+ 2 - 1
docs/_build/html/SimpleAPI.html

@@ -8,7 +8,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>How to create a simple API Test &mdash; baangt 2020.5.2rc5 documentation</title>
+  <title>How to create a simple API Test &mdash; baangt 1.1.1 documentation</title>
   
 
   
@@ -106,6 +106,7 @@
 <li class="toctree-l1"><a class="reference internal" href="PlannedFeatures.html">   Planned Features</a></li>
 <li class="toctree-l1"><a class="reference internal" href="BrowserDrivers.html">   Browser Drivers</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Variables.html">   Variables</a></li>
+<li class="toctree-l1"><a class="reference internal" href="SendStatistics.html">   Results</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html">DataGenerator</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#input-file">Input File</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#data-type">Data Type</a></li>

+ 2 - 1
docs/_build/html/Structure.html

@@ -8,7 +8,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Structure of baangt &mdash; baangt 2020.5.2rc5 documentation</title>
+  <title>Structure of baangt &mdash; baangt 1.1.1 documentation</title>
   
 
   
@@ -105,6 +105,7 @@
 <li class="toctree-l1"><a class="reference internal" href="PlannedFeatures.html">   Planned Features</a></li>
 <li class="toctree-l1"><a class="reference internal" href="BrowserDrivers.html">   Browser Drivers</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Variables.html">   Variables</a></li>
+<li class="toctree-l1"><a class="reference internal" href="SendStatistics.html">   Results</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html">DataGenerator</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#input-file">Input File</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#data-type">Data Type</a></li>

+ 2 - 1
docs/_build/html/TestTypes.html

@@ -8,7 +8,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Types of tests &mdash; baangt 2020.5.2rc5 documentation</title>
+  <title>Types of tests &mdash; baangt 1.1.1 documentation</title>
   
 
   
@@ -111,6 +111,7 @@
 <li class="toctree-l1"><a class="reference internal" href="PlannedFeatures.html">   Planned Features</a></li>
 <li class="toctree-l1"><a class="reference internal" href="BrowserDrivers.html">   Browser Drivers</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Variables.html">   Variables</a></li>
+<li class="toctree-l1"><a class="reference internal" href="SendStatistics.html">   Results</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html">DataGenerator</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#input-file">Input File</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#data-type">Data Type</a></li>

+ 4 - 3
docs/_build/html/Variables.html

@@ -8,7 +8,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Dealing with variables &mdash; baangt 2020.5.2rc5 documentation</title>
+  <title>Dealing with variables &mdash; baangt 1.1.1 documentation</title>
   
 
   
@@ -36,7 +36,7 @@
   <link rel="stylesheet" href="_static/theme_overrides.css" type="text/css" />
     <link rel="index" title="Index" href="genindex.html" />
     <link rel="search" title="Search" href="search.html" />
-    <link rel="next" title="DataGenerator" href="Datagenerator.html" />
+    <link rel="next" title="SendStatistics" href="SendStatistics.html" />
     <link rel="prev" title="Handling of Browser Drivers" href="BrowserDrivers.html" /> 
 </head>
 
@@ -105,6 +105,7 @@
 </li>
 </ul>
 </li>
+<li class="toctree-l1"><a class="reference internal" href="SendStatistics.html">   Results</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html">DataGenerator</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#input-file">Input File</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#data-type">Data Type</a></li>
@@ -234,7 +235,7 @@ Currently it is not supported to hand over parameters.</p>
   
     <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
       
-        <a href="Datagenerator.html" class="btn btn-neutral float-right" title="DataGenerator" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right"></span></a>
+        <a href="SendStatistics.html" class="btn btn-neutral float-right" title="SendStatistics" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right"></span></a>
       
       
         <a href="BrowserDrivers.html" class="btn btn-neutral float-left" title="Handling of Browser Drivers" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left"></span> Previous</a>

BIN
docs/_build/html/_images/DataGeneratorInput.png


BIN
docs/_build/html/_images/thumbnailYoutube.png


+ 113 - 0
docs/_build/html/_sources/Datagenerator.rst.txt

@@ -0,0 +1,113 @@
+DataGenerator
+=============
+
+When we work with ``baangt`` to perform various tasks, we need to give excel file containing all data as input.
+Sometimes this data can be too big and can be a huge headache when one has to type all these manually. To overcome this
+issue we had made an application which can generate all possible data combinations by just providing and small excel file
+containing all data.
+
+Input File
+==========
+
+.. image:: DataGeneratorInput.png
+
+This image is an example input file. Different types of data types supported are given different number in the above image.
+  1. Is a simple value.
+  2. Is a list of value.
+  3. Is a list of value with ``RND_`` prefix. We will learn more on it further.
+  4. ``RND_1,10,2``: ``RND_`` prefix is also used here but with a range.
+  5. Simple range.
+  6. List of header.
+  7. ``FKR_`` prefix is used here.
+  8. ``FKR_`` prefix is used here with a new integer value 0 in end.
+  9. ``RRD_`` prefix is used here.
+
+Using these data type we will generate all possible values.
+Here is a simple example with simple value and value of list.
+
+Example Input:-
+
+vehicle, seats
+car, [2,4,5]
+bus, 60
+
+Example Output:-
+
+vehicle, seats
+car, 2
+car, 4
+car, 5
+bus, 60
+
+As you can see that the output file contains every possible combination of input file. Further you will learn more about
+Data Types in next section.
+
+Data Type
+=========
+
+We will use the reference of above image and assigned number to learn about it in detail.
+  1. It is a simple single value.
+  2.  It is a list of values which will be further used to create all possible combinations as shown in above example. Format = [value1, value2, value3]
+  3. Here comes a prefix. ``RND_`` is a prefix which is used when we don't need to create all possible combinations from a list
+     and have to use any one of the data from the list whenever new data is generated. So it will not increase number as it
+     is not compulsory to use all value.
+  4. Range is a new data type. It is used when we want to create a list of number with all of them having same gap between
+     them.
+     Format = Starting-Ending,Step
+     Example input = 2-40,4   ||   Output = [2, 6, 10, 14, 18, 22, 26, 30, 34, 38]
+     As shown in example, instead of writing whole list we can just use Range. In our example range is used with ``RND_`` so
+     after creating this list random function will come into effect.
+  5. As explained in point 4.
+  6. List of header. When there are multiple headers which have same value inside them, then we can simply write a list of
+     header in a single cell. Then the program will consider each value as an individual header and each of them will have
+     the same below data.
+     Example:
+     header1, [header2,header3]
+     value1 , value2
+     output:
+     header1, header2, header3
+     value1 , value2 , value2
+  7. ``FKR_`` is another prefix used to generate fake data. It uses the faker module of python the generate the fake data.
+     format = ``FKR_``(type, locale)
+     Note:- We use tuple with ``FKR_`` prefix
+     Example = ``FKR_(email, EN_US)``
+     In our example we used type = email as we want to get fake emails. EN_US is a locale which will make sure that email
+     should be of same words of that language. By default this will create list of 5 fake emails, if you want to change default
+     number of 5 you can add that number in the end of tuple.
+     Example:- ``FKR_(email, EN_US, 8)``
+     Now this will generate list of 8 fake email and on every data any random email would be selected.
+  8. Now what if we don't want to create a list of email instead we want new mail for every data generated. For this we can
+     simply use 0 number at the position of list length.
+     Example:- ``FKR_(email, EN_US, 0)``
+     Now this will generate new email for every data in the output.
+  9. ``RRD_`` is used when we have multiple sheets in a input file and we need to take value which are matching conditions
+     from that sheet.
+     Format:- ``RRD_(<sheetName>,<TargetData>,[Header1:[Value1],Header2:[Value1,Value2]])``
+     Here sheetName is the name of the sheet where our TargetData is located. A dictionary of TargetData is generated with all
+     the data which are matching from our Header: Value pair. A header with multiple value list is than converted to all
+     possible value as mentioned in above explanation. At last a random value is selected from TargetData dictionary for every
+     output data.
+     If TargetData = ``*`` then all the values of the matched row will be treated as TargetData.
+     If Header:Value List = ``[]`` then the defined TargetData will be collected from every row of the defined sheet.
+     i.e.
+     For all value in matching row ``RRD_(sheetName,*,[Header1:[Value1],Header2:[Value1,Value2]])``
+     For TargetData from whole Sheet ``RRD_(sheetName,TargetData,[])``
+     For all data inside sheet ``RRD_(sheetName,*,[])``
+     If a input sheet has multiple cells using ``RRD_`` prefix with a matching data (=header of excel column) in TargetData
+     then they will be treated as one unit. In the output file there will be only one column of that matching header and while
+     selecting random data only the rows which have same value of that header will be considered.
+     i.e. First ``RRD_`` cell has value "x" for the header while selected randomly, then the second cell will select data
+     randomly only from the rows which have "x" value for the same header.
+
+
+All Data Types Format
+=====================
+
+1. Value             = ``<value>``
+2. list of values    = ``[<value1>,<value2>]``
+3. range             = ``<start>-<end>,<step>``
+4. random            = ``RND_[list]``
+5. random from range = ``RND_<start>-<end>,<step>``
+6. List of header    = ``[<title1>, <title2>, <title3>]``
+7. Faker Prefix      = ``FKR_(<type>, <locale>, <number_of_data>)``
+8. RRD Prefix        = ``RRD_(<sheetName>,<TargetData>,[<Header1>:[<Value1>],<Header2>:[<Value1>,<Value2>]])``

+ 1 - 1
docs/_build/html/_sources/OverviewUsage.rst.txt

@@ -23,7 +23,7 @@ Testdata definition. This is super fast, very easy even for end-users but has li
 with all features of the higher end solutions like reporting, fault tolerance, screenshots in case of errors and much more.
 
 
-More powerful and still ways:
+More powerful and still simple ways:
 ------------------------------------
 
 As your requirements grow you want to have Testcase and testrun definition separately (e.g. you want to execute the same

+ 5 - 12
docs/_build/html/_sources/PlannedFeatures.rst.txt

@@ -6,18 +6,16 @@ Short/Medium term features
 ---------------------------
 * Nicer interactive UI-Starter (2020.03)
     * Phase 1 done 2020.02
-    * Phase 2 (UI-elements) (2020.03) --> will move to 2020.04 RC5
-    * Provide live statistics (2020.04)
-* Double Opt-In Automation (2020.03) --> will move to 2020.05 RCx
-* Better support to store test data output to database and export files (2020.04)
-* Katalon Importer/Converter as Webservice (2020.04)
+    * Phase 2 done 2020.04
+    * Provide live statistics (2020.05)
 
 Features for later
 ------------------
-* Better support for multiple sources (e.g. multiple XLSX)
+* Double Opt-In Automation (so far no 'takers')
 * Proof of concept with PyWinAuto
 * Integration with SAP Gui Scripting via VBS and PyWinAuto
-* Better support for Mass testing APIs
+* Improved support for Mass testing APIs
+* Katalon Importer/Converter as Webservice (2020.04)
 * Integration with Atlassian Confluence (for Testcase and Testrun definitions)
 * Integration with Atlassian Confluence (to publish results of testruns)
 * Integration with MS Teams to publish results of Testruns
@@ -31,11 +29,6 @@ PRO-Features
 There's no time plan yet, when a pro version will be released. So far whatever we do goes into the open source version.
 Future features might include:
 
-* DB-Migration tools (to ease the pain of upgrading databases)
-* Multi-User environment (who did when which activity and who changed when which test object)
-* History of Testcases (what was changed when. If urgently needed we could come up with DB-Dump and GIT diff or so.)
-* Test-Canons (deliberately stop test cases multiple times at certain test steps, wait for trigger, then resume. After first Testcase *finished* his first waiting period, start second round of Testcases (that's how the name "Canon" came up). So far implemented in customer project, but needs to be polished up for public version)
-* XML/PDF-Compare
 * Consulting
 * Priority support
 * Testcase creation as a Service

+ 361 - 0
docs/_build/html/_sources/SaveResults2Database.rst.txt

@@ -0,0 +1,361 @@
+Save Testrun Results to Database
+================================
+
+One of the options that ``baangt`` provides to save the results of the executed Testruns is using an SQL database.
+The identification of the database is implemented via the environmental variable BAANGT_RESULTS_DATABASE_URL.
+if ``baangt`` cannot retrieve BAANGT_RESULTS_DATABASE_URL it uses the default database URL:  
+``sqlite:///testrun.db``
+
+Tables
+------
+
+Table: ``testruns``
+^^^^^^^^^^^^^^^^^^^
+Table holds results of the executed Testruns: Testrun Logs
+
+.. list-table:: Testrun Logs
+   :widths: 25 15 60
+   :header-rows: 1
+
+   * - Column
+     - Data Type
+     - Description
+   * - id
+     - BINARY
+     - Testrun Log UUID. Primary key for Testrun Log.
+   * - testrunName
+     - VARCHAR
+     - A name associated with the Testrun.
+   * - logfileName
+     - VARCHAR
+     - Path to the logfile of the Testrun.
+   * - startTime
+     - DATETIME
+     - Satrt time of the Testrun execution.
+   * - endTime
+     - DATETIME
+     - End time of the Testrun execurtion.
+   * - dataFile
+     - VARCHAR
+     - Path to the Data File of the Testrun.
+   * - statusOk
+     - INTEGER
+     - Number of the successful test cases within the executed Testrun.
+   * - statusFailed
+     - INTEGER
+     - Number of the failed test cases within the executed Testrun.
+   * - statusPaused
+     - INTEGER
+     - Number of the paused test cases within the executed Testrun.
+
+
+Table: ``testCaseSequences``
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+Table holds data on the executed test case sequences: TestCaseSequence Logs
+
+.. list-table:: TestCaseSequence Logs
+   :widths: 25 15 60
+   :header-rows: 1
+
+   * - Column
+     - Data Type
+     - Description
+   * - id
+     - BINARY
+     - TestCaseSequence Log UUID. Primary key for TestCaseSequence Log.
+   * - testrun_id
+     - INTEGER
+     - Foreign key to ``testruns``
+       Testrun that contains the test case sequence.
+
+
+Table: ``testCases``
+^^^^^^^^^^^^^^^^^^^^
+Table holds data on the executed test cases: TestCase Logs
+
+.. list-table:: TestCase Logs
+   :widths: 25 15 60
+   :header-rows: 1
+
+   * - Column
+     - Data Type
+     - Description
+   * - id
+     - BINARY
+     - TestCase Log UUID. Primary key for TestCase Log.
+   * - testcase_sequence_id
+     - INTEGER
+     - Foreign key to ``testCaseSequences``
+       Test case sequence that contains the test case.
+
+
+Table: ``globals``
+^^^^^^^^^^^^^^^^^^
+Table holds global variables of the executed Testruns
+
+.. list-table:: Globals
+   :widths: 25 15 60
+   :header-rows: 1
+
+   * - Column
+     - Data Type
+     - Description
+   * - id
+     - INTEGER
+     - Primary key for the global variable.
+   * - name
+     - VARCHAR
+     - Name of the global variable.
+   * - value
+     - VARCHAR
+     - Value of the global variable.
+   * - testrun_id
+     - INTEGER
+     - Foreign key to ``testruns``
+       Testrun that contains the global variable.
+
+
+Table: ``testCaseFields``
+^^^^^^^^^^^^^^^^^^^^^^^^^
+Table holds log fields of the executed test cases
+
+.. list-table:: Testcase Fields
+   :widths: 25 15 60
+   :header-rows: 1
+
+   * - Column
+     - Data Type
+     - Description
+   * - id
+     - INTEGER
+     - Primary key for the field.
+   * - name
+     - VARCHAR
+     - Name of the field.
+   * - value
+     - VARCHAR
+     - Value of the field.
+   * - testcase_id
+     - INTEGER
+     - Foreign key to ``testCases``
+       Test case that contains the field.
+
+
+Table: ``networkInfo``
+^^^^^^^^^^^^^^^^^^^^^^
+Table holds info on requests made while execution of the test cases
+
+.. list-table:: Network Info
+   :widths: 25 15 60
+   :header-rows: 1
+
+   * - Column
+     - Data Type
+     - Description
+   * - id
+     - INTEGER
+     - Primary key for the network info.
+   * - browserName
+     - VARCHAR
+     - Browser name that was used to make the request.
+   * - status
+     - INTEGER
+     - The status code of the HTTP response.
+   * - method
+     - VARCHAR
+     - The request method.
+   * - url
+     - VARCHAR
+     - The request URL.
+   * - contentType
+     - VARCHAR
+     - Content-type header of the response.
+   * - contentSize
+     - INTEGER
+     - The size of the response content.
+   * - headers
+     - VARCHAR
+     - A string that represents a list of the response headers in format:
+       ``{'name': HEADER_NAME, 'value': HEADER_VALUE}``
+   * - params
+     - VARCHAR
+     - A string that represents a list of the request GET parameters in format:
+       ``{'name': PARAMETER_NAME, 'value': PARAMETER_VALUE}``
+   * - response
+     - VARCHAR
+     - The content of the response.
+   * - startDateTime
+     - DATETIME
+     - The time when the request was sent.
+   * - duration
+     - INTEGER
+     - The time (in ``ms``) that it took to receive the response after the request was sent.
+   * - testcase_id
+     - INTEGER
+     - Foreign key to ``testCases``
+       Test case that contains the network info.
+
+
+For Developers: ORM API
+--------------------------
+
+``baangt`` provides ORM models to facilatate analysis of Testruns results.
+The models are located in module ``baangt.base.DataBaseORM``
+
+
+TestrunLog
+^^^^^^^^^^^
+Provides interface with table ``testruns``
+
+.. list-table:: baangt.base.DataBaseORM.TestrunLog
+   :widths: 30 70
+   :header-rows: 1
+
+   * - Attribute
+     - Description
+   * - id
+     - Testrun Log UUID as a bianry string.
+   * - testrunName
+     - Name of the associated TestRun.
+   * - logfileName
+     - Path to the associated log file.
+   * - startTime
+     - TestRun start time as a ``datetime.datetime`` object.
+   * - endTime
+     - TestRun start time as a ``datetime.datetime`` object.
+   * - dataFile
+     - Path to the associated Data File.
+   * - statusOk
+     - Number of the successful test cases.
+   * - statusFailed
+     - Number of the failed test cases.
+   * - statusPaused
+     - Number of the paused test cases.
+   * - globalVars
+     - List of the global attributes (as ``GlobalAttribute`` instances) of the associated Testrun.
+   * - testcase_sequences
+     - List of the test case sequences (as ``TestCaseSequenceLog`` instances) within the associated Testrun.
+   * - __str__()
+     - Method. Returns Testrun Log UUID as a string.
+   * - to_json()
+     - Method. Returns Testrun Log as a dictionary object.
+
+
+TestCaseSequenceLog
+^^^^^^^^^^^^^^^^^^^
+Provides interface with table ``testCaseSequences``
+
+.. list-table:: baangt.base.DataBaseORM.TestCaseSequenceLog
+   :widths: 30 70
+   :header-rows: 1
+
+   * - Attribute
+     - Description
+   * - id
+     - TestCase Sequence Log UUID as a bianry string.
+   * - testrun
+     - The associated Testrun (as a ``TestrunLog`` instance).
+   * - testcases
+     - List of the test cases (as ``TestCaseLog`` instances) within the associated Test Case Sequence.
+   * - __str__()
+     - Method. Returns TestCase Sequence Log UUID as a string.
+   * - to_json()
+     - Method. Returns TestCase Sequence Log as a dictionary object.
+
+
+TestCaseLog
+^^^^^^^^^^^
+Provides interface with database table ``testCases``
+
+.. list-table:: baangt.base.DataBaseORM.TestCaseLog
+   :widths: 30 70
+   :header-rows: 1
+
+   * - Attribute
+     - Description
+   * - id
+     - TestCase Log UUID as a bianry string.
+   * - testcase_sequence
+     - The associated Test Case Sequence (as a ``TestCaseSequenceLog`` instance).
+   * - fields
+     - List of the attributes (as ``TestCaseField`` instances) of the associated Test Case.
+   * - networkInfo
+     - List of the network requests (as ``TestCaseNetworkInfo`` instances) made while executing the associated Test Case.
+   * - __str__()
+     - Method. Returns TestCase Log UUID as a string.
+   * - to_json()
+     - Method. Returns TestCase Log as a dictionary object.
+
+
+GlobalAttribute
+^^^^^^^^^^^^^^^
+Provides interface with table ``globals``
+
+.. list-table:: baangt.base.DataBaseORM.GlobalAttribute
+   :widths: 30 70
+   :header-rows: 1
+
+   * - Attribute
+     - Description
+   * - name
+     - Name of the global attribute.
+   * - value
+     - Value of the global attribute as a string.
+   * - testrun
+     - The associated Testrun (as a ``TestrunLog`` instance).
+
+
+TestCaseField
+^^^^^^^^^^^^^
+Provides interface with table ``testCaseFields``
+
+.. list-table:: baangt.base.DataBaseORM.TestCaseField
+   :widths: 30 70
+   :header-rows: 1
+
+   * - Attribute
+     - Description
+   * - name
+     - Name of the Test Case Field.
+   * - value
+     - Value of the Test Case Field as a string.
+   * - testcase
+     - The associated test case (as a ``TestCaseLog`` instance).
+
+
+TestCaseNetworkInfo
+^^^^^^^^^^^^^^^^^^^
+Provides interface with table ``networkInfo``
+
+.. list-table:: baangt.base.DataBaseORM.TestCaseField
+   :widths: 30 70
+   :header-rows: 1
+
+   * - Attribute
+     - Description
+   * - browserName
+     - Browser name that mede the request.
+   * - status
+     - Status code of the request as an integer.
+   * - method
+     - The request method used.
+   * - url
+     - The request URL.
+   * - contentType
+     - Type of the response content as a string.
+   * - contentSize
+     - Size of the response content as an integer.
+   * - headers
+     - A lList of the response headers as a string.
+   * - params
+     - A list of the request GET parameters as a string.
+   * - response
+     - The response content as a string.
+   * - startDateTime
+     - The request start time as a ``datetime.datetime`` object.
+   * - duration
+     - The duration of the request in ``ms``.
+   * - testcase
+     - The associated test case (as a ``TestCaseLog`` instance).
+   * - to_json()
+     - Method. Returns the network info as a dictionary object.

+ 93 - 0
docs/_build/html/_sources/SendStatistics.rst.txt

@@ -0,0 +1,93 @@
+**************
+SendStatistics
+**************
+
+While running tests on ``baangt`` we might need to share the report to multiple persons in a team. To do this one might
+have to be present in front of screen and wait for completion of the test. But to overcome this issue we have added a
+functionality in ``baangt`` to send the reports in various platform automatically, thus you don't need to waste your
+time in front of screen just for waiting of completion, our program will take care of that.
+
+Their are 4 different services where we can send test reports. They are:
+
+1. Email
+2. Ms Teams
+3. Slack
+4. Telegram
+
+Lets first discuss things we need to use this services in our program one by one.
+
+**Note :- If you don't need to use any service from the following you just skip that part**
+
+Email
+=====
+
+We don't need anything(except recipients email ids).
+
+Ms Teams
+========
+
+We need webhook url of Ms Teams channel where we need to send reports. If you need any help in getting webhook url you can
+refer to this link:- https://docs.microsoft.com/en-us/microsoftteams/platform/webhooks-and-connectors/how-to/connectors-using#setting-up-a-custom-incoming-webhook
+
+Slack
+=====
+
+We need incoming webhook url for the app which has permission to post message in your group. For further assistance you
+can refer to "`Set up Incoming Webhooks`" section of https://slack.com/intl/en-in/help/articles/115005265063-Incoming-webhooks-for-Slack
+
+Telegram
+========
+
+To send message in telegram channel we need channel username and a bot's HTTP API token who has administrator privilage
+in your channel.
+
+First, to get username of the channel you can simply go to info section of your channel where you will find invite link
+which will look like `t.me/your_channel_username` here your_channel_username is what we need.
+
+Now to get HTTP API token of bot, first we need to create a bot. To create a new bot you need to search for `@botfather` in
+telegram. If you are first time user of BotFather then you will see an introduction and a start button in the bottom. If
+you don't see start button but seeing a text area in bottom you can just type ``/start`` then to create a new bot you
+have to select or type ``/newbot`` after that it will ask a name for your bot. You can name it anything but I for best
+practice we will use `ChannelName bot` after that it will ask a username for your bot which must be unique and the
+username must end with `bot` word so we can use `ChannelName_bot` after sending this you should get a congratulations
+message which means your bot is created. In this congratulation message you will get `HTTP API access token` we will
+need this further in our program.
+
+Our next step is to add the bot in our channel as administrator. Please visit this link for further assistance :-
+https://stackoverflow.com/a/33497769/8784795
+
+Configuring Baangt
+==================
+
+Once we have all the necessary things we just need to add them in ``main.ini`` which must be inside ``ini`` folder.
+If you have used windows installer to setup ``baangt`` then it must be inside `C:/Users/{username}/baangt` directory,
+else it will be in the root directory of baangt. Once you find the ``ini`` folder their must be a main.ini file inside
+it. If it is not their you can make one. Just create a new file name `main` and extension `ini` which will look like
+``main.ini``. Then you can edit it via any text editor. It should look like.
+
+
+| [Default]
+| sendmailto = <email>
+| notificationwithattachment = <True or False>
+| mswebhook = <MsTeam channel webhook url>
+| slackwebhook = <Slack App webhook url>
+| telegrambot = <telegram bot access token>
+| telegramchannel = <telegram channel name>
+
+Configurations of mail:- ``sendmailto`` and ``notificationwithattachment`` are the settings for email. ``sendmailto``
+can contain single recipients or multiple recipients which would look like.
+**sendmailto = example1@xyz.com, example2@xyz.com, example3@xyz.com** inshort they should be comma seperated.
+**notificationwithattachment** should be True if you want to send xlsx result file as attachment in the mail else it
+should be False.
+
+Configuration of MsTeam:- ``mswebhook`` takes single or multiple(comma seperated as above) webhook url and will send
+report in them.
+
+Configuration of Slack:- ``slackwebhook`` takes single or multiple(comma seperated as above) webhook url and will send
+report in them.
+
+Configurations of Telegram:- ``telegrambot`` and ``telegramchannel`` are the settings for telegram. ``telegrambot`` will
+take single value containing API token of bot. ``telegramchannel`` may contain single or multiple(comma seperated as
+above) username of channels. Make sure that all the channels have this bot as administrator.
+
+**Note:- If you don't need to use any of the service out of these four, you can just leave their settings empty**

+ 37 - 0
docs/_build/html/_sources/Variables.rst.txt

@@ -0,0 +1,37 @@
+Dealing with variables
+======================
+
+You know the basic variable format ``$(ColumnFromDataFile)`` which works in Locators and value fields.
+
+For instance:
+    * ``//@id[$(SomeColumnName)]`` will replace the locator at run time with the content of the data file of column ``SomeColumnName``
+    * ``$(URL)`` in the Value 1 or Value 2 will replace the Value at run time with the content of the data file of column ``URL``
+
+You may combine several variables into one expression
+    * ``http://($(BASEURL)-$(URLPART)`` will work, if your data file has the columns ``BASEURL`` and ``URLPART``.
+      Most probably you guessed it already - Column names are case sensitive. And columns may not be used twice.
+
+Special variables for APIs
+--------------------------
+TODO: Write Doku.
+
+Faker
+-----
+
+From Version 2020.04.6rc4 (April 2020) you can also use all the methods, that the famous python module ``Faker`` provides.
+
+The syntax is:
+``$(FAKER.<methodName>)``
+
+Examples:
+    * ``$(FAKER.email)`` will generate random E-Mail addresses
+    * ``$(FAKER.name)`` will generate a random name
+
+To see all the methods, head over to https://faker.readthedocs.io/en/stable/fakerclass.html. Because you use ``baangt``
+you can use all Faker Methods without writing a single line of code.
+
+Info for Developers
+^^^^^^^^^^^^^^^^^^^
+
+Source in ``baangt.base.Faker.py``. Called from ``baangt.TestSteps.TestStepMaster.py`` from ``__getFakerData``.
+Currently it is not supported to hand over parameters.

+ 100 - 0
docs/_build/html/_sources/baangt-Plugin.rst.txt

@@ -0,0 +1,100 @@
+What is a baangt-plugin
+=======================
+
+Simply speaking, one baangt-plugin correspond to one class, and the
+methods in the class correspond to the implements in the plugin.
+
+how to make a baangt-plugin
+===========================
+
+first of all , we need to create a implement class, like this:
+
+::
+
+    import baangt
+
+    from baangt.base.Timing.Timing import Timing
+
+    class TimingHookImpl:
+        
+        @baangt.hook_impl
+        def timing_init(self):
+            return Timing()
+
+        @baangt.hook_impl
+        def timing_takeTime(self, timingObject, timingName, forceNew=False):
+            return timingObject.takeTime(timingName, forceNew)
+
+        @baangt.hook_impl
+        def timing_addAttribute(self, timingObject, attribute, value, timingSection=None):
+            return timingObject.addAttribute(attribute, value, timingSection)
+
+        @baangt.hook_impl
+        def timing_takeTimeSumOutput(self, timingObject):
+            return timingObject.takeTimeSumOutput()
+
+        @baangt.hook_impl
+        def timing_returnTime(self, timingObject):
+            return timingObject.returnTime()
+
+        @baangt.hook_impl
+        def timing_returnTimeSegment(self, timingObject, segment):
+            return timingObject.returnTimeSegment(segment)
+
+        @baangt.hook_impl
+        def timing_resetTime(self, timingObject):
+            return timingObject.resetTime()
+
+and then register this implement class in /baangt/\_*init\_*.py:
+
+::
+
+    from baangt.base.Timing.hookImpls import TimingHookImpl
+
+    plugin_manager.register(plugin=TimingHookImpl())
+
+how the baangt-plugin work
+==========================
+
+for example, after transfer TestRun to a plugin, we can replace the
+code:
+
+::
+
+    from xxx import TestRun
+    TestRun()
+
+by
+
+::
+
+    from xxx import plugin_manager
+    plugin_manager.hook.testRun_init()
+
+this replacement does not change anything of the result of programme's
+execution.
+
+how to replace the existing plugin by your own one
+==================================================
+
+for example, if you want to replace the default TestRun plugin,
+
+you can easily change the implement of TestRun by just unregister the
+default plugin and register your own one:
+
+::
+
+    plugin_manager.unregister(plugin=default_plugin)
+    plugin_manager.register(plugin=my_plugin)
+
+notice that if you don't unregister the old one, two same implements
+(with same function name) in two plugins may both execute if you call
+the function:
+
+::
+
+    plugin_manager.hook.i_got_two_implements()
+
+the order of the execution follows the FILO (first-in-last-out) rule.
+
+Author: Yuyi Shao

+ 4 - 0
docs/_build/html/_sources/changelog.rst.txt

@@ -13,10 +13,14 @@ New features:
 +++++++++++++
 
 * Added more parameters for testruns in the new UI (e.g. BrowserZoomFactor)
+* test data generator for complex random and/or multiplying test conditions created
+* All test data from all test runs is now logged in a database. Additionally to results per test run you can compare
+  results over time. Especially usefull when you have the local proxy server activated!
 
 Bugfixes:
 +++++++++
 
+
 2020.04
 ^^^^^^^
 

+ 4 - 0
docs/_build/html/_sources/contents.rst.txt

@@ -0,0 +1,4 @@
+Error
+=====
+
+This shouldn't be needed! Where is this contents.rst used?

+ 1 - 0
docs/_build/html/_sources/index.rst.txt

@@ -27,6 +27,7 @@ and well documented master functionality.
       Planned Features <PlannedFeatures.rst>
       Browser Drivers <BrowserDrivers.rst>
       Variables <Variables.rst>
+      Results <SendStatistics.rst>
       Datagenerator <Datagenerator.rst>
       For Developers <Developer.rst>
       How2Plugin <baangt-Plugin.rst>

+ 13 - 0
docs/_build/html/_static/theme_overrides.css

@@ -0,0 +1,13 @@
+/* override table width restrictions */
+@media screen and (min-width: 767px) {
+
+   .wy-table-responsive table td {
+      /* !important prevents the common CSS stylesheets from overriding
+         this as on RTD they are loaded after this stylesheet */
+      white-space: normal !important;
+   }
+
+   .wy-table-responsive {
+      overflow: visible !important;
+   }
+}

+ 2 - 1
docs/_build/html/articles/AgileWorkflowIntegration.html

@@ -8,7 +8,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Agile: Where does baangt fit in? &mdash; baangt 2020.5.2rc5 documentation</title>
+  <title>Agile: Where does baangt fit in? &mdash; baangt 1.1.1 documentation</title>
   
 
   
@@ -98,6 +98,7 @@
 <li class="toctree-l1"><a class="reference internal" href="../PlannedFeatures.html">   Planned Features</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../BrowserDrivers.html">   Browser Drivers</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Variables.html">   Variables</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../SendStatistics.html">   Results</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html">DataGenerator</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html#input-file">Input File</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html#data-type">Data Type</a></li>

+ 2 - 1
docs/_build/html/articles/Articles.html

@@ -8,7 +8,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Not Exactly Documentation &mdash; baangt 2020.5.2rc5 documentation</title>
+  <title>Not Exactly Documentation &mdash; baangt 1.1.1 documentation</title>
   
 
   
@@ -98,6 +98,7 @@
 <li class="toctree-l1"><a class="reference internal" href="../PlannedFeatures.html">   Planned Features</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../BrowserDrivers.html">   Browser Drivers</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Variables.html">   Variables</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../SendStatistics.html">   Results</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html">DataGenerator</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html#input-file">Input File</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html#data-type">Data Type</a></li>

+ 2 - 1
docs/_build/html/articles/AsynchronousAndCanonTests.html

@@ -8,7 +8,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Asynchronous vs. Canon tests &mdash; baangt 2020.5.2rc5 documentation</title>
+  <title>Asynchronous vs. Canon tests &mdash; baangt 1.1.1 documentation</title>
   
 
   
@@ -98,6 +98,7 @@
 <li class="toctree-l1"><a class="reference internal" href="../PlannedFeatures.html">   Planned Features</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../BrowserDrivers.html">   Browser Drivers</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Variables.html">   Variables</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../SendStatistics.html">   Results</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html">DataGenerator</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html#input-file">Input File</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html#data-type">Data Type</a></li>

+ 2 - 1
docs/_build/html/articles/BaangtIndustries.html

@@ -8,7 +8,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>baangt In Industries &mdash; baangt 2020.5.2rc5 documentation</title>
+  <title>baangt In Industries &mdash; baangt 1.1.1 documentation</title>
   
 
   
@@ -98,6 +98,7 @@
 <li class="toctree-l1"><a class="reference internal" href="../PlannedFeatures.html">   Planned Features</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../BrowserDrivers.html">   Browser Drivers</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Variables.html">   Variables</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../SendStatistics.html">   Results</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html">DataGenerator</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html#input-file">Input File</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html#data-type">Data Type</a></li>

+ 2 - 1
docs/_build/html/articles/BugSoup.html

@@ -8,7 +8,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Why On Earth Do We Have Bugs In Production? &mdash; baangt 2020.5.2rc5 documentation</title>
+  <title>Why On Earth Do We Have Bugs In Production? &mdash; baangt 1.1.1 documentation</title>
   
 
   
@@ -98,6 +98,7 @@
 <li class="toctree-l1"><a class="reference internal" href="../PlannedFeatures.html">   Planned Features</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../BrowserDrivers.html">   Browser Drivers</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Variables.html">   Variables</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../SendStatistics.html">   Results</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html">DataGenerator</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html#input-file">Input File</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html#data-type">Data Type</a></li>

+ 2 - 1
docs/_build/html/articles/DataDoctor.html

@@ -8,7 +8,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Beware of data generators &mdash; baangt 2020.5.2rc5 documentation</title>
+  <title>Beware of data generators &mdash; baangt 1.1.1 documentation</title>
   
 
   
@@ -98,6 +98,7 @@
 <li class="toctree-l1"><a class="reference internal" href="../PlannedFeatures.html">   Planned Features</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../BrowserDrivers.html">   Browser Drivers</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Variables.html">   Variables</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../SendStatistics.html">   Results</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html">DataGenerator</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html#input-file">Input File</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html#data-type">Data Type</a></li>

+ 2 - 1
docs/_build/html/articles/ProductionSucks.html

@@ -8,7 +8,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Why your production sucks and how to fix it &mdash; baangt 2020.5.2rc5 documentation</title>
+  <title>Why your production sucks and how to fix it &mdash; baangt 1.1.1 documentation</title>
   
 
   
@@ -98,6 +98,7 @@
 <li class="toctree-l1"><a class="reference internal" href="../PlannedFeatures.html">   Planned Features</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../BrowserDrivers.html">   Browser Drivers</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Variables.html">   Variables</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../SendStatistics.html">   Results</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html">DataGenerator</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html#input-file">Input File</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html#data-type">Data Type</a></li>

+ 2 - 1
docs/_build/html/articles/SeleniumGridV4WithBaangt.html

@@ -8,7 +8,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Integration with Selenium Grid V4 &mdash; baangt 2020.5.2rc5 documentation</title>
+  <title>Integration with Selenium Grid V4 &mdash; baangt 1.1.1 documentation</title>
   
 
   
@@ -98,6 +98,7 @@
 <li class="toctree-l1"><a class="reference internal" href="../PlannedFeatures.html">   Planned Features</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../BrowserDrivers.html">   Browser Drivers</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Variables.html">   Variables</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../SendStatistics.html">   Results</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html">DataGenerator</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html#input-file">Input File</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html#data-type">Data Type</a></li>

+ 2 - 1
docs/_build/html/articles/StopTesting.html

@@ -8,7 +8,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Stop testing software… &mdash; baangt 2020.5.2rc5 documentation</title>
+  <title>Stop testing software… &mdash; baangt 1.1.1 documentation</title>
   
 
   
@@ -98,6 +98,7 @@
 <li class="toctree-l1"><a class="reference internal" href="../PlannedFeatures.html">   Planned Features</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../BrowserDrivers.html">   Browser Drivers</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Variables.html">   Variables</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../SendStatistics.html">   Results</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html">DataGenerator</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html#input-file">Input File</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html#data-type">Data Type</a></li>

+ 316 - 0
docs/_build/html/baangt-Plugin.html

@@ -0,0 +1,316 @@
+
+
+<!DOCTYPE html>
+<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
+<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
+<head>
+  <meta charset="utf-8">
+  
+  <meta name="viewport" content="width=device-width, initial-scale=1.0">
+  
+  <title>What is a baangt-plugin &mdash; baangt 1.1.1 documentation</title>
+  
+
+  
+  
+  
+  
+
+  
+  <script type="text/javascript" src="_static/js/modernizr.min.js"></script>
+  
+    
+      <script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
+        <script type="text/javascript" src="_static/jquery.js"></script>
+        <script type="text/javascript" src="_static/underscore.js"></script>
+        <script type="text/javascript" src="_static/doctools.js"></script>
+        <script type="text/javascript" src="_static/language_data.js"></script>
+    
+    <script type="text/javascript" src="_static/js/theme.js"></script>
+
+    
+
+  
+  <link rel="stylesheet" href="_static/css/theme.css" type="text/css" />
+  <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
+  <link rel="stylesheet" href="_static/theme_overrides.css" type="text/css" />
+    <link rel="index" title="Index" href="genindex.html" />
+    <link rel="search" title="Search" href="search.html" />
+    <link rel="next" title="Not Exactly Documentation" href="articles/Articles.html" />
+    <link rel="prev" title="Developer guidelines for custom enhancements" href="Developer.html" /> 
+</head>
+
+<body class="wy-body-for-nav">
+
+   
+  <div class="wy-grid-for-nav">
+    
+    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
+      <div class="wy-side-scroll">
+        <div class="wy-side-nav-search" >
+          
+
+          
+            <a href="index.html" class="icon icon-home"> baangt
+          
+
+          
+          </a>
+
+          
+            
+            
+          
+
+          
+<div role="search">
+  <form id="rtd-search-form" class="wy-form" action="search.html" method="get">
+    <input type="text" name="q" placeholder="Search docs" />
+    <input type="hidden" name="check_keywords" value="yes" />
+    <input type="hidden" name="area" value="default" />
+  </form>
+</div>
+
+          
+        </div>
+
+        <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
+          
+            
+            
+              
+            
+            
+              <p class="caption"><span class="caption-text">Contents:</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="Installation.html">   Installation</a></li>
+<li class="toctree-l1"><a class="reference internal" href="OverviewUsage.html">   Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="simpleExample.html">   First Steps</a></li>
+<li class="toctree-l1"><a class="reference internal" href="Structure.html">   Structure</a></li>
+<li class="toctree-l1"><a class="reference internal" href="ParametersConfigFile.html">   Parameters</a></li>
+<li class="toctree-l1"><a class="reference internal" href="SimpleAPI.html">   First API Test</a></li>
+<li class="toctree-l1"><a class="reference internal" href="TestTypes.html">   Types of Tests</a></li>
+<li class="toctree-l1"><a class="reference internal" href="DataFile.html">   Data file</a></li>
+<li class="toctree-l1"><a class="reference internal" href="SaveResults2Database.html">   Results in Database</a></li>
+<li class="toctree-l1"><a class="reference internal" href="HistoryAndReasons.html">   History</a></li>
+<li class="toctree-l1"><a class="reference internal" href="contributors.html">   Contributions</a></li>
+<li class="toctree-l1"><a class="reference internal" href="changelog.html">   Changelog</a></li>
+<li class="toctree-l1"><a class="reference internal" href="PlannedFeatures.html">   Planned Features</a></li>
+<li class="toctree-l1"><a class="reference internal" href="BrowserDrivers.html">   Browser Drivers</a></li>
+<li class="toctree-l1"><a class="reference internal" href="Variables.html">   Variables</a></li>
+<li class="toctree-l1"><a class="reference internal" href="SendStatistics.html">   Results</a></li>
+<li class="toctree-l1"><a class="reference internal" href="Datagenerator.html">DataGenerator</a></li>
+<li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#input-file">Input File</a></li>
+<li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#data-type">Data Type</a></li>
+<li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#all-data-types-format">All Data Types Format</a></li>
+<li class="toctree-l1"><a class="reference internal" href="Developer.html">   For Developers</a></li>
+<li class="toctree-l1 current"><a class="current reference internal" href="#">What is a baangt-plugin</a></li>
+<li class="toctree-l1"><a class="reference internal" href="#how-to-make-a-baangt-plugin">how to make a baangt-plugin</a></li>
+<li class="toctree-l1"><a class="reference internal" href="#how-the-baangt-plugin-work">how the baangt-plugin work</a></li>
+<li class="toctree-l1"><a class="reference internal" href="#how-to-replace-the-existing-plugin-by-your-own-one">how to replace the existing plugin by your own one</a></li>
+<li class="toctree-l1"><a class="reference internal" href="articles/Articles.html">   :subheader: Articles</a></li>
+<li class="toctree-l1"><a class="reference external" href="http://www.baangt.org">   Web</a></li>
+</ul>
+<p class="caption"><span class="caption-text">Autodocs:</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="docs/baangt.base.html">Autodocs</a></li>
+<li class="toctree-l1"><a class="reference internal" href="docs/modules.html">Modules</a></li>
+</ul>
+
+            
+          
+        </div>
+      </div>
+    </nav>
+
+    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
+
+      
+      <nav class="wy-nav-top" aria-label="top navigation">
+        
+          <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
+          <a href="index.html">baangt</a>
+        
+      </nav>
+
+
+      <div class="wy-nav-content">
+        
+        <div class="rst-content">
+        
+          
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<div role="navigation" aria-label="breadcrumbs navigation">
+
+  <ul class="wy-breadcrumbs">
+    
+      <li><a href="index.html">Docs</a> &raquo;</li>
+        
+      <li>What is a baangt-plugin</li>
+    
+    
+      <li class="wy-breadcrumbs-aside">
+        
+            
+            <a href="_sources/baangt-Plugin.rst.txt" rel="nofollow"> View page source</a>
+          
+        
+      </li>
+    
+  </ul>
+
+  
+  <hr/>
+</div>
+          <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
+           <div itemprop="articleBody">
+            
+  <div class="section" id="what-is-a-baangt-plugin">
+<h1>What is a baangt-plugin<a class="headerlink" href="#what-is-a-baangt-plugin" title="Permalink to this headline">¶</a></h1>
+<p>Simply speaking, one baangt-plugin correspond to one class, and the
+methods in the class correspond to the implements in the plugin.</p>
+</div>
+<div class="section" id="how-to-make-a-baangt-plugin">
+<h1>how to make a baangt-plugin<a class="headerlink" href="#how-to-make-a-baangt-plugin" title="Permalink to this headline">¶</a></h1>
+<p>first of all , we need to create a implement class, like this:</p>
+<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">baangt</span>
+
+<span class="kn">from</span> <span class="nn">baangt.base.Timing.Timing</span> <span class="kn">import</span> <span class="n">Timing</span>
+
+<span class="k">class</span> <span class="nc">TimingHookImpl</span><span class="p">:</span>
+
+    <span class="nd">@baangt</span><span class="o">.</span><span class="n">hook_impl</span>
+    <span class="k">def</span> <span class="nf">timing_init</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+        <span class="k">return</span> <span class="n">Timing</span><span class="p">()</span>
+
+    <span class="nd">@baangt</span><span class="o">.</span><span class="n">hook_impl</span>
+    <span class="k">def</span> <span class="nf">timing_takeTime</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">timingObject</span><span class="p">,</span> <span class="n">timingName</span><span class="p">,</span> <span class="n">forceNew</span><span class="o">=</span><span class="kc">False</span><span class="p">):</span>
+        <span class="k">return</span> <span class="n">timingObject</span><span class="o">.</span><span class="n">takeTime</span><span class="p">(</span><span class="n">timingName</span><span class="p">,</span> <span class="n">forceNew</span><span class="p">)</span>
+
+    <span class="nd">@baangt</span><span class="o">.</span><span class="n">hook_impl</span>
+    <span class="k">def</span> <span class="nf">timing_addAttribute</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">timingObject</span><span class="p">,</span> <span class="n">attribute</span><span class="p">,</span> <span class="n">value</span><span class="p">,</span> <span class="n">timingSection</span><span class="o">=</span><span class="kc">None</span><span class="p">):</span>
+        <span class="k">return</span> <span class="n">timingObject</span><span class="o">.</span><span class="n">addAttribute</span><span class="p">(</span><span class="n">attribute</span><span class="p">,</span> <span class="n">value</span><span class="p">,</span> <span class="n">timingSection</span><span class="p">)</span>
+
+    <span class="nd">@baangt</span><span class="o">.</span><span class="n">hook_impl</span>
+    <span class="k">def</span> <span class="nf">timing_takeTimeSumOutput</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">timingObject</span><span class="p">):</span>
+        <span class="k">return</span> <span class="n">timingObject</span><span class="o">.</span><span class="n">takeTimeSumOutput</span><span class="p">()</span>
+
+    <span class="nd">@baangt</span><span class="o">.</span><span class="n">hook_impl</span>
+    <span class="k">def</span> <span class="nf">timing_returnTime</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">timingObject</span><span class="p">):</span>
+        <span class="k">return</span> <span class="n">timingObject</span><span class="o">.</span><span class="n">returnTime</span><span class="p">()</span>
+
+    <span class="nd">@baangt</span><span class="o">.</span><span class="n">hook_impl</span>
+    <span class="k">def</span> <span class="nf">timing_returnTimeSegment</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">timingObject</span><span class="p">,</span> <span class="n">segment</span><span class="p">):</span>
+        <span class="k">return</span> <span class="n">timingObject</span><span class="o">.</span><span class="n">returnTimeSegment</span><span class="p">(</span><span class="n">segment</span><span class="p">)</span>
+
+    <span class="nd">@baangt</span><span class="o">.</span><span class="n">hook_impl</span>
+    <span class="k">def</span> <span class="nf">timing_resetTime</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">timingObject</span><span class="p">):</span>
+        <span class="k">return</span> <span class="n">timingObject</span><span class="o">.</span><span class="n">resetTime</span><span class="p">()</span>
+</pre></div>
+</div>
+<p>and then register this implement class in /baangt/_*init_*.py:</p>
+<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="kn">from</span> <span class="nn">baangt.base.Timing.hookImpls</span> <span class="kn">import</span> <span class="n">TimingHookImpl</span>
+
+<span class="n">plugin_manager</span><span class="o">.</span><span class="n">register</span><span class="p">(</span><span class="n">plugin</span><span class="o">=</span><span class="n">TimingHookImpl</span><span class="p">())</span>
+</pre></div>
+</div>
+</div>
+<div class="section" id="how-the-baangt-plugin-work">
+<h1>how the baangt-plugin work<a class="headerlink" href="#how-the-baangt-plugin-work" title="Permalink to this headline">¶</a></h1>
+<p>for example, after transfer TestRun to a plugin, we can replace the
+code:</p>
+<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="kn">from</span> <span class="nn">xxx</span> <span class="kn">import</span> <span class="n">TestRun</span>
+<span class="n">TestRun</span><span class="p">()</span>
+</pre></div>
+</div>
+<p>by</p>
+<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="kn">from</span> <span class="nn">xxx</span> <span class="kn">import</span> <span class="n">plugin_manager</span>
+<span class="n">plugin_manager</span><span class="o">.</span><span class="n">hook</span><span class="o">.</span><span class="n">testRun_init</span><span class="p">()</span>
+</pre></div>
+</div>
+<p>this replacement does not change anything of the result of programme’s
+execution.</p>
+</div>
+<div class="section" id="how-to-replace-the-existing-plugin-by-your-own-one">
+<h1>how to replace the existing plugin by your own one<a class="headerlink" href="#how-to-replace-the-existing-plugin-by-your-own-one" title="Permalink to this headline">¶</a></h1>
+<p>for example, if you want to replace the default TestRun plugin,</p>
+<p>you can easily change the implement of TestRun by just unregister the
+default plugin and register your own one:</p>
+<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">plugin_manager</span><span class="o">.</span><span class="n">unregister</span><span class="p">(</span><span class="n">plugin</span><span class="o">=</span><span class="n">default_plugin</span><span class="p">)</span>
+<span class="n">plugin_manager</span><span class="o">.</span><span class="n">register</span><span class="p">(</span><span class="n">plugin</span><span class="o">=</span><span class="n">my_plugin</span><span class="p">)</span>
+</pre></div>
+</div>
+<p>notice that if you don’t unregister the old one, two same implements
+(with same function name) in two plugins may both execute if you call
+the function:</p>
+<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">plugin_manager</span><span class="o">.</span><span class="n">hook</span><span class="o">.</span><span class="n">i_got_two_implements</span><span class="p">()</span>
+</pre></div>
+</div>
+<p>the order of the execution follows the FILO (first-in-last-out) rule.</p>
+<p>Author: Yuyi Shao</p>
+</div>
+
+
+           </div>
+           
+          </div>
+          <footer>
+  
+    <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
+      
+        <a href="articles/Articles.html" class="btn btn-neutral float-right" title="Not Exactly Documentation" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right"></span></a>
+      
+      
+        <a href="Developer.html" class="btn btn-neutral float-left" title="Developer guidelines for custom enhancements" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left"></span> Previous</a>
+      
+    </div>
+  
+
+  <hr/>
+
+  <div role="contentinfo">
+    <p>
+        &copy; Copyright 2020, Bernhard Buhl
+
+    </p>
+  </div>
+  Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>. 
+
+</footer>
+
+        </div>
+      </div>
+
+    </section>
+
+  </div>
+  
+
+
+  <script type="text/javascript">
+      jQuery(function () {
+          SphinxRtdTheme.Navigation.enable(true);
+      });
+  </script>
+
+  
+  
+    
+   
+
+</body>
+</html>

+ 5 - 1
docs/_build/html/changelog.html

@@ -8,7 +8,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Change log &mdash; baangt 2020.5.2rc5 documentation</title>
+  <title>Change log &mdash; baangt 1.1.1 documentation</title>
   
 
   
@@ -119,6 +119,7 @@
 <li class="toctree-l1"><a class="reference internal" href="PlannedFeatures.html">   Planned Features</a></li>
 <li class="toctree-l1"><a class="reference internal" href="BrowserDrivers.html">   Browser Drivers</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Variables.html">   Variables</a></li>
+<li class="toctree-l1"><a class="reference internal" href="SendStatistics.html">   Results</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html">DataGenerator</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#input-file">Input File</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#data-type">Data Type</a></li>
@@ -211,6 +212,9 @@
 <h3>New features:<a class="headerlink" href="#new-features" title="Permalink to this headline">¶</a></h3>
 <ul class="simple">
 <li><p>Added more parameters for testruns in the new UI (e.g. BrowserZoomFactor)</p></li>
+<li><p>test data generator for complex random and/or multiplying test conditions created</p></li>
+<li><p>All test data from all test runs is now logged in a database. Additionally to results per test run you can compare
+results over time. Especially usefull when you have the local proxy server activated!</p></li>
 </ul>
 </div>
 <div class="section" id="bugfixes">

+ 225 - 0
docs/_build/html/contents.html

@@ -0,0 +1,225 @@
+
+
+<!DOCTYPE html>
+<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
+<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
+<head>
+  <meta charset="utf-8">
+  
+  <meta name="viewport" content="width=device-width, initial-scale=1.0">
+  
+  <title>Error &mdash; baangt 1.1.1 documentation</title>
+  
+
+  
+  
+  
+  
+
+  
+  <script type="text/javascript" src="_static/js/modernizr.min.js"></script>
+  
+    
+      <script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
+        <script type="text/javascript" src="_static/jquery.js"></script>
+        <script type="text/javascript" src="_static/underscore.js"></script>
+        <script type="text/javascript" src="_static/doctools.js"></script>
+        <script type="text/javascript" src="_static/language_data.js"></script>
+    
+    <script type="text/javascript" src="_static/js/theme.js"></script>
+
+    
+
+  
+  <link rel="stylesheet" href="_static/css/theme.css" type="text/css" />
+  <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
+  <link rel="stylesheet" href="_static/theme_overrides.css" type="text/css" />
+    <link rel="index" title="Index" href="genindex.html" />
+    <link rel="search" title="Search" href="search.html" /> 
+</head>
+
+<body class="wy-body-for-nav">
+
+   
+  <div class="wy-grid-for-nav">
+    
+    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
+      <div class="wy-side-scroll">
+        <div class="wy-side-nav-search" >
+          
+
+          
+            <a href="index.html" class="icon icon-home"> baangt
+          
+
+          
+          </a>
+
+          
+            
+            
+          
+
+          
+<div role="search">
+  <form id="rtd-search-form" class="wy-form" action="search.html" method="get">
+    <input type="text" name="q" placeholder="Search docs" />
+    <input type="hidden" name="check_keywords" value="yes" />
+    <input type="hidden" name="area" value="default" />
+  </form>
+</div>
+
+          
+        </div>
+
+        <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
+          
+            
+            
+              
+            
+            
+              <p class="caption"><span class="caption-text">Contents:</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="Installation.html">   Installation</a></li>
+<li class="toctree-l1"><a class="reference internal" href="OverviewUsage.html">   Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="simpleExample.html">   First Steps</a></li>
+<li class="toctree-l1"><a class="reference internal" href="Structure.html">   Structure</a></li>
+<li class="toctree-l1"><a class="reference internal" href="ParametersConfigFile.html">   Parameters</a></li>
+<li class="toctree-l1"><a class="reference internal" href="SimpleAPI.html">   First API Test</a></li>
+<li class="toctree-l1"><a class="reference internal" href="TestTypes.html">   Types of Tests</a></li>
+<li class="toctree-l1"><a class="reference internal" href="DataFile.html">   Data file</a></li>
+<li class="toctree-l1"><a class="reference internal" href="SaveResults2Database.html">   Results in Database</a></li>
+<li class="toctree-l1"><a class="reference internal" href="HistoryAndReasons.html">   History</a></li>
+<li class="toctree-l1"><a class="reference internal" href="contributors.html">   Contributions</a></li>
+<li class="toctree-l1"><a class="reference internal" href="changelog.html">   Changelog</a></li>
+<li class="toctree-l1"><a class="reference internal" href="PlannedFeatures.html">   Planned Features</a></li>
+<li class="toctree-l1"><a class="reference internal" href="BrowserDrivers.html">   Browser Drivers</a></li>
+<li class="toctree-l1"><a class="reference internal" href="Variables.html">   Variables</a></li>
+<li class="toctree-l1"><a class="reference internal" href="SendStatistics.html">   Results</a></li>
+<li class="toctree-l1"><a class="reference internal" href="Datagenerator.html">DataGenerator</a></li>
+<li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#input-file">Input File</a></li>
+<li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#data-type">Data Type</a></li>
+<li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#all-data-types-format">All Data Types Format</a></li>
+<li class="toctree-l1"><a class="reference internal" href="Developer.html">   For Developers</a></li>
+<li class="toctree-l1"><a class="reference internal" href="baangt-Plugin.html">What is a baangt-plugin</a></li>
+<li class="toctree-l1"><a class="reference internal" href="baangt-Plugin.html#how-to-make-a-baangt-plugin">how to make a baangt-plugin</a></li>
+<li class="toctree-l1"><a class="reference internal" href="baangt-Plugin.html#how-the-baangt-plugin-work">how the baangt-plugin work</a></li>
+<li class="toctree-l1"><a class="reference internal" href="baangt-Plugin.html#how-to-replace-the-existing-plugin-by-your-own-one">how to replace the existing plugin by your own one</a></li>
+<li class="toctree-l1"><a class="reference internal" href="articles/Articles.html">   :subheader: Articles</a></li>
+<li class="toctree-l1"><a class="reference external" href="http://www.baangt.org">   Web</a></li>
+</ul>
+<p class="caption"><span class="caption-text">Autodocs:</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="docs/baangt.base.html">Autodocs</a></li>
+<li class="toctree-l1"><a class="reference internal" href="docs/modules.html">Modules</a></li>
+</ul>
+
+            
+          
+        </div>
+      </div>
+    </nav>
+
+    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
+
+      
+      <nav class="wy-nav-top" aria-label="top navigation">
+        
+          <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
+          <a href="index.html">baangt</a>
+        
+      </nav>
+
+
+      <div class="wy-nav-content">
+        
+        <div class="rst-content">
+        
+          
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<div role="navigation" aria-label="breadcrumbs navigation">
+
+  <ul class="wy-breadcrumbs">
+    
+      <li><a href="index.html">Docs</a> &raquo;</li>
+        
+      <li>Error</li>
+    
+    
+      <li class="wy-breadcrumbs-aside">
+        
+            
+            <a href="_sources/contents.rst.txt" rel="nofollow"> View page source</a>
+          
+        
+      </li>
+    
+  </ul>
+
+  
+  <hr/>
+</div>
+          <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
+           <div itemprop="articleBody">
+            
+  <div class="section" id="error">
+<h1>Error<a class="headerlink" href="#error" title="Permalink to this headline">¶</a></h1>
+<p>This shouldn’t be needed! Where is this contents.rst used?</p>
+</div>
+
+
+           </div>
+           
+          </div>
+          <footer>
+  
+
+  <hr/>
+
+  <div role="contentinfo">
+    <p>
+        &copy; Copyright 2020, Bernhard Buhl
+
+    </p>
+  </div>
+  Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>. 
+
+</footer>
+
+        </div>
+      </div>
+
+    </section>
+
+  </div>
+  
+
+
+  <script type="text/javascript">
+      jQuery(function () {
+          SphinxRtdTheme.Navigation.enable(true);
+      });
+  </script>
+
+  
+  
+    
+   
+
+</body>
+</html>

+ 2 - 1
docs/_build/html/contributors.html

@@ -8,7 +8,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Contributions &mdash; baangt 2020.5.2rc5 documentation</title>
+  <title>Contributions &mdash; baangt 1.1.1 documentation</title>
   
 
   
@@ -103,6 +103,7 @@
 <li class="toctree-l1"><a class="reference internal" href="PlannedFeatures.html">   Planned Features</a></li>
 <li class="toctree-l1"><a class="reference internal" href="BrowserDrivers.html">   Browser Drivers</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Variables.html">   Variables</a></li>
+<li class="toctree-l1"><a class="reference internal" href="SendStatistics.html">   Results</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html">DataGenerator</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#input-file">Input File</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#data-type">Data Type</a></li>

+ 2 - 1
docs/_build/html/docs/baangt.TestCase.html

@@ -8,7 +8,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>baangt.TestCase package &mdash; baangt 2020.5.2rc5 documentation</title>
+  <title>baangt.TestCase package &mdash; baangt 1.1.1 documentation</title>
   
 
   
@@ -98,6 +98,7 @@
 <li class="toctree-l1"><a class="reference internal" href="../PlannedFeatures.html">   Planned Features</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../BrowserDrivers.html">   Browser Drivers</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Variables.html">   Variables</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../SendStatistics.html">   Results</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html">DataGenerator</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html#input-file">Input File</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html#data-type">Data Type</a></li>

+ 2 - 1
docs/_build/html/docs/baangt.TestCaseSequence.html

@@ -8,7 +8,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>baangt.TestCaseSequence package &mdash; baangt 2020.5.2rc5 documentation</title>
+  <title>baangt.TestCaseSequence package &mdash; baangt 1.1.1 documentation</title>
   
 
   
@@ -98,6 +98,7 @@
 <li class="toctree-l1"><a class="reference internal" href="../PlannedFeatures.html">   Planned Features</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../BrowserDrivers.html">   Browser Drivers</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Variables.html">   Variables</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../SendStatistics.html">   Results</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html">DataGenerator</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html#input-file">Input File</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html#data-type">Data Type</a></li>

+ 2 - 1
docs/_build/html/docs/baangt.TestSteps.DropsApp.html

@@ -8,7 +8,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>baangt.TestSteps.DropsApp package &mdash; baangt 2020.5.2rc5 documentation</title>
+  <title>baangt.TestSteps.DropsApp package &mdash; baangt 1.1.1 documentation</title>
   
 
   
@@ -98,6 +98,7 @@
 <li class="toctree-l1"><a class="reference internal" href="../PlannedFeatures.html">   Planned Features</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../BrowserDrivers.html">   Browser Drivers</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Variables.html">   Variables</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../SendStatistics.html">   Results</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html">DataGenerator</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html#input-file">Input File</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html#data-type">Data Type</a></li>

+ 2 - 1
docs/_build/html/docs/baangt.TestSteps.html

@@ -8,7 +8,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>baangt.TestSteps package &mdash; baangt 2020.5.2rc5 documentation</title>
+  <title>baangt.TestSteps package &mdash; baangt 1.1.1 documentation</title>
   
 
   
@@ -98,6 +98,7 @@
 <li class="toctree-l1"><a class="reference internal" href="../PlannedFeatures.html">   Planned Features</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../BrowserDrivers.html">   Browser Drivers</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Variables.html">   Variables</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../SendStatistics.html">   Results</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html">DataGenerator</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html#input-file">Input File</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html#data-type">Data Type</a></li>

+ 20 - 3
docs/_build/html/docs/baangt.base.html

@@ -8,7 +8,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>baangt.base package &mdash; baangt 2020.5.2rc5 documentation</title>
+  <title>baangt.base package &mdash; baangt 1.1.1 documentation</title>
   
 
   
@@ -98,6 +98,7 @@
 <li class="toctree-l1"><a class="reference internal" href="../PlannedFeatures.html">   Planned Features</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../BrowserDrivers.html">   Browser Drivers</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Variables.html">   Variables</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../SendStatistics.html">   Results</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html">DataGenerator</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html#input-file">Input File</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html#data-type">Data Type</a></li>
@@ -413,6 +414,22 @@ XLSX and JSON Config files.</p>
 <dd></dd></dl>
 
 <dl class="method">
+<dt id="baangt.base.TestRunUtils.TestRunUtils.replaceClasses">
+<code class="sig-name descname">replaceClasses</code><span class="sig-paren">(</span><em class="sig-param">testRunName</em>, <em class="sig-param">classes: baangt.base.TestRun.ClassesForObjects.ClassesForObjects</em><span class="sig-paren">)</span><a class="headerlink" href="#baangt.base.TestRunUtils.TestRunUtils.replaceClasses" title="Permalink to this definition">¶</a></dt>
+<dd><p>Apart from what is defined in the TestRunDefintion (XLSX or “guessed” by TestRunExcelImporter) the user
+may give new class names in the globals file.</p>
+<p>We shall replace all corresponding appearances with those new class names</p>
+<dl class="field-list simple">
+<dt class="field-odd">Parameters</dt>
+<dd class="field-odd"><p><strong>classes</strong> – </p>
+</dd>
+<dt class="field-even">Returns</dt>
+<dd class="field-even"><p>No return parameter. Changes are kept internally</p>
+</dd>
+</dl>
+</dd></dl>
+
+<dl class="method">
 <dt id="baangt.base.TestRunUtils.TestRunUtils.replaceGlobals">
 <code class="sig-name descname">replaceGlobals</code><span class="sig-paren">(</span><em class="sig-param">globals</em><span class="sig-paren">)</span><a class="headerlink" href="#baangt.base.TestRunUtils.TestRunUtils.replaceGlobals" title="Permalink to this definition">¶</a></dt>
 <dd><p>Will go through all testcase-Settings and replace values with values from global settings, if matched</p>
@@ -436,8 +453,8 @@ XLSX and JSON Config files.</p>
 <em class="property">class </em><code class="sig-prename descclassname">baangt.base.Utils.</code><code class="sig-name descname">utils</code><a class="headerlink" href="#baangt.base.Utils.utils" title="Permalink to this definition">¶</a></dt>
 <dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
 <dl class="method">
-<dt id="baangt.base.Utils.utils.anyting2Boolean">
-<em class="property">static </em><code class="sig-name descname">anyting2Boolean</code><span class="sig-paren">(</span><em class="sig-param">valueIn</em><span class="sig-paren">)</span><a class="headerlink" href="#baangt.base.Utils.utils.anyting2Boolean" title="Permalink to this definition">¶</a></dt>
+<dt id="baangt.base.Utils.utils.anything2Boolean">
+<em class="property">static </em><code class="sig-name descname">anything2Boolean</code><span class="sig-paren">(</span><em class="sig-param">valueIn</em><span class="sig-paren">)</span><a class="headerlink" href="#baangt.base.Utils.utils.anything2Boolean" title="Permalink to this definition">¶</a></dt>
 <dd></dd></dl>
 
 <dl class="method">

+ 2 - 1
docs/_build/html/docs/baangt.html

@@ -8,7 +8,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>baangt module &mdash; baangt 2020.5.2rc5 documentation</title>
+  <title>baangt module &mdash; baangt 1.1.1 documentation</title>
   
 
   
@@ -98,6 +98,7 @@
 <li class="toctree-l1"><a class="reference internal" href="../PlannedFeatures.html">   Planned Features</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../BrowserDrivers.html">   Browser Drivers</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Variables.html">   Variables</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../SendStatistics.html">   Results</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html">DataGenerator</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html#input-file">Input File</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html#data-type">Data Type</a></li>

+ 2 - 1
docs/_build/html/docs/baangt.katalonImporter.html

@@ -8,7 +8,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>baangt.katalonImporter package &mdash; baangt 2020.5.2rc5 documentation</title>
+  <title>baangt.katalonImporter package &mdash; baangt 1.1.1 documentation</title>
   
 
   
@@ -98,6 +98,7 @@
 <li class="toctree-l1"><a class="reference internal" href="../PlannedFeatures.html">   Planned Features</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../BrowserDrivers.html">   Browser Drivers</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Variables.html">   Variables</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../SendStatistics.html">   Results</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html">DataGenerator</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html#input-file">Input File</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html#data-type">Data Type</a></li>

+ 2 - 1
docs/_build/html/docs/baangt.ui.html

@@ -8,7 +8,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>baangt.ui package &mdash; baangt 2020.5.2rc5 documentation</title>
+  <title>baangt.ui package &mdash; baangt 1.1.1 documentation</title>
   
 
   
@@ -97,6 +97,7 @@
 <li class="toctree-l1"><a class="reference internal" href="../PlannedFeatures.html">   Planned Features</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../BrowserDrivers.html">   Browser Drivers</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Variables.html">   Variables</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../SendStatistics.html">   Results</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html">DataGenerator</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html#input-file">Input File</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html#data-type">Data Type</a></li>

+ 2 - 1
docs/_build/html/docs/baangtIA.html

@@ -8,7 +8,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>baangtIA module &mdash; baangt 2020.5.2rc5 documentation</title>
+  <title>baangtIA module &mdash; baangt 1.1.1 documentation</title>
   
 
   
@@ -98,6 +98,7 @@
 <li class="toctree-l1"><a class="reference internal" href="../PlannedFeatures.html">   Planned Features</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../BrowserDrivers.html">   Browser Drivers</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Variables.html">   Variables</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../SendStatistics.html">   Results</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html">DataGenerator</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html#input-file">Input File</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html#data-type">Data Type</a></li>

+ 2 - 1
docs/_build/html/docs/modules.html

@@ -8,7 +8,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>baangt &mdash; baangt 2020.5.2rc5 documentation</title>
+  <title>baangt &mdash; baangt 1.1.1 documentation</title>
   
 
   
@@ -98,6 +98,7 @@
 <li class="toctree-l1"><a class="reference internal" href="../PlannedFeatures.html">   Planned Features</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../BrowserDrivers.html">   Browser Drivers</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Variables.html">   Variables</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../SendStatistics.html">   Results</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html">DataGenerator</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html#input-file">Input File</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html#data-type">Data Type</a></li>

+ 2 - 1
docs/_build/html/docs/setup.html

@@ -8,7 +8,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>setup module &mdash; baangt 2020.5.2rc5 documentation</title>
+  <title>setup module &mdash; baangt 1.1.1 documentation</title>
   
 
   
@@ -98,6 +98,7 @@
 <li class="toctree-l1"><a class="reference internal" href="../PlannedFeatures.html">   Planned Features</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../BrowserDrivers.html">   Browser Drivers</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Variables.html">   Variables</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../SendStatistics.html">   Results</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html">DataGenerator</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html#input-file">Input File</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../Datagenerator.html#data-type">Data Type</a></li>

+ 6 - 3
docs/_build/html/genindex.html

@@ -9,7 +9,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Index &mdash; baangt 2020.5.2rc5 documentation</title>
+  <title>Index &mdash; baangt 1.1.1 documentation</title>
   
 
   
@@ -97,6 +97,7 @@
 <li class="toctree-l1"><a class="reference internal" href="PlannedFeatures.html">   Planned Features</a></li>
 <li class="toctree-l1"><a class="reference internal" href="BrowserDrivers.html">   Browser Drivers</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Variables.html">   Variables</a></li>
+<li class="toctree-l1"><a class="reference internal" href="SendStatistics.html">   Results</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html">DataGenerator</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#input-file">Input File</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#data-type">Data Type</a></li>
@@ -216,7 +217,7 @@
   <td style="width: 33%; vertical-align: top;"><ul>
       <li><a href="docs/baangt.katalonImporter.html#baangt.katalonImporter.katalonImport.translateObjectDefinition.analyze">analyze() (baangt.katalonImporter.katalonImport.translateObjectDefinition method)</a>
 </li>
-      <li><a href="docs/baangt.base.html#baangt.base.Utils.utils.anyting2Boolean">anyting2Boolean() (baangt.base.Utils.utils static method)</a>
+      <li><a href="docs/baangt.base.html#baangt.base.Utils.utils.anything2Boolean">anything2Boolean() (baangt.base.Utils.utils static method)</a>
 </li>
       <li><a href="docs/baangt.base.html#baangt.base.ApiHandling.ApiHandling">ApiHandling (class in baangt.base.ApiHandling)</a>
 </li>
@@ -532,9 +533,11 @@
 </li>
       <li><a href="docs/baangt.base.html#baangt.base.Utils.utils.replaceAllGlobalConstantsInDict">replaceAllGlobalConstantsInDict() (baangt.base.Utils.utils static method)</a>
 </li>
+      <li><a href="docs/baangt.TestSteps.html#baangt.TestSteps.TestStepMaster.TestStepMaster.replaceAllVariables">replaceAllVariables() (baangt.TestSteps.TestStepMaster.TestStepMaster method)</a>
+</li>
   </ul></td>
   <td style="width: 33%; vertical-align: top;"><ul>
-      <li><a href="docs/baangt.TestSteps.html#baangt.TestSteps.TestStepMaster.TestStepMaster.replaceAllVariables">replaceAllVariables() (baangt.TestSteps.TestStepMaster.TestStepMaster method)</a>
+      <li><a href="docs/baangt.base.html#baangt.base.TestRunUtils.TestRunUtils.replaceClasses">replaceClasses() (baangt.base.TestRunUtils.TestRunUtils method)</a>
 </li>
       <li><a href="docs/baangt.base.html#baangt.base.TestRunExcelImporter.TestRunExcelImporter.replaceFieldValueWithValueOfConstant">replaceFieldValueWithValueOfConstant() (baangt.base.TestRunExcelImporter.TestRunExcelImporter method)</a>
 

+ 11 - 2
docs/_build/html/index.html

@@ -8,7 +8,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Welcome to baangt! &mdash; baangt 2020.5.2rc5 documentation</title>
+  <title>Welcome to baangt! &mdash; baangt 1.1.1 documentation</title>
   
 
   
@@ -97,6 +97,7 @@
 <li class="toctree-l1"><a class="reference internal" href="PlannedFeatures.html">   Planned Features</a></li>
 <li class="toctree-l1"><a class="reference internal" href="BrowserDrivers.html">   Browser Drivers</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Variables.html">   Variables</a></li>
+<li class="toctree-l1"><a class="reference internal" href="SendStatistics.html">   Results</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html">DataGenerator</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#input-file">Input File</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#data-type">Data Type</a></li>
@@ -195,7 +196,7 @@ and well documented master functionality.</p>
 </li>
 <li class="toctree-l1"><a class="reference internal" href="OverviewUsage.html">   Overview</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="OverviewUsage.html#the-fastest-simplest-way-to-record-test-cases">The fastest, simplest way to record test cases</a></li>
-<li class="toctree-l2"><a class="reference internal" href="OverviewUsage.html#more-powerful-and-still-ways">More powerful and still ways:</a></li>
+<li class="toctree-l2"><a class="reference internal" href="OverviewUsage.html#more-powerful-and-still-simple-ways">More powerful and still simple ways:</a></li>
 <li class="toctree-l2"><a class="reference internal" href="OverviewUsage.html#subclassing-for-multiply-used-functionality">Subclassing for multiply used functionality</a></li>
 <li class="toctree-l2"><a class="reference internal" href="OverviewUsage.html#baangtdb-for-flexible-powerful-enterprise-grade-test-automation"><code class="docutils literal notranslate"><span class="pre">BaangtDB</span></code> for flexible, powerful enterprise grade test automation</a></li>
 <li class="toctree-l2"><a class="reference internal" href="OverviewUsage.html#to-sum-it-up">To sum it up</a></li>
@@ -273,6 +274,14 @@ and well documented master functionality.</p>
 <li class="toctree-l2"><a class="reference internal" href="Variables.html#faker">Faker</a></li>
 </ul>
 </li>
+<li class="toctree-l1"><a class="reference internal" href="SendStatistics.html">   Results</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="SendStatistics.html#email">Email</a></li>
+<li class="toctree-l2"><a class="reference internal" href="SendStatistics.html#ms-teams">Ms Teams</a></li>
+<li class="toctree-l2"><a class="reference internal" href="SendStatistics.html#slack">Slack</a></li>
+<li class="toctree-l2"><a class="reference internal" href="SendStatistics.html#telegram">Telegram</a></li>
+<li class="toctree-l2"><a class="reference internal" href="SendStatistics.html#configuring-baangt">Configuring Baangt</a></li>
+</ul>
+</li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html">DataGenerator</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#input-file">Input File</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#data-type">Data Type</a></li>

BIN
docs/_build/html/objects.inv


+ 17 - 1
docs/_build/html/py-modindex.html

@@ -8,7 +8,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Python Module Index &mdash; baangt 2020.5.2rc5 documentation</title>
+  <title>Python Module Index &mdash; baangt 1.1.1 documentation</title>
   
 
   
@@ -99,6 +99,7 @@
 <li class="toctree-l1"><a class="reference internal" href="PlannedFeatures.html">   Planned Features</a></li>
 <li class="toctree-l1"><a class="reference internal" href="BrowserDrivers.html">   Browser Drivers</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Variables.html">   Variables</a></li>
+<li class="toctree-l1"><a class="reference internal" href="SendStatistics.html">   Results</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html">DataGenerator</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#input-file">Input File</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#data-type">Data Type</a></li>
@@ -276,11 +277,21 @@
      <tr class="cg-1">
        <td></td>
        <td>&#160;&#160;&#160;
+       <a href="docs/baangt.TestCase.html#module-baangt.TestCase"><code class="xref">baangt.TestCase</code></a></td><td>
+       <em></em></td></tr>
+     <tr class="cg-1">
+       <td></td>
+       <td>&#160;&#160;&#160;
        <a href="docs/baangt.TestCase.html#module-baangt.TestCase.TestCaseMaster"><code class="xref">baangt.TestCase.TestCaseMaster</code></a></td><td>
        <em></em></td></tr>
      <tr class="cg-1">
        <td></td>
        <td>&#160;&#160;&#160;
+       <a href="docs/baangt.TestCaseSequence.html#module-baangt.TestCaseSequence"><code class="xref">baangt.TestCaseSequence</code></a></td><td>
+       <em></em></td></tr>
+     <tr class="cg-1">
+       <td></td>
+       <td>&#160;&#160;&#160;
        <a href="docs/baangt.TestCaseSequence.html#module-baangt.TestCaseSequence.TestCaseSequenceMaster"><code class="xref">baangt.TestCaseSequence.TestCaseSequenceMaster</code></a></td><td>
        <em></em></td></tr>
      <tr class="cg-1">
@@ -291,6 +302,11 @@
      <tr class="cg-1">
        <td></td>
        <td>&#160;&#160;&#160;
+       <a href="docs/baangt.TestSteps.html#module-baangt.TestSteps"><code class="xref">baangt.TestSteps</code></a></td><td>
+       <em></em></td></tr>
+     <tr class="cg-1">
+       <td></td>
+       <td>&#160;&#160;&#160;
        <a href="docs/baangt.TestSteps.DropsApp.html#module-baangt.TestSteps.DropsApp"><code class="xref">baangt.TestSteps.DropsApp</code></a></td><td>
        <em></em></td></tr>
      <tr class="cg-1">

+ 2 - 1
docs/_build/html/search.html

@@ -8,7 +8,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Search &mdash; baangt 2020.5.2rc5 documentation</title>
+  <title>Search &mdash; baangt 1.1.1 documentation</title>
   
 
   
@@ -97,6 +97,7 @@
 <li class="toctree-l1"><a class="reference internal" href="PlannedFeatures.html">   Planned Features</a></li>
 <li class="toctree-l1"><a class="reference internal" href="BrowserDrivers.html">   Browser Drivers</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Variables.html">   Variables</a></li>
+<li class="toctree-l1"><a class="reference internal" href="SendStatistics.html">   Results</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html">DataGenerator</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#input-file">Input File</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#data-type">Data Type</a></li>

File diff suppressed because it is too large
+ 1 - 1
docs/_build/html/searchindex.js


+ 2 - 1
docs/_build/html/simpleExample.html

@@ -8,7 +8,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Jump-start into worry free production deployments &mdash; baangt 2020.5.2rc5 documentation</title>
+  <title>Jump-start into worry free production deployments &mdash; baangt 1.1.1 documentation</title>
   
 
   
@@ -111,6 +111,7 @@
 <li class="toctree-l1"><a class="reference internal" href="PlannedFeatures.html">   Planned Features</a></li>
 <li class="toctree-l1"><a class="reference internal" href="BrowserDrivers.html">   Browser Drivers</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Variables.html">   Variables</a></li>
+<li class="toctree-l1"><a class="reference internal" href="SendStatistics.html">   Results</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html">DataGenerator</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#input-file">Input File</a></li>
 <li class="toctree-l1"><a class="reference internal" href="Datagenerator.html#data-type">Data Type</a></li>