Using Playwright Test to run Unit Tests

This page summarizes the projects mentioned and recommended in the original post on /r/javascript

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
  • Playwright

    Playwright is a framework for Web Testing and Automation. It allows testing Chromium, Firefox and WebKit with a single API.

  • For your question, it does actually not spin up a browser if you do not use page or browser in your test cases! And I wrote the blog post exactly because I think many people don't even consider to use it for unit tests, but I think it can be a viable test runner for that kind of scenarios! And just to be clear, before I released the blog post I asked the folks behind Playwright what they say about using Playwright for unit tests, and they are very supportive of that idea: https://github.com/microsoft/playwright/issues/14268

  • vitest

    Next generation testing framework powered by Vite.

  • The "pros" stated in the blog post compare Playwright Test with Jest/Mocha. vitest is a very interesting, modern test framework and shares some of the pros, like TS OOTB support (as you mentioned) and it also has no globals. Still, some of the pros like "Same tool for E2E tests and unit tests" still hold only for Playwright.

  • 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

    Delightful JavaScript Testing.

  • And honestly, I had a couple of troubles with it. Like: TS is not supported out-of-the-box, so you have to configure ts-jest or something do get it even running; then, path aliases still don't work, so you have to apply some additional setup (like pathsToModuleNameMapper from ts-jest). Then I added Cypress for E2E tests and suddenly, nothing would compile because both Jest and Cypress define global typings, which conflict with each other... And at the end of the day, Jest had memory leaks such that the CI/CD system would sometimes error because of OOM issues (see e.g. https://github.com/facebook/jest/issues/11956 with 69 comments at the time of writing).

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

  • API Testing with Clerk and Express

    1 project | dev.to | 25 Mar 2024
  • JS Toolbox 2024: Bundlers and Test Frameworks

    10 projects | dev.to | 3 Mar 2024
  • Testing library for Node.js and React

    1 project | dev.to | 29 Feb 2024
  • Mocha is being maintained again

    1 project | news.ycombinator.com | 6 Feb 2024
  • Painless CLI integration testing

    7 projects | dev.to | 10 Jan 2024