From Fedora Project Wiki
m (update packager dashboard link) |
|||
(34 intermediate revisions by 4 users not shown) | |||
Line 2: | Line 2: | ||
{{autolang|base=yes}} | {{autolang|base=yes}} | ||
The [[QA]] team develops tools to make testing easier and more repeatable. We have several projects ranging from some that are pretty simple and new developer friendly to complex and challenging stuff at the cutting edge of the field. Contact [[User:tflink|Tim Flink]] or the {{fplist|qa-devel}} mailing list if you're interesting in helping to build new tools for Fedora QA. | |||
= QA tools = | |||
= | == Test Automation == | ||
; [ | ; [[ResultsDB]] : A generic storage of (automated) test results. Designed to be lightweight, simple, scalable and fast. [https://docs.fedoraproject.org/en-US/ci/ Fedora CI] and [[OpenQA]] results are reported to ResultsDB. | ||
; [https:// | ; [https://pagure.io/taskotron/resultsdb_conventions resultsdb_conventions] : A Python library that represents certain conventions for storing results in [[ResultsDB]] as code, and makes it easy to report results that comply with the conventions. | ||
; [[openQA]] : We use [http://open.qa this tool] (developed by our friends at [https://www.suse.com/ SUSE], now with contributions from us too) to automate certain release test cases, especially installation with [[Anaconda]]. We develop [https://pagure.io/fedora-qa/os-autoinst-distri-fedora Fedora tests] for openQA, along with a [https://pagure.io/fedora-qa/fedora_openqa scheduler / result forwarder] and a [https://pagure.io/fedora-qa/createhdds hard disk image creator]. The production Fedora instance is [https://openqa.fedoraproject.org here]. | |||
; [ | ; [https://pagure.io/testcloud testcloud] : testcloud is a tool to simplify and automate the local deployment of cloud based virtual machines for testing and development. It is used as part of Fedora CI workflow and also for manual Cloud images testing during release validation. | ||
== Release validation testing == | |||
; [[ | ; [https://pagure.io/fedora-qa/python-wikitcms/ python-wikitcms], [https://pagure.io/fedora-qa/relval/ relval] and [https://pagure.io/fedora-qa/testdays/ testdays]: A Python library and CLI based upon it for performing various [[QA:Release_validation_test_plan|release validation testing]] tasks in the [[Wikitcms]] 'test management system' (the set of wiki pages in which release validation test results are stored). testdays can perform a few basic operations on [[Test_Days|Test Day]] pages. [https://pagure.io/fedora-qa/relvalconsumer/ relvalconsumer] is a [https://www.fedmsg.com Fedmsg] consumer which creates validation test events. | ||
; [ | ; [https://pagure.io/fedora-qa/check-compose/ check-compose]: A script for running informational checks on a Fedora compose and printing or mailing out the results. | ||
; [https://pagure.io/fedora_nightlies fedora_nightlies]: A project comprising a static page generator and some fedmsg consumers that together produce [https://www.happyassassin.net/nightlies.html a page] linking to the most successful recent compose of each Fedora image for [[Rawhide]] and [[Branched]]. Also lists most recent successfully-tested image, for images tested by openQA or Autocloud. | |||
== Test case reporting == | |||
; [[QA:TestdayApp|Test Days App]] : A web application for providing results from [[QA/Test Days|Test Days]] events. It uses [[ResultsDB]] as a backend. | |||
== Bug reporting == | |||
; [https://qa.fedoraproject.org/blockerbugs/ Blocker Bugs App] : A web application to display current [[QA:SOP blocker bug process|blocker bugs]] during our pre-release cycle. [https://pagure.io/fedora-qa/blockerbugs Project repo]. | |||
== Test update feedback == | |||
; [https:// | ; [[Fedora Easy Karma]] : A command line tool that makes it easy to report feedback for any updates-testing packages currently installed. | ||
== Mixed bag == | |||
; [https://pagure.io/fedora-qa/qa-misc Fedora QA tools] : A git repository containing various small tools. | |||
; [https://packager-dashboard.fedoraproject.org Packager Dashboard] : A succinct status summary for all packages owned by a given packager. [https://pagure.io/fedora-qa/packager_dashboard Project repo]. | |||
= | == Statistics == | ||
; [ | ; [https://pagure.io/fedora-qa/qa-stats Fedora QA statistics tools] : Tools for generating statistics on user contributions. [https://pagure.io/fedora-qa/relval/ relval] also has some functions for doing this. See [[QA:Recognition|Recognition]] for more details. | ||
= Infrastructure tools = | |||
These tools we use as our support infrastructure during QA tools development. | |||
; [https://pagure.io/group/fedora-qa Pagure team projects] : Pagure repositories related to our tools and needs. | |||
[[Category:QA]] | [[Category:QA]] |
Latest revision as of 13:02, 19 September 2022
The QA team develops tools to make testing easier and more repeatable. We have several projects ranging from some that are pretty simple and new developer friendly to complex and challenging stuff at the cutting edge of the field. Contact Tim Flink or the qa-devel mailing list if you're interesting in helping to build new tools for Fedora QA.
QA tools
Test Automation
- ResultsDB
- A generic storage of (automated) test results. Designed to be lightweight, simple, scalable and fast. Fedora CI and OpenQA results are reported to ResultsDB.
- resultsdb_conventions
- A Python library that represents certain conventions for storing results in ResultsDB as code, and makes it easy to report results that comply with the conventions.
- openQA
- We use this tool (developed by our friends at SUSE, now with contributions from us too) to automate certain release test cases, especially installation with Anaconda. We develop Fedora tests for openQA, along with a scheduler / result forwarder and a hard disk image creator. The production Fedora instance is here.
- testcloud
- testcloud is a tool to simplify and automate the local deployment of cloud based virtual machines for testing and development. It is used as part of Fedora CI workflow and also for manual Cloud images testing during release validation.
Release validation testing
- python-wikitcms, relval and testdays
- A Python library and CLI based upon it for performing various release validation testing tasks in the Wikitcms 'test management system' (the set of wiki pages in which release validation test results are stored). testdays can perform a few basic operations on Test Day pages. relvalconsumer is a Fedmsg consumer which creates validation test events.
- check-compose
- A script for running informational checks on a Fedora compose and printing or mailing out the results.
- fedora_nightlies
- A project comprising a static page generator and some fedmsg consumers that together produce a page linking to the most successful recent compose of each Fedora image for Rawhide and Branched. Also lists most recent successfully-tested image, for images tested by openQA or Autocloud.
Test case reporting
- Test Days App
- A web application for providing results from Test Days events. It uses ResultsDB as a backend.
Bug reporting
- Blocker Bugs App
- A web application to display current blocker bugs during our pre-release cycle. Project repo.
Test update feedback
- Fedora Easy Karma
- A command line tool that makes it easy to report feedback for any updates-testing packages currently installed.
Mixed bag
- Fedora QA tools
- A git repository containing various small tools.
- Packager Dashboard
- A succinct status summary for all packages owned by a given packager. Project repo.
Statistics
- Fedora QA statistics tools
- Tools for generating statistics on user contributions. relval also has some functions for doing this. See Recognition for more details.
Infrastructure tools
These tools we use as our support infrastructure during QA tools development.
- Pagure team projects
- Pagure repositories related to our tools and needs.