ScalaTest

What ScalaTest is
ScalaTest is a free, open-source testing tool for Scala, Scala.js, Scala Native, Dotty (Scala 3), and Java code. It offers multiple testing styles, and its core components can be extended or composed for different project requirements. Assertions include helpers for expected results, exceptions, compile checks, cancellation, and contextual failure clues. Matchers cover equality, exceptions, strings and regular expressions, ranges, properties, and Scala and Java collections. Parameterized cases, parallel execution, and property-based checks are supported, but built-in mocks are not. Listed integrations include JUnit, TestNG, Ant, Maven, sbt, ScalaCheck, JMock, EasyMock, Mockito, ScalaMock, Selenium, Eclipse, NetBeans, and IntelliJ. ScalaTest Plus provides further integration libraries for Play, Selenium, ScalaCheck, JUnit 4 and 5, TestNG, EasyMock, JMock, and Mockito. Dependency instructions are available for sbt and Maven, with artifacts through Sonatype OSS and Maven Central. The latest listed release is ScalaTest and Scalactic 3.2.20 for supported Scala versions. The recommended SuperSafe Community Edition plugin supports Scala 2.x, not Scala 3.x.
Who it suits
ScalaTest suits developers and teams writing tests for Scala-family languages or Java. Its multiple styles and integrations may help teams with different testing conventions and build tools.
What it does well
- Free, open-source software under Apache 2.0.
- Supports Scala, Scala.js, Scala Native, Dotty, and Java.
- Includes parameterized cases and parallel execution.
- Offers property-based checks and extensive matcher coverage.
- Dependency instructions cover sbt and Maven.
What to know first
- Built-in mocks are not included.
- SuperSafe Community Edition does not support Scala 3.x.
Plans
| Plan | Billed and limits | Price |
|---|---|---|
| ScalaTest | Free, open-source software · Apache 2.0 license | Free |
As scalatest.org lists them, read 7 Oct 2026. The maker's own page has the final word.
Getting started
- Visit the ScalaTest website.
- Choose the ScalaTest version for your Scala version.
- Follow the dependency instructions for sbt or Maven.
- Use the release artifacts available through Sonatype OSS or Maven Central.
- Use the ScalaTest Forum or scalatest-users mailing list for help; report issues through GitHub.
Verdict
ScalaTest provides a broad set of test styles, assertions, matchers, and integrations for Scala and Java code. Teams using Scala 3 should note the stated SuperSafe plugin compatibility limit.
Questions
Is ScalaTest free?
Yes. ScalaTest is free and open source under the Apache 2.0 license.
Which languages does ScalaTest support?
ScalaTest supports Scala, Scala.js, Scala Native, Dotty (Scala 3), and Java.
How can I add ScalaTest to a project?
The site provides dependency instructions for sbt and Maven. Release artifacts are available through Sonatype OSS and mirrored on Maven Central.
Does ScalaTest include mocks?
No, built-in mocks are not included. Listed integrations include libraries such as JMock, EasyMock, Mockito, and ScalaMock.
Which integrations are listed for ScalaTest?
The site lists integrations including JUnit, TestNG, sbt, Maven, ScalaCheck, Selenium, Eclipse, NetBeans, and IntelliJ, among others.
Where can users get help?
The About page directs users to the scalatest-users mailing list and ScalaTest Forum for help, and GitHub for issue reporting.
Facts from ScalaTest's own pages
- Assertions
- The documented assertion helpers include assert, assertResult, intercept, compile checks, cancellation, and clues for failure messages. · scalatest.org, 7 Oct 2026
- Compatibility limit
- The install page says the recommended SuperSafe Community Edition compiler plugin supports Scala 2.x and does not support Scala 3.x. · scalatest.org, 7 Oct 2026
- Current release
- The install page identifies ScalaTest and Scalactic 3.2.20 as the latest release for Scala 2.10.0+, 2.11.0+, 2.12.0+, 2.13.0+, and 3.1.0+. · scalatest.org, 7 Oct 2026
- Extensible
- Its core components can be extended and composed to address special requirements and projects of different sizes. · scalatest.org, 7 Oct 2026
- Founded
- 2007 · scalatest.org, 28 Sept 2026
- History
- The About page says ScalaTest development began in late 2007 and names Bill Venners, George Berger, Chua Chee Seng, and other contributors. · scalatest.org, 7 Oct 2026
- Install
- The site provides dependency instructions for sbt and Maven and says release artifacts are available through Sonatype OSS and mirrored on Maven Central. · scalatest.org, 7 Oct 2026
- Integrations
- The site lists integrations with JUnit, TestNG, Ant, Maven, sbt, ScalaCheck, JMock, EasyMock, Mockito, ScalaMock, Selenium, Eclipse, NetBeans, and IntelliJ. · scalatest.org, 7 Oct 2026
- Matchers
- The documented matchers cover equality, exceptions, strings and regular expressions, ranges, properties, and Scala and Java collections. · scalatest.org, 7 Oct 2026
- Purpose
- ScalaTest is a testing tool for Scala, Scala.js, Scala Native, Dotty (Scala 3), and Java code. · scalatest.org, 7 Oct 2026
- ScalaTest Plus
- ScalaTest Plus provides integration libraries for Play, Selenium, ScalaCheck, JUnit 4 and 5, TestNG, EasyMock, JMock, and Mockito. · scalatest.org, 7 Oct 2026
- Security and compliance
- ScalaTest is released under the Apache 2.0 license; the maker pages opened did not state security certifications or compliance standards. · scalatest.org, 7 Oct 2026
- Support
- The About page directs users to the scalatest-users mailing list and ScalaTest Forum for help, and GitHub for issue reporting. · scalatest.org, 7 Oct 2026
- Testing styles
- It offers several testing styles so teams can choose one that fits their experience and culture. · scalatest.org, 7 Oct 2026
Where ScalaTest stands on Freedom251
- Unit Testing#13 of 32
- Unit Testing Frameworks#22 of 32