Testing Toaster

From Yocto Project
Revision as of 09:52, 19 August 2015 by Ddalex (talk | contribs) (Created page with "Category:Toaster Toaster has 4 testing suites, targeted at verifying different parts of the system. This document briefly describes each testing suite. == Django Unit T...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigationJump to search


Toaster has 4 testing suites, targeted at verifying different parts of the system. This document briefly describes each testing suite.


Django Unit Tests

Toaster is primarely a Django application. As such, it makes use of the Django test system that runs unit tests on mock data to ensure pieces of functionality work as expected, and prevent regressions.

To run the django unit tests, invoke them as with any Django test suite

   ./bitbake/lib/toaster/manage.py test

To add unit tests, simply add needed tests to the _tests.py_ file in the module you're editing.

Toaster Test System (TTS)

The TTS is a suite aimed at running integration and acceptance tests. Currently, it verifying the correct syntax and form of the Python code, tries to start Toaster in both modes, and runs HTML5 validation on HTML-returning pages.

The tests are designed to be triggered through a continuous integration system.

To start manually it, run the tts test runner:

   ./bitbake/lib/toaster/contrib/tts/runner.py

The oe-selftest toaster tests

These tests are verifying the correctness of the data gathered by the build process - it tests the bitbake/lib/bb/ui/toasterui.py and bitbake/lib/bb/ui/buildinfohelper.py files and the interface to the bitbake server process.


The selenium automated UI tests

The automated UI tests are targeted at validating and identifying regressions in the UI pages. These tests are based on the Selenium framework to drive interactions in the interface.

To run the selenium tests, please use:

   ./ bitbake/lib/toaster/contrib/tts/toasteruitest
  ./bitbake/lib/toaster/contrib/tts/toasteruitest/run_toastertests.py