Instrumenting Our Frontend Test Suite (...and fixing what we found)

This page summarizes the projects mentioned and recommended in the original post on dev.to

SurveyJS - Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App
With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.
surveyjs.io
featured
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
  • jest

    Delightful JavaScript Testing.

  • As mentioned above, we use Jest as our test runner. It’s important to note, that our instrumentation method requires using jest-circus test runner. This is the default for Jest version 27, however, it can be used with earlier versions of Jest. jest-circus is required because it allows us to listen to events from Jest by using a custom environment and defining a handleTestEvent method. Below is a basic test snippet annotated with an approximation of where jest-circus’s events are fired.

  • Sentry

    Developer-first error tracking and performance monitoring

  • Sentry’s Performance Monitoring instrumentation is tree-like in structure with a transaction as the root node, and spans as child nodes. We can use a combination of the event name and the test name to determine if we should either create a transaction, create a child span from an existing transaction or end a span/transaction. Here’s an example of how we implemented it.

  • SurveyJS

    Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App. With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.

    SurveyJS logo
  • jest-sentry-environment

    Sentry performance instrumentation for jest

  • We provided an example Jest environment that you can use if you’re interested in instrumenting your own Jest tests. You’ll need to install the jest-sentry-environment package and update your Jest configuration to use the fore-mentioned package, as well as supplying your Sentry DSN. For further instructions, please see the repository.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • Application testing, the good, the bad and the ugly: from a senior programmer's point of view

    2 projects | dev.to | 24 May 2023
  • Newb Question: Website Performance & UX Testing

    2 projects | /r/webdev | 16 Feb 2023
  • Building a Production-Ready Web App with T3 Stack

    3 projects | dev.to | 19 Apr 2024
  • How to Handle N+1 Queries for Optimal Database Performance in Django?

    1 project | dev.to | 1 Apr 2024
  • Next.js Error Monitoring with Sentry: Enhancing Your Application’s Reliability

    1 project | dev.to | 15 Mar 2024