Tạo lớp kiểm tra trong IntelliJ


138

Tôi đang làm việc trong cấu trúc dự án Maven Java truyền thống bên trong IntelliJ, vd

main/java/com/x/y
test/java/com/x/y

Khi tôi tạo một lớp có tên là Foo trong main / java / com / x / y bằng IntelliJ, tôi muốn tự động có một tệp có tên FooTest.java được tạo trong test / java / com / x / y .

Trong Eclipse có một nút trên thanh công cụ sẽ thực hiện nhiều công việc liên quan đến việc tạo một lớp kiểm tra bộ xương, có ai biết điều gì tương tự trong IntelliJ không?

Cảm ơn,


Các cấu trúc thư mục cho các bài kiểm tra và các lớp được kiểm tra phải phù hợp. Dưới đây là cách thực hiện dễ dàng: stackoverflow.com/a/36057708/715269
Gangnus 18/03/2016

Câu trả lời:


256

Sử dụng lựa chọn menu Điều hướng -> Kiểm tra hoặc Ctrl+ Shift+ T( Shift+ + Ttrên máy Mac). Điều này sẽ đi đến lớp thử nghiệm hiện có hoặc đề nghị tạo nó cho bạn thông qua một trình hướng dẫn nhỏ.


1
Trong dự án của tôi vì một số lý do, mặc dù lớp và lớp kiểm tra được đặt trong cùng một gói, khi tôi thực hiện Ctrl + Shift + T, nó nói "Không tìm thấy lớp kiểm tra". Ngoài ra, khi tôi nhấp chuột phải vào tệp thử nghiệm, nó chỉ cho tôi tùy chọn biên dịch thử nghiệm chứ không chạy thử nghiệm. Bất kỳ ý tưởng?
Lướt

1
Tôi sẽ trả lời như Andreas đã làm với câu hỏi khác của bạn . Bằng cách nào đó nó không nhận ra rằng các lớp học của bạn là bài kiểm tra.
Jarl

Vẫn hoạt động độc đáo với 12.1.4 trong Windows. Kiểm tra trong Cài đặt để Keymap liên kết Mainmenu / Điều hướng / Kiểm tra với Ctrl + Shift + T
Jarl

4
Không hoạt động với tôi - cho đến khi tôi kích hoạt lại plugin JUnit đã bị vô hiệu hóa.
Peter Westmacott

3
Cần lưu ý rằng Điều hướng> Kiểm tra bị vô hiệu hóa khi lớp được chọn trong cửa sổ Dự án. Nó phải được chọn trong một tab biên tập.
Kevin Krumwiede

42

Ngoài ra, bạn cũng có thể định vị con trỏ vào tên lớp và nhấn alt+ enter( Hiển thị hành động có ý định và sửa lỗi nhanh ). Nó sẽ gợi ý để tạo Test .

Ít nhất hoạt động trong IDEA phiên bản 12.


Đối với tôi, đây là lựa chọn hợp lý nhất. Tôi đã ghi đè CTRL + SHIFT + T để "khôi phục tab trước" để kết hợp ALT + ENTER trên tên lớp hoạt động tốt.
Scott Bennett-McLeish

Hoạt động trên Intellij Idea 2018.2.
Zon

9

* IntelliJ 13 * (được trả tiền) Chúng tôi thấy bạn phải có con trỏ trong lớp thực tế trước khi ctrl+ Shift+ Thoạt động.

Điều này có vẻ hơi hạn chế nếu đó là cách duy nhất để tạo một lớp kiểm tra. Mặc dù khi nhìn lại, nó sẽ buộc các nhà phát triển tạo ra một lớp thử nghiệm khi họ viết một lớp chức năng.


7

Sử dụng lựa chọn menu Điều hướng> Kiểm tra

gif

Phím tắt:

các cửa sổ

Ctrl+ Shift+T

hệ điều hành Mac

+ Shift+T


4

Tôi có thể thấy một số người đã hỏi, vì vậy trên OSX bạn vẫn có thể truy cập điều hướng-> kiểm tra hoặc sử dụng cmd+ shift+T

Hãy nhớ rằng bạn phải tập trung trong lớp để làm việc này


3
  1. Nhấp chuột phải vào dự án sau đó chọn thư mục mới->. Tạo một thư mục mới và đặt tên là "thử nghiệm".
  2. Nhấp chuột phải vào thư mục "test", sau đó chọn Mark Directory As-> Test S Source Root
  3. Nhấp vào Điều hướng->
    Kiểm tra- > Tạo bài kiểm tra mới Chọn thư viện kiểm tra (JUnit4 hoặc bất kỳ)
    Chỉ định tên lớp
    Chọn thành viên

Đó là nó. Chúng tôi có thể sửa đổi cấu trúc thư mục theo nhu cầu của chúng tôi. Chúc may mắn!


1
Cảm ơn bạn, tôi đã nhận được "Tạo các bài kiểm tra trong cùng một nguồn với nguồn?" cố gắng ở trên, đây chỉ là những gì tôi cần.
jgreve

2

Tôi nghĩ bạn luôn có thể thử Ctrl+ Shift+ Ađể tìm hành động / lệnh bạn cần.
Tại đây bạn có thể thử nhấn Ctrl+ Shift+ Avà nhập «test» để tìm lệnh.


0

Sử dụng chú thích @Test trên một trong các phương thức kiểm tra hoặc chú thích lớp kiểm tra của bạn với @RunWith (JMockit. Class) nếu sử dụng jmock. Intellij nên xác định đó là lớp thử nghiệm và cho phép điều hướng. Cũng đảm bảo plugin Junit được kích hoạt.


0

Với con trỏ trên khai báo tên lớp, tôi thực hiện ALT + Return và Intellij 14.1.4 của tôi cung cấp cho tôi một cửa sổ bật lên với tùy chọn 'Tạo thử nghiệm'.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.