About ScalaTest

ScalaTest was written by Bill Venners, George Berger, Chua Chee Seng, and other contributors starting in late 2007. ScalaTest, which is almost exclusively written in Scala, follows and improves upon the Java code and design of Artima SuiteRunner, a testing tool also written primarily by Bill Venners, starting in 2001. Over the years a few other people contributed to SuiteRunner as well, including:

  • Mark Brouwer
  • Chris Daily
  • Matt Gerrans
  • John Mitchel
  • Frank Sommers
Several people have helped with ScalaTest, including:
  • Josh Cough
  • Corey Haines
  • Colin Howe
  • Dianne Marsh
  • Joel Neely
  • Mike Pilquist
  • Jon-Anders Teigen
  • Dick Wall
  • Daniel Watson
  • Matthew Farwell
  • Bardur Arantsson
  • Dmytro Makhno
  • Iulian Dragos
  • Luc Bourlier
  • Richard O. Legendi
  • Alexander Podkhalyuzin
  • Ksenia Sautina
  • Darlene Wallach
  • Sean Griffin
  • Mark Harrah
  • Nick Wade
  • Adriaan Moors
  • Mirco Dotta
  • Eugene Burmako
  • Jason Zaugg

Originally, ScalaTest was hosted at java.net and then Google Code, but as of release 2.0 has been moved to GitHub. You can browse the source code:

https://github.com/scalatest/scalatest

You can git clone it to your local disk with this command

git clone https://github.com/scalatest/scalatest.git

There are also supporting projects for ScalaTest available here:

To contribute, please fork the repo on your GitHub account, make your changes and submit a pull request.

Building ScalaTest

Pre-Requisites

The followings are needed for building ScalaTest:

for JDK 6 or 7, use the following options in your SBT launch file:

SBT_OPTS="-server -Xms512M -Xmx3000M -Xss1M -XX:+CMSClassUnloadingEnabled -XX:+UseConcMarkSweepGC -XX:+CMSIncrementalMode -XX:NewRatio=8 -XX:MaxPermSize=512M"

for JDK 8, use the following SBT options instead:

SBT_OPTS="-server -Xms512M -Xmx3000M -Xss1M -XX:+UseConcMarkSweepGC -XX:NewRatio=8"

Building and Running Tests

This command will build and run the regular tests:

$ sbt test

To run generated tests, you'll need to increase maximum heap size to -Xmx5000M, and use this command instead:

$ sbt gentests/test

What it does is simply switch to gentests project and run test.

Packaging

You can package the ScalaTest JAR file using this command:

$ sbt package

The resulting JAR file will be produced in target/scala-2.10/.

You can also publish it to your local Ivy repository using this command:

$ sbt publishLocal

Or publish it to local maven repository using this command:

$ sbt publishM2

Issues Reporting

Issues can be submitted here:

https://github.com/scalatest/scalatest/issues

ScalaTest community

For help, you can post to the scalatest-users mailing list (Google group) at:

Or, you can post to the ScalaTest Forum at:

ScalaTest is brought to you by Bill Venners and Artima.
ScalaTest is free, open-source software released under the Apache 2.0 license.

If your company loves ScalaTest, please consider sponsoring the project.

Copyright © 2009-2016 Artima, Inc. All Rights Reserved.

artima