Qt wiki will be updated on October 12th 2023 starting at 11:30 AM (EEST) and the maintenance will last around 2-3 hours. During the maintenance the site will be unavailable.

Qt Metrics 2 Backlog

From Qt Wiki
Jump to navigation Jump to search

This is the backlog for Qt Metrics 2 site that is currently under development.

The priority **** items are the core functionality and would be the target prior to launch or wider use.

The priority *** items are considered content/functionality for basic use as requested by the key stateholders.

In case of proposals or improvement ideas please contact Juha Sippola (report builder, database) or Tony Sarajärvi (parser).

Data reliability and completeness (database and parser)

Status Priority Item
DONE **** Show the actual testset parent (not the Qt5 where it was run) (Code Review)
DONE **** Change build_number (int) to build_key (string) for the new-CI (Code Review); UPDATE: type changed to 64bit int, BIGINT in MySQL (Code Review)
DONE *** Get testfunctions from xml (Code Review)
DONE *** Get testrows from xml (Code Review)
DONE *** Change testset_run.testcases_xxx to total_xxx (terminology change) (Code Review)
DONE *** Database indexing and query optimization (for performance)
idle * Database normalisation: result fields in the *_run tables should have a separate table instead of the enums (could also make the naming more flexible)
idle * Database normalisation: db_status table does not have a primary key (table holds just one row with the latest data)
idle * Database normalisation: conf.features is not perfect design, instead a separate feature table should be used (how this information will be used in the end)

Pages and views

Status Priority Item
DONE **** Home page modifications (implemented as part of the Overview, Project, Platform and Testset page changes)
DONE **** Overview page (Code Review)
DONE **** Project pages for build project (Qt5) and testset projects (Code Review)
DONE *** Project pages: Link to log file (Code Review)
DONE **** Platform page (Code Review)
DONE *** Platform page: Link to log file (Code Review)
DONE ** Platform page: Configuration flag identification (Code Review)
idle * Platform page: Identification of configurations where insignificant or force success could be removed
idle * Platform page: Filtering mechanism
DONE *** Configuration page (Code Review)
DONE *** Configuration page: Link to log file (Code Review)
idle * Branch page
DONE **** Top failing testsets page (Code Review / UI, Code Review / parser)
DONE **** Top flaky testsets page (see Code Review links for Top failing testsets page)
DONE **** Testset page (Code Review)
DONE *** Testset page: Link to log file (Code Review)
DONE *** Testset page: Testset flag identification (Code Review)
DONE ** Testset page: Testset run times (Code Review)
idle * Testset page: Filtering mechanism
idle * Testset page: Identification of testsets where insignificant could be removed
DONE *** Testset page: Test function information (Code Review, Code Review)
DONE *** Testset page: Test function flag identification (Code Review)
DONE ** Page to identify test functions where blacklisting could be removed (Code Review, Code Review)
DONE ** Page to identify test rows where blacklisting could be removed (Code Review)
DONE ** All pages: Link to build directory and xml file (Code Review)
DONE *** Test function page: Test row information (Code Review)
DONE ** Top failed testfunctions page (Code Review)
DONE ** Top testset execution duration page (Code Review)
DONE ** Top test function execution duration page (Code Review)
idle ** Trends for top failed/flaky lists
idle ** Failing tests in branches filtered by platform os (target configuration)
idle ** Project/Platform/Testset pages: Way to expand or filter the range of builds (shows all by default), or allow configuration to be visible when scrolling horizontally
idle * Testfunction page/information: Find skipped testfunctions

Graphs

Status Priority Item
DONE ** Summary graph (dashboard) of current CI status (Code Review, Code Review)
idle ** Build phases by configuration (like on the old metrics page)
idle * Build phases by configuration: Tick box to select if idle times are included or not in the Build phases graph
idle * Build phases by configuration: Configuration result to the Build phases graph (e.g. to conf title)
idle * Build phases by configuration: Add tooltips into Build phases graph (e.g phase name and value)
idle * Visualize CI performance via testset execution time (to visualize sequential and parallel runs)
idle * Visualize CI performance via the trend of phase duration (one, or several if feasible) across the last 20 builds in selected Project Configuration
idle * Improvement progress trend graphs, e.g. on build success rates, build execution times, Configuration and Autotest force success and insignificant flag removals.

Other features

Status Priority Item
DONE **** Web security (Code Review)
DONE *** Performance and user experience

utilising Ajax for selected pages Code Review
other changes: database query change Code Review, HTML compression Code Review, HTML minification Code Review

DONE *** Take template engine into use (Code Review)
DONE *** Align the UI with Qt brand guidelines (Code Review, Code Review)
DONE *** Admin: Remove old data from the database (timescale fixed or selectable), keeping the referential integrity in mind (Code Review)
DONE *** Admin: Remove branch, keeping the referential integrity in mind (Code Review)
DONE ** Admin: Archive a branch by tagging it archived so that it is not shown on the views without deleting the data (Code Review)
DONE ** Indication on content loading (Code Review)
DONE ** Indication on database refresh / log parsing (Code Review)
DONE ** Save the external libraries used as git submodules (Code Review, Code Review)
idle * Link(s) to other related Qt Metrics
idle * Associate gerrit change ids with builds
idle * Include the bug id’s for test cases. This requires first a database or other solution where to get the data.
idle * Log file parsing helper (a way to find things in the last n logs)
idle * Register to receive error reports to a certain module (plus unregister)
idle * Report generator to create a detailed text & graph report from a view. This would be applicable for such data that takes long time to extract and format.
idle * Data export to excel/pdf from a view
idle * Identify which CI build machines failed most often and which CI builds take the longest time to execute
idle * Add Google Analytics to get information on the portal usage
idle * Support for https

Documentation

Status Priority Item
in progress *** Implementation solution description
in progress *** Database design
DONE ** Site map (Code Review)
DONE ** Documentation links into header (Code Review)
idle * Class documentation