2.7.7 を使用していますか? 2.8 では、要素が等しい (同じ順序で) 異なる Seq は等しくなければなりません。
scala> import org.scalatest.matchers.ShouldMatchers._
import org.scalatest.matchers.ShouldMatchers._
scala> import scala.collection.mutable.ArrayBuffer
import scala.collection.mutable.ArrayBuffer
scala> val list = List(1, 2, 3)
list: List[Int] = List(1, 2, 3)
scala> val arrayBuffer = ArrayBuffer(1, 2, 3)
arrayBuffer: scala.collection.mutable.ArrayBuffer[Int] = ArrayBuffer(1, 2, 3)
scala> list == arrayBuffer
res2: Boolean = true
scala> arrayBuffer == list
res3: Boolean = true
scala> list should equal (arrayBuffer)
scala> arrayBuffer should equal (list)
2.8 でのこの規則の 1 つの例外は配列です。配列は Java 配列であるため、他の配列とのみ等しい場合があります。(Java 配列は、それらに対して .equals を呼び出すと構造的に比較されませんが、ScalaTest マッチャーは 2 つの配列に対して構造的同等性を行います。)