os-autoinst / openQA

openQA web-frontend, scheduler and tools.
http://openqa.opensuse.org/
GNU General Public License v2.0
314 stars 206 forks source link
hacktoberfest perl test-automation test-scheduling testing

:circleci: image:https://circleci.com/gh/os-autoinst/openQA/tree/master.svg?style=svg["CircleCI", link="https://circleci.com/gh/os-autoinst/openQA/tree/master"] :codecov: image:https://codecov.io/gh/os-autoinst/openQA/branch/master/graph/badge.svg[link=https://codecov.io/gh/os-autoinst/openQA] :appliance: image:https://openqa.opensuse.org/tests/latest/badge?arch=x86_64&distri=openqa&flavor=dev&machine=64bit-2G&test=openqa_install%2Bpublish&version=Tumbleweed[link="https://openqa.opensuse.org/tests/latest?arch=x86_64&distri=openqa&flavor=dev&machine=64bit-2G&test=openqa_install%2Bpublish&version=Tumbleweed"]

= openQA

{codecov} {circleci} {appliance}

openQA is a testing framework that allows you to test GUI applications on one hand and bootloader and kernel on the other. In both cases, it is difficult to script tests and verify the output. Output can be a popup window or it can be an error in early boot even before init is executed.

Therefore openQA runs virtual machines and closely monitors their state and runs tests on them.

The testing framework can be divided in two parts. The one that is hosted in this repository contains the web frontend and management logic (test scheduling, management, high-level API, ...)

The other part that you need to run openQA is the OS-autoinst test engine that is hosted in a separate https://github.com/os-autoinst/os-autoinst[repository].

== Getting started

The project's information is organized into four basic documents. As a first step, read the link:docs/GettingStarted.asciidoc[Starter Guide] and then, if needed, proceed to the link:docs/Installing.asciidoc[Installation Guide].

For users of the openQA web interface or the REST API consult link:docs/UsersGuide.asciidoc[Users Guide].

If you are interested in writing tests using openQA read the link:docs/WritingTests.asciidoc[Tests Developer Guide].

Try out running tests with openQA in a browser in https://codespaces.new/os-autoinst/openQA?quickstart=1[our Codespace]. See also: https://docs.github.com/en/codespaces[GitHub Codespaces documentation]

See https://open.qa/docs/#_openqa_in_a_browser[openQA in a browser] for documentation on how to use it.

== Contributing [id="getting_involved"]

If you are interested in contributing to openQA itself, check the link:docs/Contributing.asciidoc[Developer Guide], write your code and send a pull request ;-)

=== Issue trackers and support :openqav3: https://progress.opensuse.org/projects/openqav3[openQAv3 project]

Our main issue tracker is at {openqav3} in openSUSE's project management tool. This Redmine instance is used to coordinate the main development effort organizing the existing issues (bugs and desired features) into 'target versions'.

Find contact details and meet developers over http://open.qa/contact/[our contact page].

== Releases

openQA is developed on a continuous base where every commit in the git master branch is considered stable and a valid and installable version. The old tags on github are therefore misleading.

== License All code is licensed under link:COPYING[GPL-2-or-later] unless stated otherwise in particular files. This does not apply to code found in the assets/3rdparty directory. It contains third-party code and the relevant licenses can be found in the root directory of this code repository.