Browse Source

CheckLinks Functionality

bernhardbuhl 4 years ago
parent
commit
6591b0e235
36 changed files with 132 additions and 32 deletions
  1. 9 8
      baangt/TestCase/TestCaseMaster.py
  2. 13 0
      baangt/TestSteps/TestStepMaster.py
  3. 20 0
      baangt/base/BrowserHandling/BrowserHandling.py
  4. 0 9
      baangt/ui/logs/20200129_174558.log
  5. BIN
      docs/_build/doctrees/Developer.doctree
  6. BIN
      docs/_build/doctrees/Installation.doctree
  7. BIN
      docs/_build/doctrees/changelog.doctree
  8. BIN
      docs/_build/doctrees/docs/baangt.TestSteps.doctree
  9. BIN
      docs/_build/doctrees/docs/baangt.base.doctree
  10. BIN
      docs/_build/doctrees/environment.pickle
  11. BIN
      docs/_build/doctrees/simpleExample.doctree
  12. 1 1
      docs/_build/html/DataFile.html
  13. 12 1
      docs/_build/html/Developer.html
  14. 2 0
      docs/_build/html/Installation.html
  15. 1 1
      docs/_build/html/OverviewUsage.html
  16. 1 1
      docs/_build/html/SimpleAPI.html
  17. 1 1
      docs/_build/html/Structure.html
  18. 8 0
      docs/_build/html/_sources/Developer.rst.txt
  19. 3 0
      docs/_build/html/_sources/Installation.rst.txt
  20. 2 1
      docs/_build/html/_sources/changelog.rst.txt
  21. 12 0
      docs/_build/html/_sources/simpleExample.rst.txt
  22. 2 1
      docs/_build/html/articles/AgileWorkflowIntegration.html
  23. 5 1
      docs/_build/html/articles/AsynchronousAndCanonTests.html
  24. 2 1
      docs/_build/html/articles/BugSoup.html
  25. 2 1
      docs/_build/html/articles/StopTesting.html
  26. 2 1
      docs/_build/html/changelog.html
  27. 1 1
      docs/_build/html/docs/baangt-Plugin.html
  28. 7 0
      docs/_build/html/docs/baangt.TestSteps.html
  29. 1 1
      docs/_build/html/docs/baangt.base.html
  30. 1 1
      docs/_build/html/docs/baangt.html
  31. 2 0
      docs/_build/html/genindex.html
  32. BIN
      docs/_build/html/objects.inv
  33. 1 1
      docs/_build/html/searchindex.js
  34. 12 0
      docs/_build/html/simpleExample.html
  35. 9 0
      docs/simpleExample.rst
  36. BIN
      examples/pdfDownloadCompare.xlsx

+ 9 - 8
baangt/TestCase/TestCaseMaster.py

@@ -29,16 +29,17 @@ class TestCaseMaster:
             else:
                 self.browserType = self.testCaseSettings[1][GC.KWARGS_BROWSER].upper()
                 self.browserSettings = self.testCaseSettings[1][GC.BROWSER_ATTRIBUTES]
-                self.mobileType = self.testCaseSettings[1][GC.KWARGS_MOBILE]
-                self.mobileApp = self.testCaseSettings[1][GC.KWARGS_MOBILE_APP]
+                self.mobileType = self.testCaseSettings[1].get(GC.KWARGS_MOBILE)
+                self.mobileApp = self.testCaseSettings[1].get(GC.KWARGS_MOBILE_APP)
                 self.mobile_desired_app = {}
-                self.mobile_desired_app[GC.MOBILE_PLATFORM_NAME] = self.testCaseSettings[1][GC.MOBILE_PLATFORM_NAME]
-                self.mobile_desired_app[GC.MOBILE_DEVICE_NAME] = self.testCaseSettings[1][GC.MOBILE_DEVICE_NAME]
-                self.mobile_desired_app[GC.MOBILE_PLATFORM_VERSION] = self.testCaseSettings[1][GC.MOBILE_PLATFORM_VERSION]
                 self.mobile_app_setting = {}
-                self.mobile_app_setting[GC.MOBILE_APP_URL]= self.testCaseSettings[1][GC.MOBILE_APP_URL]
-                self.mobile_app_setting[GC.MOBILE_APP_PACKAGE] = self.testCaseSettings[1][GC.MOBILE_APP_PACKAGE]
-                self.mobile_app_setting[GC.MOBILE_APP_ACTIVITY] = self.testCaseSettings[1][GC.MOBILE_APP_ACTIVITY]
+                if self.mobileType:
+                    self.mobile_desired_app[GC.MOBILE_PLATFORM_NAME] = self.testCaseSettings[1][GC.MOBILE_PLATFORM_NAME]
+                    self.mobile_desired_app[GC.MOBILE_DEVICE_NAME] = self.testCaseSettings[1][GC.MOBILE_DEVICE_NAME]
+                    self.mobile_desired_app[GC.MOBILE_PLATFORM_VERSION] = self.testCaseSettings[1][GC.MOBILE_PLATFORM_VERSION]
+                    self.mobile_app_setting[GC.MOBILE_APP_URL]= self.testCaseSettings[1][GC.MOBILE_APP_URL]
+                    self.mobile_app_setting[GC.MOBILE_APP_PACKAGE] = self.testCaseSettings[1][GC.MOBILE_APP_PACKAGE]
+                    self.mobile_app_setting[GC.MOBILE_APP_ACTIVITY] = self.testCaseSettings[1][GC.MOBILE_APP_ACTIVITY]
                 self.browser = self.testRunInstance.getBrowser(browserName=self.browserType, browserAttributes=self.browserSettings,
                                                                mobileType=self.mobileType, mobileApp= self.mobileApp,
                                                                desired_app = self.mobile_desired_app, mobile_app_setting = self.mobile_app_setting)

+ 13 - 0
baangt/TestSteps/TestStepMaster.py

@@ -136,6 +136,8 @@ class TestStepMaster:
             elif lActivity == 'PDFCOMPARE':
                 lFiles = self.browserSession.findNewFiles()
                 # fixme: Implement the API-Call here
+            elif lActivity == 'CHECKLINKS':
+                self.checkLinks()
             else:
                 raise BaseException(f"Unknown command in TestStep {lActivity}")
 
@@ -149,6 +151,17 @@ class TestStepMaster:
         self.testcaseDataDict[lValue2] = lIBAN.getRandomIBAN()
         pass
 
+    def checkLinks(self):
+        """
+        Will check all links on the current webpage
+
+        Result will be written into "CheckedLinks" in TestDataDict
+        """
+        if self.testcaseDataDict.get("CheckedLinks"):
+            self.testcaseDataDict["CheckedLinks"] += self.browserSession.checkLinks()
+        else:
+            self.testcaseDataDict["CheckedLinks"] = self.browserSession.checkLinks()
+
     @staticmethod
     def _sanitizeXField(inField):
         """

+ 20 - 0
baangt/base/BrowserHandling/BrowserHandling.py

@@ -766,6 +766,26 @@ class BrowserDriver:
         raise Exceptions.baangtTestStepException(
             f"Element still here after {timeout} seconds. Locator: xpath={xpath}, id={id}")
 
+    def checkLinks(self):
+        """
+        For the current page we'll check all links and return result in format
+        <status_code> <link_that_was_checked>
+
+        :return: List of checked links
+        """
+        lResult = []
+        links = self.driver.find_elements_by_css_selector("a")
+        logger.debug(f"Checking links on page {self.driver.current_url}")
+        for link in links:
+            lHref = link.get_attribute("href")
+            if lHref.startswith("mailto"):
+                pass
+            else:
+                r = requests.head(lHref)
+                lResult.append([r.status_code, lHref])
+                logger.debug(f"Result was: {r.status_code}, {lHref}")
+        return lResult
+
     @staticmethod
     def sleep(sleepTimeinSeconds):
         time.sleep(sleepTimeinSeconds)

File diff suppressed because it is too large
+ 0 - 9
baangt/ui/logs/20200129_174558.log


BIN
docs/_build/doctrees/Developer.doctree


BIN
docs/_build/doctrees/Installation.doctree


BIN
docs/_build/doctrees/changelog.doctree


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


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


BIN
docs/_build/doctrees/environment.pickle


BIN
docs/_build/doctrees/simpleExample.doctree


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

@@ -96,7 +96,7 @@
 <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="articles/Articles.html">:subheader: Articles</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>
 

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

@@ -97,7 +97,10 @@
 <li class="toctree-l2"><a class="reference internal" href="#network-trace">Network trace</a></li>
 <li class="toctree-l2"><a class="reference internal" href="#building-baangt-sources">Building baangt sources</a><ul>
 <li class="toctree-l3"><a class="reference internal" href="#building-pypi">Building pyPi</a></li>
-<li class="toctree-l3"><a class="reference internal" href="#building-executables">Building Executables</a></li>
+<li class="toctree-l3"><a class="reference internal" href="#building-executables">Building Executables</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="#windows-bundle-executables">Windows bundle executables:</a></li>
+</ul>
+</li>
 </ul>
 </li>
 </ul>
@@ -256,6 +259,14 @@ call.</p>
 <li><p><code class="docutils literal notranslate"><span class="pre">git</span> <span class="pre">commit</span> <span class="pre">-m</span> <span class="pre">&lt;version&gt;</span></code></p></li>
 <li><p><code class="docutils literal notranslate"><span class="pre">git</span> <span class="pre">push</span></code></p></li>
 </ul>
+<div class="section" id="windows-bundle-executables">
+<h4>Windows bundle executables:<a class="headerlink" href="#windows-bundle-executables" title="Permalink to this headline">¶</a></h4>
+<ul class="simple">
+<li><p>Install innosetup-qsp (QuickStartPack) Versoin 6 from <a class="reference external" href="https://jrsoftware.org/isdl.php">https://jrsoftware.org/isdl.php</a></p></li>
+<li><p>Open Inno Setup</p></li>
+<li><p>Use Script <code class="docutils literal notranslate"><span class="pre">/windows/baangtSetupWindows.iss</span></code></p></li>
+</ul>
+</div>
 </div>
 </div>
 </div>

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

@@ -177,6 +177,8 @@
 <a class="reference external" href="https://github.com/Athos1972/baangt/tree/master/executables">https://github.com/Athos1972/baangt/tree/master/executables</a> select the archive for your operating system,
 download to your local computer and unzip.</p>
 <p>In the new folder you’ll find <code class="docutils literal notranslate"><span class="pre">baangt</span></code> executable. Click on it and explore examples in <code class="docutils literal notranslate"><span class="pre">/examples</span></code> folder.</p>
+<p>There’s also a video on Youtube: <a class="reference external" href="https://www.youtube.com/watch?v=25wdwElMlH4">https://www.youtube.com/watch?v=25wdwElMlH4</a> and an article with more background
+information in the blog: <a class="reference external" href="https://www.baangt.org/4-ways-to-install-baangt-on-macos-windows-and-linux/">https://www.baangt.org/4-ways-to-install-baangt-on-macos-windows-and-linux/</a></p>
 </div>
 <div class="section" id="install-from-sources">
 <h2>Install from sources<a class="headerlink" href="#install-from-sources" title="Permalink to this headline">¶</a></h2>

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

@@ -106,7 +106,7 @@
 <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="articles/Articles.html">:subheader: Articles</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>
 

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

@@ -104,7 +104,7 @@
 <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="articles/Articles.html">:subheader: Articles</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>
 

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

@@ -103,7 +103,7 @@
 <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="articles/Articles.html">:subheader: Articles</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>
 

+ 8 - 0
docs/_build/html/_sources/Developer.rst.txt

@@ -85,3 +85,11 @@ Building Executables
 * ``git add .`` in the folder ``baangt-executables``
 * ``git commit -m <version>``
 * ``git push``
+
+Windows bundle executables:
+~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+* Install innosetup-qsp (QuickStartPack) Versoin 6 from https://jrsoftware.org/isdl.php
+* Open Inno Setup
+* Use Script ``/windows/baangtSetupWindows.iss``
+

+ 3 - 0
docs/_build/html/_sources/Installation.rst.txt

@@ -12,6 +12,9 @@ download to your local computer and unzip.
 
 In the new folder you'll find ``baangt`` executable. Click on it and explore examples in ``/examples`` folder.
 
+There's also a video on Youtube: https://www.youtube.com/watch?v=25wdwElMlH4 and an article with more background
+information in the blog: https://www.baangt.org/4-ways-to-install-baangt-on-macos-windows-and-linux/
+
 Install from sources
 --------------------
 

+ 2 - 1
docs/_build/html/_sources/changelog.rst.txt

@@ -8,7 +8,8 @@ Summary:
 
 New features
 ++++++++++++
-* SimpleFormat: New short command ``iban`` will create a random IBAN. Powered by Schwifty library.
+* SimpleFormat: New command ``iban`` will create a random IBAN. Powered by Schwifty library.
+* SimpleFormat: New command ``pdfcompare`` compares a downloaded PDF-File with a reference PDF-File and reports differences. Works also well with parallel sessions.
 
 Changes
 +++++++

+ 12 - 0
docs/_build/html/_sources/simpleExample.rst.txt

@@ -228,6 +228,18 @@ More details on Activities
        don't provide a field name (not necessarily one that exists in the input file. Can be any field name!) nothing will
        happen. If you provide input parameters in column ``value`` (``SWIFT`` and/or ``COUNTRY``) the IBAN will be created for that bank-code
        and/or country.
+   * - pdfcompare
+     - In a step before you must have downloaded a PDF-File. Before you can compare, you have to provide a reference PDF
+       to upload. After the upload you'll receive a unique ID for this document. Paste this ID into the ``value`` field.
+   * - CheckLinks
+     - Whenever you enter this command, all (if any) links on the current page will be checked and the status of the
+       link will be reported accordingly. Reporting format is:
+
+       Links on <base_url>:
+
+       <status>:<Link>
+
+       You'll find the output in the Export sheet in the column "CheckedLinks", which will be created automatically.
    * - address_create
      - provide an easy and easily extendable way to generate address data for a test case
        The following fields variable are stored in testcaseDataDict:

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

@@ -96,7 +96,7 @@
 <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 current"><a class="reference internal" href="Articles.html">:subheader: Articles</a><ul class="current">
+<li class="toctree-l1 current"><a class="reference internal" href="Articles.html">   :subheader: Articles</a><ul class="current">
 <li class="toctree-l2"><a class="reference internal" href="ProductionSucks.html"> Production sucks</a></li>
 <li class="toctree-l2"><a class="reference internal" href="DataDoctor.html"> Test data rulez</a></li>
 <li class="toctree-l2"><a class="reference internal" href="BaangtIndustries.html"> Industries 4 baangt</a></li>
@@ -107,6 +107,7 @@
 </li>
 <li class="toctree-l2"><a class="reference internal" href="BugSoup.html"> BugSoup</a></li>
 <li class="toctree-l2"><a class="reference internal" href="AsynchronousAndCanonTests.html"> Canons, that are not DSLR nor music</a></li>
+<li class="toctree-l2"><a class="reference internal" href="SeleniumGridV4WithBaangt.html"> SeleniumGridV4</a></li>
 </ul>
 </li>
 <li class="toctree-l1"><a class="reference external" href="http://www.baangt.org">   Web</a></li>

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

@@ -35,6 +35,7 @@
   <link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
     <link rel="index" title="Index" href="../genindex.html" />
     <link rel="search" title="Search" href="../search.html" />
+    <link rel="next" title="Integration with Selenium Grid V4" href="SeleniumGridV4WithBaangt.html" />
     <link rel="prev" title="Why On Earth Do We Have Bugs In Production?" href="BugSoup.html" /> 
 </head>
 
@@ -95,7 +96,7 @@
 <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 current"><a class="reference internal" href="Articles.html">:subheader: Articles</a><ul class="current">
+<li class="toctree-l1 current"><a class="reference internal" href="Articles.html">   :subheader: Articles</a><ul class="current">
 <li class="toctree-l2"><a class="reference internal" href="ProductionSucks.html"> Production sucks</a></li>
 <li class="toctree-l2"><a class="reference internal" href="DataDoctor.html"> Test data rulez</a></li>
 <li class="toctree-l2"><a class="reference internal" href="BaangtIndustries.html"> Industries 4 baangt</a></li>
@@ -119,6 +120,7 @@
 </li>
 </ul>
 </li>
+<li class="toctree-l2"><a class="reference internal" href="SeleniumGridV4WithBaangt.html"> SeleniumGridV4</a></li>
 </ul>
 </li>
 <li class="toctree-l1"><a class="reference external" href="http://www.baangt.org">   Web</a></li>
@@ -699,6 +701,8 @@ the precondition for continuation was met.</p>
   
     <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
       
+        <a href="SeleniumGridV4WithBaangt.html" class="btn btn-neutral float-right" title="Integration with Selenium Grid V4" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right"></span></a>
+      
       
         <a href="BugSoup.html" class="btn btn-neutral float-left" title="Why On Earth Do We Have Bugs In Production?" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left"></span> Previous</a>
       

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

@@ -96,7 +96,7 @@
 <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 current"><a class="reference internal" href="Articles.html">:subheader: Articles</a><ul class="current">
+<li class="toctree-l1 current"><a class="reference internal" href="Articles.html">   :subheader: Articles</a><ul class="current">
 <li class="toctree-l2"><a class="reference internal" href="ProductionSucks.html"> Production sucks</a></li>
 <li class="toctree-l2"><a class="reference internal" href="DataDoctor.html"> Test data rulez</a></li>
 <li class="toctree-l2"><a class="reference internal" href="BaangtIndustries.html"> Industries 4 baangt</a></li>
@@ -142,6 +142,7 @@
 </ul>
 </li>
 <li class="toctree-l2"><a class="reference internal" href="AsynchronousAndCanonTests.html"> Canons, that are not DSLR nor music</a></li>
+<li class="toctree-l2"><a class="reference internal" href="SeleniumGridV4WithBaangt.html"> SeleniumGridV4</a></li>
 </ul>
 </li>
 <li class="toctree-l1"><a class="reference external" href="http://www.baangt.org">   Web</a></li>

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

@@ -96,7 +96,7 @@
 <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 current"><a class="reference internal" href="Articles.html">:subheader: Articles</a><ul class="current">
+<li class="toctree-l1 current"><a class="reference internal" href="Articles.html">   :subheader: Articles</a><ul class="current">
 <li class="toctree-l2"><a class="reference internal" href="ProductionSucks.html"> Production sucks</a></li>
 <li class="toctree-l2"><a class="reference internal" href="DataDoctor.html"> Test data rulez</a></li>
 <li class="toctree-l2"><a class="reference internal" href="BaangtIndustries.html"> Industries 4 baangt</a></li>
@@ -108,6 +108,7 @@
 <li class="toctree-l2"><a class="reference internal" href="AgileWorkflowIntegration.html"> bAanGtILE</a></li>
 <li class="toctree-l2"><a class="reference internal" href="BugSoup.html"> BugSoup</a></li>
 <li class="toctree-l2"><a class="reference internal" href="AsynchronousAndCanonTests.html"> Canons, that are not DSLR nor music</a></li>
+<li class="toctree-l2"><a class="reference internal" href="SeleniumGridV4WithBaangt.html"> SeleniumGridV4</a></li>
 </ul>
 </li>
 <li class="toctree-l1"><a class="reference external" href="http://www.baangt.org">   Web</a></li>

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

@@ -184,7 +184,8 @@
 <div class="section" id="new-features">
 <h3>New features<a class="headerlink" href="#new-features" title="Permalink to this headline">¶</a></h3>
 <ul class="simple">
-<li><p>SimpleFormat: New short command <code class="docutils literal notranslate"><span class="pre">iban</span></code> will create a random IBAN. Powered by Schwifty library.</p></li>
+<li><p>SimpleFormat: New command <code class="docutils literal notranslate"><span class="pre">iban</span></code> will create a random IBAN. Powered by Schwifty library.</p></li>
+<li><p>SimpleFormat: New command <code class="docutils literal notranslate"><span class="pre">pdfcompare</span></code> compares a downloaded PDF-File with a reference PDF-File and reports differences. Works also well with parallel sessions.</p></li>
 </ul>
 </div>
 <div class="section" id="changes">

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

@@ -94,7 +94,7 @@
 <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="../articles/Articles.html">:subheader: Articles</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>
 

+ 7 - 0
docs/_build/html/docs/baangt.TestSteps.html

@@ -199,6 +199,13 @@
 <dd></dd></dl>
 
 <dl class="method">
+<dt id="baangt.TestSteps.TestStepMaster.TestStepMaster.checkLinks">
+<code class="sig-name descname">checkLinks</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#baangt.TestSteps.TestStepMaster.TestStepMaster.checkLinks" title="Permalink to this definition">¶</a></dt>
+<dd><p>Will check all links on the current webpage</p>
+<p>Result will be written into “CheckedLinks” in TestDataDict</p>
+</dd></dl>
+
+<dl class="method">
 <dt id="baangt.TestSteps.TestStepMaster.TestStepMaster.doSaveData">
 <code class="sig-name descname">doSaveData</code><span class="sig-paren">(</span><em class="sig-param">toField</em>, <em class="sig-param">valueForField</em><span class="sig-paren">)</span><a class="headerlink" href="#baangt.TestSteps.TestStepMaster.TestStepMaster.doSaveData" title="Permalink to this definition">¶</a></dt>
 <dd></dd></dl>

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

@@ -428,7 +428,7 @@ structural elements) into the deep dict.</p>
 
 <dl class="method">
 <dt id="baangt.base.TestRunExcelImporter.TestRunExcelImporter.importConfig">
-<code class="sig-name descname">importConfig</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#baangt.base.TestRunExcelImporter.TestRunExcelImporter.importConfig" title="Permalink to this definition">¶</a></dt>
+<code class="sig-name descname">importConfig</code><span class="sig-paren">(</span><em class="sig-param">global_settings</em><span class="sig-paren">)</span><a class="headerlink" href="#baangt.base.TestRunExcelImporter.TestRunExcelImporter.importConfig" title="Permalink to this definition">¶</a></dt>
 <dd></dd></dl>
 
 <dl class="method">

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

@@ -94,7 +94,7 @@
 <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="../articles/Articles.html">:subheader: Articles</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>
 

+ 2 - 0
docs/_build/html/genindex.html

@@ -288,6 +288,8 @@
   <td style="width: 33%; vertical-align: top;"><ul>
       <li><a href="docs/baangt.base.html#baangt.base.CliAndInteractive.callTestrun">callTestrun() (in module baangt.base.CliAndInteractive)</a>
 </li>
+      <li><a href="docs/baangt.TestSteps.html#baangt.TestSteps.TestStepMaster.TestStepMaster.checkLinks">checkLinks() (baangt.TestSteps.TestStepMaster.TestStepMaster method)</a>
+</li>
       <li><a href="docs/baangt.base.html#baangt.base.TestRunDatabaseCreate.TestRunDatabaseCreate.commit">commit() (baangt.base.TestRunDatabaseCreate.TestRunDatabaseCreate method)</a>
 </li>
       <li><a href="docs/baangt.base.html#baangt.base.TestRunDatabaseCreate.TestRunDatabaseCreate.createActivityTypes">createActivityTypes() (baangt.base.TestRunDatabaseCreate.TestRunDatabaseCreate method)</a>

BIN
docs/_build/html/objects.inv


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


+ 12 - 0
docs/_build/html/simpleExample.html

@@ -444,6 +444,18 @@ don’t provide a field name (not necessarily one that exists in the input file.
 happen. If you provide input parameters in column <code class="docutils literal notranslate"><span class="pre">value</span></code> (<code class="docutils literal notranslate"><span class="pre">SWIFT</span></code> and/or <code class="docutils literal notranslate"><span class="pre">COUNTRY</span></code>) the IBAN will be created for that bank-code
 and/or country.</p></td>
 </tr>
+<tr class="row-even"><td><p>pdfcompare</p></td>
+<td><p>In a step before you must have downloaded a PDF-File. Before you can compare, you have to provide a reference PDF
+to upload. After the upload you’ll receive a unique ID for this document. Paste this ID into the <code class="docutils literal notranslate"><span class="pre">value</span></code> field.</p></td>
+</tr>
+<tr class="row-odd"><td><p>CheckLinks</p></td>
+<td><p>Whenever you enter this command, all (if any) links on the current page will be checked and the status of the
+link will be reported accordingly. Reporting format is:</p>
+<p>Links on &lt;base_url&gt;:</p>
+<p>&lt;status&gt;:&lt;Link&gt;</p>
+<p>You’ll find the output in the Export sheet in the column “CheckedLinks”, which will be created automatically.</p>
+</td>
+</tr>
 <tr class="row-even"><td><p>address_create</p></td>
 <td><p>provide an easy and easily extendable way to generate address data for a test case
 The following fields variable are stored in testcaseDataDict:</p>

+ 9 - 0
docs/simpleExample.rst

@@ -231,6 +231,15 @@ More details on Activities
    * - pdfcompare
      - In a step before you must have downloaded a PDF-File. Before you can compare, you have to provide a reference PDF
        to upload. After the upload you'll receive a unique ID for this document. Paste this ID into the ``value`` field.
+   * - CheckLinks
+     - Whenever you enter this command, all (if any) links on the current page will be checked and the status of the
+       link will be reported accordingly. Reporting format is:
+
+       Links on <base_url>:
+
+       <status>:<Link>
+
+       You'll find the output in the Export sheet in the column "CheckedLinks", which will be created automatically.
    * - address_create
      - provide an easy and easily extendable way to generate address data for a test case
        The following fields variable are stored in testcaseDataDict:

BIN
examples/pdfDownloadCompare.xlsx