Topic "Semantic MediaWiki Browser Testing"

From SMW CindyKate - Main
Component 602328
Jump to: navigation, search
SMW CindyKate Main


[edit]
Topic "Semantic MediaWiki Browser Testing" is constituted by properties... ...having values


Topic

Understanding

Use cases to be tested are formulated as playbooks containing Gherkin features on SMW pages

Here are the playbooks and use cases that are currently formulated on SMWCindyKate:

Type "Cucumber Playbook"

Cucumber Playbook "BlueSpice: Tests: Extended Search"
Cucumber Playbook "BlueSpice: Tests: Namespace configuration"
Cucumber Playbook "BlueSpice: Tests: Workflow"

Type "Test Script/Use Case/Manual/Action"

Use Case "Accept revision drafts"
Use Case "Add user groups"
Use Case "BlueSpice: Add pages"
... further results

Each use case specifies two types of scenarios:

  1. a detailed scenario (tagged by @detail) splitting the use case into individual steps in such a way, that the scenario can serve as end user documentation.
  2. a main scenario (tagged by @main) conflating the detail steps into a single main step which shall make it easier to include the use case within other use cases.

The server hosting the SMW to be tested is provisioned with a testing environment

See https://github.com/dataspects/Set-Up-BlueSpice-MediaWiki-Enterprise-Distribution/tree/master/roles/testing_environment

The workstation controlling the testing is provisioned with SMW-Browser-Testing

A profile.yml file is created managing the interaction with target servers/SWMs. Here's a sample:

---

<your_label>:
  mwscriptpath: http://localhost/w/
  mwscriptpathtopage: http://localhost/w/index.php?title=
  mwarticlepath: http://localhost/wiki/
  standard_username: sherman
  standard_password: 
  playbooks_smwurl: http://172.16.0.3/main
  playbooks_smwapi: http://172.16.0.3/m/api.php
  gherkin_section_name: Feature

The playbooks are then run like this:

PROFILE=fds PLAYBOOKS='Component 291015' TAGS='--tags @main' ./run.sh

Testing environment/system setup aspects

For the sake of developing tests and not interacting with a target production SMW but rather a recent clone of it, it makes sense to run the entire testing system in a virtualized environment.

Hence, here are some use cases involved with using VirtualBox for this purpose.