2013-10-17 10 views
5

Tôi vừa mua một bản sao của Intellij và tôi cần phải tạo ra một bài kiểm tra đơn vị thử và đặt junit trên classpath và thiết lập các thử nghiệm để thực hiện với các Á hậu junit. Nó là tầm thường để làm như vậy trong Eclipse.Làm thế nào để thực hiện phong cách Eclipse TDD với Intellij

Mỗi hướng dẫn tôi đọc ngoại hình như thế này ...

  1. Tạo một lớp để kiểm tra
  2. Add phương pháp
  3. Tạo một thư mục gốc nguồn thử nghiệm
  4. Tạo một lớp thử nghiệm
  5. Chạy thử nghiệm

Nhưng tôi không muốn tạo bất kỳ lớp học nào hoặc bất kỳ Met nào hod cho đến khi tôi có một thử nghiệm mà sẽ không biên dịch.

Tôi muốn bố cục lớp và phương thức sơ khai trước tiên trong bài kiểm tra. Khi tôi đã hài lòng với API tôi đã thể hiện trong bài kiểm tra, tôi muốn tự động tạo ra các khai báo lớp và phương thức, và sau đó bắt đầu với các xác nhận.

Cách thực hiện việc này trong Intellij?

+1

này không thực sự cần phải làm với IntelliJ; đó là một vấn đề TDD nói chung. Cách tiếp cận thông thường là viết một số sơ khai với các cơ quan như 'ném mới UnsupportedOperationException(); // TODO', sau đó viết các bài kiểm tra đối với những người đó và sau đó làm việc cho đến khi các bài kiểm tra đó vượt qua. Nhưng bạn đề cập đến stubbing đã; vậy, cụ thể bạn đang gặp rắc rối với điều gì? – yshavit

+0

Tôi nghĩ rằng đó là một vấn đề với Intellij không hỗ trợ một quy trình làm việc được nhiều nhà phát triển coi là phương pháp hay nhất. – jeremyjjbrown

Trả lời

2

Bạn có thể tạo Mẫu tệp để thêm kiểm tra đơn vị sơ khai và giữ quy trình làm việc TTD tương tự như Eclipses.

  1. Rt nhấp vào gốc của dự án trong ngăn Dự án. Chọn Mới> Chỉnh sửa Mẫu Tệp ...
  2. Sao chép Mẫu Lớp Java và ghi đè Tên thành JUnit và Mã thành ...

    #if (${PACKAGE_NAME} && ${PACKAGE_NAME} != "")package ${PACKAGE_NAME};#end 
    import org.junit.Test; 
    #parse("File Header.java") 
    public class ${NAME} { 
        @Test 
        public void test() { 
        } 
    } 
    

Bây giờ khi bạn nhấp chuột phải một gói bạn có thể thêm một cuống JUnit mới bằng cách chọn New> Java Class> Kind = JUnit

+0

không chắc chắn lý do tại sao phần mã được định dạng theo cách nó xin lỗi. – jeremyjjbrown

2

Tạo một thư mục kiểm tra và thêm một lớp thử nghiệm mới, ví dụ WhateverTest.java

Thêm một phương pháp mới có một chú thích @Test.

@Test 
public static void whatever() { 
} 

Sau khi bạn nhập tất cả các phụ thuộc JUnit yêu cầu (và những người bạn muốn), bạn chỉ có thể nói với IntelliJ để chạy các bài kiểm tra trong lớp. Tôi không nghĩ rằng bạn phải làm bất kỳ cấu hình đặc biệt nào ngoài đó.

1

IntelliJ IDEA không hỗ trợ tự động tạo lớp chính từ các lớp kiểm tra. Nó sẽ tự động tạo ra các lớp thử nghiệm và các phương thức từ một lớp chính. Vì vậy, bạn có thể làm như @yshavit đề xuất trong nhận xét của mình và tạo một bộ xương lớp chính và sau đó tự động tạo lớp thử nghiệm qua Ctrl + Shift + T. Hoặc khi bạn viết thử nghiệm, hãy giữ một giao diện đồng bộ với nó. Sau đó, bạn có thể tự động tạo triển khai từ giao diện.

Nếu không, như tôi nhìn thấy nó, bạn có ba lựa chọn:

  1. Mở feature request cho lớp học sản xuất tự động tạo ra từ các lớp học thử nghiệm
  2. Viết plug-in của riêng bạn để làm điều này
  3. Hỏi tác giả của một trình cắm thêm hiện có, chẳng hạn như trình cắm thêm tập trung TDD Enso, để thêm tính năng này.
+0

Tôi thực sự đã thử sao chép mẫu tệp Java Class và thêm một phương thức để làm cho nó thành một junit. Tuy nhiên nó không xuất hiện trong hộp thoại Mới và tài liệu Intellij không cung cấp giải pháp mà tôi có thể tìm thấy để làm cho nó có sẵn. – jeremyjjbrown

+1

Xem [đăng tại đây] của tôi (http://devnet.jetbrains.com/message/5499184#5499184) để biết thông tin về cách sử dụng mẫu tệp mới. Đó là điều cần phải có một chút tài liệu tốt hơn :) – Javaru

+0

Thật không may chọn "Từ File Templates" không có sẵn cho tôi khi tôi nhấp chuột phải vào dự án của tôi/src-thư mục/gói và chọn New in Intellij 12.1.4. – jeremyjjbrown

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