Skip to content

add performance benchmark tests #907

Open
@byronz

Description

@byronz

Is your feature request related to a problem? Please describe.

issues #904 reminds me about the follow ideas we have informally disucssed internally.

right now, most of our integration tests are feature-oriented, i.e. they are designed to cover a dash feature. But we don't have a metrics system to track some core performance such as handling of callbacks, a significant chunk of data to be loaded in dcc.Graph or dash-tables.
So we can get an alert if one release candidate slows significantly comparing to previous versions.

Describe the solution you'd like

  1. We need to design a set of scenarios to test load/performance of dash
  2. We can get the execution time from pytest junit reports. they are either stored in cirlceci or we can report and archive them after each run in a DB
  3. we can then compare each time when a new record is reported with a threshold to trigger such alert that the last change has broken the performance
  4. we can also leverage the existing performance toolchain on js side like pupeeter and lighthouse.
    Screen Shot 2019-09-13 at 3 12 33 PM

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions