Skip to content

Commit 9b49d8e

Browse files
authored
Merge pull request #559 from zainab-ali/weaver-release
2 parents c7220e5 + 35a9d24 commit 9b49d8e

File tree

1 file changed

+33
-0
lines changed

1 file changed

+33
-0
lines changed
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
---
2+
layout: post
3+
title: Typelevel Weaver released
4+
category: technical
5+
6+
meta:
7+
nav: blog
8+
author: zainabali
9+
---
10+
11+
We are delighted to announce the release of [weaver-test](https://typelevel.org/weaver-test/) under Typelevel.
12+
13+
# What is weaver?
14+
15+
Weaver is a test framework for integration and end-to-end testing. It makes tests faster and easier to debug by using `cats`, `cats-effect` and `fs2`.
16+
17+
Weaver provides a high quality experience when writing and running tests:
18+
19+
- Tests within a suite are run in parallel for the quickest results possible. This is especially suited to IO heavy tests, such as those making API calls or reading files.
20+
- Expectations (ie assertions) are composable values. This enables
21+
developers to separate the scenario of the test from the checks they perform,
22+
generally keeping tests cleaner and clearer.
23+
- Failures are aggregated and reported at the end of the run. This prevents the developer from having to "scroll up" forever when trying to understand what failed.
24+
- A lazy logger is provided for each test, and log statements are only displayed in case of a test failure. This lets the developer enrich their tests with clues and works perfectly well with parallel runs. Even though all tests are run in parallel, the developer can browse a sequential log of the test failure.
25+
- “beforeAll” and “afterAll” logic is represented using a `cats.effect.Resource`. This ensures that shared resources, such as HTTP clients, connection pools and file handles, are cleaned up correctly and predictably.
26+
27+
# Why is weaver moving under the Typelevel umbrella?
28+
29+
Weaver makes heavy use of the `cats-effect` and `fs2` Typelevel projects. These enable weaver to run tests concurrently, provide safe resource handling, composable assertions and much more. By becoming part of the Typelevel umbrella, weaver can be maintained more easily alongside its core dependencies.
30+
31+
# Migrating to the `0.9.0` release
32+
33+
If you use [Scala Steward](https://github.com/scala-steward-org/scala-steward), you will migrate automatically. If not, read the [`0.9.0` migration guide](https://github.com/typelevel/weaver-test/releases/tag/v0.9.0).

0 commit comments

Comments
 (0)