Skip to content

Conversation

@louiszawadzki
Copy link
Contributor

What does this PR do?

Expose the data from the iOS proxy core and create some assertions on them.

Motivation

Make E2E tests less dependent on upload mechanism.

Additional Notes

This is a POC that it works, the following improvements should be made:

Extract DdCoreTests from the RN SDK into a dedicated package

  • to avoid packing it into the SDK

Improvements to the tests:

  • Create simple interfaces for the events so it’s easier to make assertions
  • Run all the tests and then gather then in a test report
  • have only one screen at the end displaying the report status and report id
  • upload the report as a log so it can be debugged more easily than on a phone

Improve error messages:

  • present similar events available
  • if length of events does not match, print all received events

Make a function for getting Actions, Long Tasks, Resources, etc. instead of one for all RUM events

More scenarios to be added to the tests:

  • Resources (custom + auto-instrumentation)
  • Actions (custom + auto-instrumentation)
  • JS Crashes (we can add an error handler discarding it to prevent from crashing the app)
  • Headers for first-party hosts

Review checklist (to be filled by reviewers)

  • Feature or bugfix MUST have appropriate tests
  • Make sure you discussed the feature or bugfix with the maintaining team in an Issue
  • Make sure each commit and the PR mention the Issue number (cf the CONTRIBUTING doc)
  • If this PR is auto-generated, please make sure also to manually update the code related to the change

@louiszawadzki louiszawadzki added the Do not merge This PR is not ready to be merged yet label Nov 29, 2023
@louiszawadzki louiszawadzki force-pushed the louiszawadzki/testable-core branch from b1c4c9e to 3a75254 Compare December 7, 2023 13:34
@louiszawadzki louiszawadzki force-pushed the louiszawadzki/testable-core branch from 3a75254 to 895f23e Compare January 12, 2024 15:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Do not merge This PR is not ready to be merged yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants