2015-10-08 19 views
6

Có ai có ví dụ về dự án dưa chuột với sbt 0,13 và Scala 2,11 không?Làm thế nào để bạn chạy dưa chuột với Scala 2.11 và sbt 0.13?

  1. Tôi có cần cả hai cucumber-scala_2.11sbt-cucumber-plugin" % "0.8.0" (plugin đó có được cập nhật) không?
  2. Plugin hiện tại đi đâu?
  3. Các tệp .feature ở đâu?
  4. Bài kiểm tra dưa chuột đi đâu?
  5. Làm cách nào để chạy thử nghiệm từ sbt?
  6. (tùy chọn) Làm cách nào để chạy thử nghiệm từ IntellJ (15)?

Trả lời

8

Ok, tôi đã tìm ra giải pháp với thông báo trước: Tôi không sử dụng sbt.

Ý tưởng

Trước tiên, chúng tôi sẽ viết các tính năng và bước dưa chuột. Sau đó chúng ta sẽ viết một lớp "Runner", mà sẽ được điều hành bởi JUnit Á hậu (mà sẽ không biết gì về sự hiện diện của dưa chuột)

Thủ tục

Bước 1. Chỉ phụ thuộc vào một điều để viết các tính năng dưa chuột và các bước!

libraryDependencies += "info.cukes" % "cucumber-scala_2.11" % "1.2.4" 

Bước 2: Bây giờ chúng ta phụ thuộc vào junit (đối với văn bản cho Á hậu của các bài kiểm tra của chúng tôi) và thư viện kết nối dưa chuột-junit mà sẽ cho phép chúng tôi nói Juni để chạy thử nghiệm dưa chuột của chúng tôi:

libraryDependencies += "info.cukes" % "cucumber-junit" % "1.2.4" 
libraryDependencies += "junit" % "junit" % "4.12" 

bước 3: Viết tính năng và các bước định nghĩa (họ nên được đặt trong cùng một thư mục trong các thử nghiệm trong kinh nghiệm của tôi):

# My.feature 
Feature: blah blah 
    .... 

// MySteps.scala 
... 

Bước 4: Viết bài kiểm tra của chúng tôi Á hậu:

import cucumber.api.junit.Cucumber 
import org.junit.runner.RunWith 
@RunWith(classOf[Cucumber]) 
class RunTests extends { 
} 

Bước 5: (không bắt buộc) Tích hợp với IntelliJ

a) Enable JUnit trong IntelliJ. Điều này sẽ cho phép chúng tôi chạy kiểm tra dưa chuột của chúng tôi bằng cách chạy runner junit của chúng tôi. Đẹp!

  1. file
  2. Cài đặt ...
  3. Plugins
  4. Tìm kiếm "JUnit" và chắc chắn rằng nó đã được kích hoạt

    Bây giờ chúng ta có thể chạy thử nghiệm dưa chuột của chúng tôi bằng cách đơn giản click chuột phải vào trên .feature tệp và chọn Chạy!

b) Enable dưa chuột cho Scala IntelliJ plugin. (đảm bảo plugin Scala được bật). Điều này cho phép IntelliJ xác định cách liên kết các tệp tính năng với các tệp scala. Nếu không có này file tính năng của bạn sẽ luôn được đánh dấu màu vàng với một lỗi undefined step reference:

  1. tập tin
  2. Cài đặt ...
  3. Plugins
  4. Duyệt kho ...
  5. tìm kiếm cho "dưa chuột cho Scala "
  6. Cài đặt Cucumber for Scala plugin
  7. Khởi động lại IntelliJ.

    Bây giờ, các tệp nổi bật của bạn sẽ được tô sáng chính xác!

Tài nguyên hữu ích

  1. Java hướng dẫn cho dưa chuột, mà dẫn tôi đến giải pháp này: https://c0deattack.wordpress.com/2012/03/28/cucumber-jvm-with-cucumber-java-cucumber-junit-example/
  2. Dưa chuột phòng chat mà mọi người là siêu hữu ích: https://gitter.im/cucumber/chat
  3. Cấu trúc thư mục (lưu ý rằng trong scala chúng tôi dường như cần phải đặt cả hai tính năng và các tệp bước vào cùng một thư mục: tuy nhiên ý tưởng của người chạy riêng lẻ là thú vị): http://www.hascode.com/2014/12/bdd-testing-with-cucumber-java-and-junit/#Directory_Structure
Các vấn đề liên quan