Переписанная среда тестирования specs2 для Scala объединяет автоматическое тестирование с скалачек. Примеры, приведенные в документации specs2 о том, как использовать scalacheck вместе с specs2 либо используйте целые числа или более сложные пользовательские генераторы, как в примере Эрика json .
Пытаясь заставить работать немного менее сложный пример, я борюсь, потому что не знаю, как можно использовать specs2 и scalacheck, если я хочу генерировать строковые аргументы вместо целых чисел. Как бы этот пример Quickstart
import org.scalacheck._
object StringSpecification extends Properties("String") {
property("startsWith") = Prop.forAll((a: String, b: String)
=> (a+b).startsWith(a))
property("endsWith") = Prop.forAll((a: String, b: String)
=> (a+b).endsWith(b))
// Is this really always true?
property("concat") = Prop.forAll((a: String, b: String) =>
(a+b).length > a.length && (a+b).length > b.length
)
property("substring") = Prop.forAll((a: String, b: String) =>
(a+b).substring(a.length) == b
)
property("substring") = Prop.forAll((a: String, b: String, c: String) =>
(a+b+c).substring(a.length, a.length+b.length) == b
)
}
взято с главной страницы scalacheck, если она была написана как спецификация Specs2 с использованием интеграции scalacheck?