2011-12-11 26 views
5

Tôi đang ở trong một tình huống, nơi tôi có một số bài kiểm tra viết ScalaTest (tương thích JUnit) và tôi muốn đo mức độ bảo mật tốt khi chạy thử nghiệm.Đo lường phạm vi mã Scala trong testcases trong Eclipse

Tôi không muốn sử dụng SBT trực tiếp, nhưng có một dự án Eclipse Scala, trong đó tôi có một số trường hợp thử nghiệm mà tôi muốn chạy.

Điều gì sẽ là cách tốt nhất để tôi đi?

+1

Bạn sử dụng công cụ xây dựng nào, nếu không sử dụng sbt. Maven? Bạn có muốn kiểm tra mã scala hay bạn chỉ viết các bài kiểm tra của bạn trong scala? – Steffen

+0

Tôi đang sử dụng nhật thực bình thường "scala builder" vv và khi tôi hoàn thành, tôi đang xuất các dự án như plugin eclipse. Tôi muốn kiểm tra mã scala, và các bài kiểm tra cũng được viết bằng Scala. – StefanE

Trả lời

3

Tôi sử dụng EclEmma để bảo vệ mã trong Eclipse. Cài đặt nó bằng cách sử dụng trang web cập nhật.

Lưu ý rằng nó sẽ không hiển thị trong phối cảnh Scala, chỉ có phối cảnh Java, nhưng điều đó là ổn vì bạn vẫn có thể chạy thử nghiệm đơn vị dựa trên Scala theo cách đó.

Khi bạn cài đặt, nó sẽ thêm nút "chạy" mới vào thanh công cụ của bạn. Khi bạn sử dụng điều này là chạy các bài kiểm tra đơn vị bạn chọn, tạo ra một báo cáo bảo hiểm, và làm nổi bật mã của bạn để hiển thị những gì có và đã không được bảo hiểm.

Tôi vừa thử nghiệm nó với một dự án Scala với các bài kiểm tra đơn vị Scala, và nó có vẻ hoạt động tốt.

+1

Plugin EclEmma hiện hiển thị trên phối cảnh Scala! – Mark

+0

dường như không hoạt động cho scalatest –

+0

nó hoạt động, nhưng bạn cần chú thích lớp để chạy với một junit runner –

0

Tôi đã làm việc trong này scala cho "lớp scalatest đồng bằng"

tất cả nó đòi hỏi là thêm một chú thích cho lớp scalatest của bạn để làm cho nó chạy như một Junit (xem chú thích bên dưới). Điều này sử dụng scalatests sở hữu junitrunner.

@RunWith (classOf [JUnitRunner]) lớp MyTest kéo dài FeatureSpec với quẹt với GivenWhenThen với StrictLogging {

một khi bạn đã làm điều đó, bạn sẽ thấy rằng bây giờ bạn có thể chạy lớp này trong nhật thực như là một " thử nghiệm scala junit ". Bạn cũng sẽ có thể "phủ sóng như -> kiểm tra junit" là tốt.

Nếu bạn đã cài đặt plugin eclemma, bạn sẽ thấy bảng điều khiển phủ sóng (bạn có thể phải thêm điều này theo cách thủ công) với mức độ phù hợp do thử nghiệm của bạn cung cấp và bạn cũng sẽ nhận được màu đỏ/xanh/vàng theo từng dòng trong lớp học của bạn.

cuộc sống là tốt!

+0

chỉ để tiết lộ một số chi tiết hơn, tôi đang sử dụng junit 4.12, scalatest 2.2.5, nhật thực mars –

+0

thông tin thêm về junitrunner scalatest: http://www.scalatest.org/user_guide/using_junit_runner –

Các vấn đề liên quan