User Tools

Site Tools


workgroup:codequality:start

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
workgroup:codequality:start [2017/03/23 03:14]
Daniel Agar
workgroup:codequality:start [2017/07/27 20:43] (current)
Mark Charlebois
Line 1: Line 1:
 ====== Code Quality WG ====== ====== Code Quality WG ======
  
-Coverity - https://​scan.coverity.com/​projects/​px4-firmware+The Code Quality WG is focused on ways to provide incremental improvements to Dronecode project code quality and testing.
  
-clang-tidy 
-astyle 
  
 +__Tools__
  
-__Build System +  * Coverity ​- https://scan.coverity.com/projects/px4-firmware 
-__ +  * clang-tidy 
- - travis-ci (http://​travis-ci.org/​PX4/​Firmware) +  * astyle ​consistent code formatting improves readability and reduces potential merge conflicts for downstream adopters 
- semaphoreci (https://semaphoreci.com/px4/firmware/) +  * Docker - consistent, repeatable build environment
- ​- ​circleci (https://​circleci.com/​gh/​PX4/​Firmware) +
- ​- ​jenkins (http://​sitl01.dronetest.io/​)+
  
-__Testing__ 
  
- ​- ​mission tests +__Build System__ 
- unit tests+  * travis-ci (http://​travis-ci.org/​PX4/​Firmware) 
 +     * responsible for building and deploying production binaries for QGroundControl 
 +  * semaphoreci (https://​semaphoreci.com/​px4/​firmware/​) 
 +  * circleci (https://​circleci.com/​gh/​PX4/​Firmware) 
 +  * jenkins (http://​sitl01.dronetest.io/​) 
 +     * runs a set of multicopter and VTOL mission ​tests 
  
 +__Testing__
  
 +  * mission tests
 +  * unit tests
 +  * SITL (Software in the loop)
 +  * HIL (Hardware in the loop)
  
 __Todo__ __Todo__
  
- ​- ​significantly expand automated mission tests +  * significantly expand automated mission tests 
- run mission tests under address sanitizer +  ​* ​run mission tests under address sanitizer 
- code coverage +  ​* ​code coverage 
- hardware tests +  ​* ​hardware tests 
- perf tracking+  ​* ​perf tracking 
 +  * Automated testing (static analysis, etc) 
 +  * Running with address sanitier and thread sanitizer enabled 
 +  * Clang tidy expand usage (modernize c++) 
 +  * Identifying code in desperate need of refactoring (commander) 
 +  * Using safe C++ types 
 +     * A time in ms should be a time_ms type vs an int, safe addition, multiplication can then be used 
 +     * Convert Orb and param usage to C++ APIs for type safety 
 +  * Commander re-write 
 +  * Better quantified code coverage tests 
 +  * Make it easier for people to contribute and maintain code quality 
 +  * Unify NuttX and DriverFramework drivers 
 +    * Create design pattern for driver based on cross platform requirements 
  
workgroup/codequality/start.1490238878.txt.gz · Last modified: 2017/03/23 03:14 by Daniel Agar