2010-10-29 32 views
5

Tôi là người mới đến Cucumber, JRuby, Gems và cách thức hoạt động của nó.Có thể chạy Cucumber trong Java ra khỏi hộp mà không cần JRuby/đá quý?

Tôi thích ý tưởng viết trường hợp thử nghiệm bằng tiếng Anh đơn giản, nhưng tôi không muốn cài đặt nhiều công cụ mới (tôi thực sự thực sự thích Java), chỉ để có được Cucumber và chạy.

Vì vậy, tôi có một vài câu hỏi.

1) Tôi có cần cài đặt JRuby/Ruby để sử dụng Dưa chuột trong Java không? Không có cách nào để tránh điều này?

2) Nếu không, có các công cụ kiểm tra thay thế, tương tự như dưa chuột, hoạt động trong Java ra khỏi hộp không?

Tôi có những lựa chọn thay thế nào để giảm thiểu các công cụ mới chỉ để sử dụng công cụ Dưa chuột/tương tự?

Trả lời

0

Khám phá cuke4duke. Đó là dưa chuột cho JVM, không cần Ruby.

+1

Không hoàn toàn đúng. Cuke4Duke hứa hẹn rằng "không cần lập trình Ruby". Trong nền cuke4duke chạy Cucumber thông qua JRuby. Toàn bộ quá trình cài đặt khá phức tạp và trở nên rõ ràng khi lần đầu tiên gặp sự cố ... sau đó bạn sẽ bắt đầu phải đối phó với JRuby và Gems một lần nữa ... cũng thiết lập này khá chậm, vì toàn bộ môi trường JRuby được bắt đầu chạy dưa chuột ... – jbandi

+1

[Cuke4Duke không được dùng nữa và Cucumber-JVM là nó thay thế] (https://groups.google.com/forum/#!msg/cukes/KZ2U04UA6MM/JEZ58kBtkcgJ) từ cùng một authour. Cuke4Duke được Ruby chuyển đến JRuby trong khi Cucumber-JVM là một Java viết lại thuần túy hỗ trợ ngôn ngữ đặc tả tương tự (tức là Gherkhin). – ArtB

4

Một trưởng thành tinh khiết Java thay thế cho dưa chuột là JBehave

Cũng Aslak Hellesoy (tác giả của dưa chuột) hứa hẹn một phiên bản Java có nguồn gốc của dưa chuột sẽ được phát hành somewhen vào năm 2011 (xem mình CukeUp keynote)

+1

Nó được gọi là [Dưa chuột JVM] (https: // github.com/dưa chuột/dưa chuột-jvm) và hiện tại đang ở trạng thái Ứng viên phát hành - hãy dùng thử! – millhouse

+0

Phiên bản 1.0.0 – ArtB

4

Tôi đã so sánh Dưa chuột, Dưa chuột-JVM và JBehave. Tất cả đều có nghĩa là viết các bài kiểm tra chấp nhận dựa trên một trong hai tính năng (Dưa chuột, Dưa chuột-JVM) hoặc các câu chuyện.

Khó khăn chính của dưa chuột là nó dễ vỡ khi được sử dụng qua plugin Cuke4Duke Maven trong môi trường Java thuần túy vì nó yêu cầu duy trì cơ sở hạ tầng Ruby (cơ sở). Nó cũng tương đối chậm và trực tiếp gỡ lỗi là không thể - bạn sẽ cần phải đính kèm một trình gỡ lỗi từ xa để thay thế.

JBehave là một thay thế Java thuần khiết, thuần khiết đối với dưa chuột. Đầu ra của nó không phải là khá giống như của Cucumber, nhưng nó cũng là tài liệu, dễ sử dụng và nhanh chóng. Có hỗ trợ riêng cho JUnit.

Tính đến tháng 12 năm 2011, bây giờ bạn có thể sử dụng thêm phiên bản Java thuần túy của dưa chuột được gọi là Cucumber-JVM. Nó chỉ là nhanh và dễ sử dụng như JBehave, và nó có hỗ trợ JUnit nguyên gốc. Thật không may, nó không có bất kỳ đầu ra kết quả dựa trên HTML khá, thậm chí không có các dịch vụ thô sơ của JBehave, mặc dù điều này sẽ được sửa trong những tháng tới. Nó cũng thiếu tài liệu. Ưu điểm chính của nó so với JBehave là sự hỗ trợ của các tính năng thay vì các câu chuyện.

0

Nếu bạn thích ý tưởng viết bài kiểm tra bằng tiếng Anh đơn giản, thì Twist là đặt cược tốt nhất của bạn. Mã thử nghiệm dưới sẽ nằm trong java.

+0

Twist đã ngừng hoạt động: * ThoughtWorks Studios sẽ ngừng phát triển hoặc hỗ trợ công cụ tự động hóa thử nghiệm của chúng tôi Twist vào năm 2015. Chúng tôi sẽ tiếp tục hỗ trợ Twist cho đến ngày 1 tháng 12 năm 2015. Sau ngày này, chúng tôi sẽ không còn thực hiện bất kỳ cải tiến nào, sửa lỗi hoặc cung cấp hỗ trợ cho Twist. * – rob

+0

Hoặc thử Gauge http://getgauge.io – Vishnu

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