/ / Spock parametrizácia vs. Scala TableDrivenPropertyChecks - scala, scalatest

Spock parametrizácia vs Scala TableDrivenPropertyChecks - scala, scalatest

Spock rám obsahuje @Unroll anotácia, ktorá vedie k zobrazeniu každého "prípadu" z parametrizovaného testu ako samostatného testu. Je niečo podobné s programom ScalaTest?

odpovede:

0 pre odpoveď č. 1

Najbližšie by bolo tabuľkové majetkové kontroly:

import org.scalatest.prop.TableDrivenPropertyChecks._

val fractions =
Table(
("n", "d"),  // First tuple defines column names
(  1,   2),  // Subsequent tuples define the data
( -1,   2),
(  1,  -2),
( -1,  -2),
(  3,   1),
( -3,   1),
( -3,   0),
(  3,  -1),
(  3,  Integer.MIN_VALUE),
(Integer.MIN_VALUE, 3),
( -3,  -1)
)

import org.scalatest.matchers.ShouldMatchers._

forAll (fractions) { (n: Int, d: Int) =>

whenever (d != 0 && d != Integer.MIN_VALUE
&& n != Integer.MIN_VALUE) {

val f = new Fraction(n, d)

if (n < 0 && d < 0 || n > 0 && d > 0)
f.numer should be > 0
else if (n != 0)
f.numer should be < 0
else
f.numer should be === 0

f.denom should be > 0
}
}

Existujú aj iné techniky ako napr "testy zdieľania" a viac majetkové testovanie.