Sphinx-Integration

Sphinx- und ReadTheDocs-Unterstützung für das Robot-Framework

sphinxcontrib-robotdoc ist eine Erweiterung von Sphinx, zur Übernahme der Robot-Framework-Tests.

Dabei werden zwei neue Docutils- Direktiven eingeführt: robot_tests und robot_keywords. Beide Direktiven erlauben die folgenden Angaben:

  • Filter in Form regulärer Ausdrücke
  • Pfadangabe zu den Robot-Framework-Testdaten und -Ressourcen.
  • Auswahl der Tests in Form einer Komma-separierten Tag-Liste

Beispiele

Die folgenden Beispiele können z.B. eingebunden werden in vs_buildout/src/vs.registration/docs/index.rst.

  • Einbinden aller Tests einer Testsuite:

    .. robot_tests::
       :source: ../src/vs/registration/tests/my_suite.txt
    
  • Alles Tests einer Testsuite, die mit Log beginnen:

    .. robot_tests:: Log.*
       :source: ../src/vs/registration/tests/my_suite.txt
    
  • Einbinden aller Tests, die mit login oder logout getaggt sind:

    .. robot_tests::
       :source: ../src/vs/registration/tests/my_suite.txt
       :tags: login, logout
    
  • Einbinden aller user keywords eines Tests oder eine Ressource:

    .. robot_keywords::
       :source: ../src/my_package/tests/acceptance/my_suite.txt
    
  • Einbinden aller user keywords, die mit Log beginnen:

    .. robot_keywords:: Log.*
       :source: ../src/my_package/tests/acceptance/my_suite.txt
    

ReadTheDocs-Unterstützung

ReadTheDocs unterstützt eigene Sphinx-Plugins:

  1. Zunächst wird das Plugin in der Sphinx-Konfigurationsdatei (conf.py) in die Liste der èxtensions` eingetragen:

    extensions = ['sphinxcontrib_robotdoc']
    
  2. Das Plugin sollte auf PyPI veröffentlicht worden sein, siehe sphinxcontrib-robotdoc.

  3. Desweiteren soll das ReadTheDocs-Project mit virtualenv erstellt werden:

    Use virtualenv
    [x]  Install your project inside a virtualenv using setup.py install
    
  4. Es muss eine pip requirements-Datei geben, das das Sphinx- Plugin (und ggf. die mindestens erforderliche Version) enthält:

    sphinxcontrib-robotdoc>=0.3.4
    
  5. Ggf. kann die requirements-Datei nur für ReadTheDocs bereitgestellt werden indem sie in einem Unterverzeichnis erstellt wird, z.B. in ./docs/requirements.txt.

  6. Schließlich geben Sie im ReadTheDocs-Dashboard den Pfad zu Ihrer requirements-Datei an:

    Requirements file:
    docs/requirements.txt