Skip to content

frontend test coverage report is not accurate #2323

@samuelallan72

Description

@samuelallan72

At the end of running the frontend tests with npm run test, there is a test coverage output table. It looks like this:

----------------------------------|---------|----------|---------|---------|---------------------------------------------------------------------------------
File                              | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s
----------------------------------|---------|----------|---------|---------|---------------------------------------------------------------------------------
All files                         |   15.23 |     4.77 |   12.45 |    9.71 |
 src                              |   17.37 |     5.48 |   16.96 |   18.35 |
  lms_index.js                    |   15.42 |     4.71 |   13.28 |   14.56 | 3-19,23-121,133-149,153,229-235,239-257,264-280,284-300,304-320,324-340,344-362
  oa_server.js                    |   12.56 |    19.58 |    9.91 |     100 | 1
  oa_shared.js                    |    22.8 |     5.98 |   26.04 |     100 | 1-18
  studio_index.js                 |    22.7 |     8.31 |   23.87 |     100 | 1-18
 src/lms                          |   14.93 |     4.59 |   11.61 |    6.83 |
  oa_base.js                      |   15.53 |     4.77 |   13.43 |      14 | 3-19,23-121,133-149,153,222-228,232-250,257-273,277-293,297-313,317-333,337-355
  oa_confirmation_alert.js        |   38.98 |    31.14 |   41.37 |     100 | 1
  oa_course_items_listing.js      |   25.59 |     8.02 |    28.4 |     100 | 1-19
  oa_datefactory.js               |   13.12 |     3.99 |    8.38 |    3.54 | 3-121,133-153,164-292
  oa_file_upload.js               |   41.07 |     32.2 |   46.15 |     100 | 1
  oa_grade.js                     |   13.23 |     4.12 |    8.64 |    3.54 | 3-121,133-153,164-292
  oa_leaderboard.js               |   38.98 |    30.64 |   46.15 |     100 | 1
  oa_message.js                   |   41.81 |     32.2 |      50 |     100 | 1
  oa_peer.js                      |   13.41 |     4.28 |    8.93 |    3.54 | 3-121,133-153,164-292
  oa_prompts.js                   |    38.8 |    31.14 |   51.85 |     100 | 1
  oa_response.js                  |   13.29 |     4.38 |    9.03 |    3.54 | 3-121,133-153,164-292
  oa_response_editor.js           |   35.38 |    29.23 |   44.44 |     100 | 1
  oa_rubric.js                    |   25.84 |    24.35 |   31.57 |     100 | 1
  oa_self.js                      |   13.46 |     4.28 |    8.97 |    3.54 | 3-121,133-153,164-292
  oa_staff.js                     |   41.07 |     32.2 |      48 |     100 | 1
  oa_staff_area.js                |   20.15 |    24.72 |   21.31 |     100 | 1
  oa_staff_waiting_step.jsx       |   13.45 |     3.45 |    8.54 |   10.88 | 3-139,143,199-227,234-250,254-270,274-290,294-310,314-332
  oa_training.js                  |   13.42 |     4.27 |    8.92 |    3.54 | 3-121,133-153,164-292
 src/lms/api                      |   17.67 |     9.58 |   17.56 |     100 |
  waiting_step_details.js         |   17.67 |     9.58 |   17.56 |     100 | 1
 src/lms/components               |   13.38 |     3.43 |    8.51 |   10.88 |
  WaitingStepContent.jsx          |    13.5 |     3.46 |    8.58 |   10.88 | 3-139,143,199-227,234-250,254-270,274-290,294-310,314-332
  WaitingStepList.jsx             |   13.26 |     3.41 |    8.43 |   10.88 | 3-139,143,199-227,234-250,254-270,274-290,294-310,314-332
 src/lms/containers               |   13.42 |     3.45 |    8.52 |   10.88 |
  WaitingStepDetailsContainer.jsx |   13.42 |     3.45 |    8.52 |   10.88 | 3-139,143,199-227,234-250,254-270,274-290,294-310,314-332
 src/lms/editors                  |   53.44 |    28.57 |   67.85 |     100 |
  oa_editor_textarea.js           |   53.44 |    28.57 |   67.85 |     100 | 1
 src/studio                       |   23.73 |    22.81 |   22.42 |     100 |
  oa_container.js                 |   29.48 |    28.35 |   36.36 |     100 | 1
  oa_container_item.js            |   21.42 |    20.17 |   20.55 |     100 | 1
  oa_edit.js                      |   22.36 |    22.47 |    19.2 |     100 | 1
  oa_edit_assessment.js           |   24.37 |    24.25 |   22.32 |     100 | 1
  oa_edit_assessments_steps.js    |   29.48 |    26.76 |   32.43 |     100 | 1
  oa_edit_fields.js               |    25.8 |    18.62 |      25 |     100 | 1
  oa_edit_listeners.js            |   22.19 |    22.75 |   21.63 |     100 | 1
  oa_edit_notifier.js             |   43.39 |    31.14 |   54.54 |     100 | 1
  oa_edit_prompts.js              |   23.71 |    22.26 |   21.89 |     100 | 1
  oa_edit_rubric.js               |   21.86 |     23.6 |   20.31 |     100 | 1
  oa_edit_schedule.js             |   28.83 |    21.84 |    29.8 |     100 | 1
  oa_edit_settings.js             |   23.12 |    21.16 |   22.55 |     100 | 1
  oa_edit_validation_alert.js     |    31.5 |    31.14 |    37.5 |     100 | 1
  oa_tiny_mce.js                  |      30 |    20.68 |   35.29 |     100 | 1
----------------------------------|---------|----------|---------|---------|---------------------------------------------------------------------------------

Unfortunately, it doesn't appear to be working - notice how several files have identical "% Lines" and "Uncovered Line #s" columns.

This would be helpful to be fixed, as coverage is a useful tool.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions