Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Roadmap #27

Open
zhangtao25 opened this issue Oct 31, 2024 · 0 comments
Open

Roadmap #27

zhangtao25 opened this issue Oct 31, 2024 · 0 comments

Comments

@zhangtao25
Copy link
Contributor

zhangtao25 commented Oct 31, 2024

Canyon Production Coverage Collection

Current situation

During the construction of the test environment pipeline, Istanbul instrumentation is used. Manual testing and automated testing are performed, and coverage reports are collected.

Several core issues of production collection

  1. Does instrumentation have a significant impact on the production environment?
  2. Is the data collection range all users or a controllable range?
  3. Data reporting timing and cost.
  4. Is data collection legal?

Some ideas

  1. Data can be pruned to only retain hit data. Map data can be obtained during the pipeline, which can reduce 90% of the reported data volume.
  2. Progressive instrumentation. First, instrument some file paths (newly added files), observe the impact, and then gradually expand the scope.
  3. For data reporting timing, it can be reported when the user closes the page to reduce the impact on the user. The reported js sdk is introduced through the script tag, which does not affect page rendering and can also be updated at any time.

Benefits brought

  1. Production coverage data can help us better understand the code running situation, such as which code blocks have not been executed and which code blocks are frequently executed, which is very helpful for optimizing code.
  2. It can help us better understand user behavior, such as which functions are frequently used by users and which functions are ignored by users, which is very helpful for product optimization.
  3. Compared with burying points, coverage data is more comprehensive, more accurate, more intuitive, and more convenient for analysis.
@zhangtao25 zhangtao25 pinned this issue Oct 31, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant