Tôi đang sử dụng ScalaTest để thử nghiệm một số mã Scala. Tôi hiện đang thử nghiệm cho trường hợp ngoại lệ dự kiến với mã như thế nàyCách kiểm tra các thuộc tính bổ sung của Ngoại lệ được mong đợi bằng ScalaTest
import org.scalatest._
import org.scalatest.matchers.ShouldMatchers
class ImageComparisonTest extends FeatureSpec with ShouldMatchers{
feature("A test can throw an exception") {
scenario("when an exception is throw this is expected"){
evaluating { throw new Exception("message") } should produce [Exception]
}
}
}
Nhưng tôi muốn thêm kiểm tra bổ sung về ngoại lệ, ví dụ Tôi muốn kiểm tra xem thông báo ngoại lệ có chứa một Chuỗi nhất định không.
Có cách nào 'sạch' để thực hiện việc này không? Hoặc tôi có phải sử dụng khối try try?
Nó hoạt động và tôi thích cú pháp của mình: nó phù hợp với tất cả các "nên" cho kết quả chức năng. –
'đánh giá' không được chấp nhận trong 2.x và bị xóa trong 3.x. Tài liệu không được khuyến khích sử dụng 'an [Ngoại lệ] sẽ được némBởi' thay thế. Tuy nhiên, 3.0.0-M14 trả về một 'Assertion':' val ex: Assertion = an [Exception] nên được throwBy {throw new Exception ("boom")} '. Có cách nào để lấy lại 'Exception' được ném không? – kostja