Skip to content
Martin Weinelt edited this page Feb 19, 2018 · 1 revision

Automated tests would be awesome

Testing Gluon becomes harder with each new feature. Therefore, automated testing. This should be a simple make target (make test).

A simple test scenario may look like this:

  • build gluon using a fixed site for a specific target (e.g. x86 vm)
  • run multiple instances of it in Qemu, connect them on a network
  • check whether each instance pings
  • check whether the status page works on the first of them
  • check whether the mesh works
  • check whether fastd works
  • ...

Mögliche Tests:

  • Funktioniert der Buildprozess?
  • Bootet die Firmware?
  • Funktionieren die Setupmodule, wie erwartet?
  • Funktionieren die upgrade-scripte?
  • Laufen die Services?
  • Funktioniert VPN?
  • Funktioniert Mesh?
  • Funktioniert das Clientnetz?
  • Test auf verschiedenen Hardwareplattformen

Vorhandene Ansätze/Beispiele

  • Das OpenWRT-community-Repo besitzt ein automatisches Testen für PRs
  • LEDE und OpenWRT bauen "nur" Branches.
  • LEDE baut nicht mehr die komplette Toolchain
  • https://github.com/qca/boardfarm Qualcom Boardfarm, automated Testing für OpenWRT basierte Router
  • Eine Kombination aus pyexpect + pyserial + pytest mit serieller Konsole und dummen switchen reicht zum automatisierten Testing
Clone this wiki locally