Hành vi bạn mô tả là hoàn toàn bình thường.
src/package1/A.java
test/package1/ATest.java
Trong ATest.java
có import package1.A;
.
Sau refactored của bạn, nó trông như thế này: Mã
src/package2/A.java
test/package1/ATest.java
Bài kiểm tra ở nơi ông. Bạn đã không di chuyển mã thử nghiệm, nhưng mã nguồn của bạn. Nó không ảnh hưởng đến bất kỳ thư mục nào khác (như trong ví dụ của bạn).
Tham chiếu trong ATest.java
hiện phải là import package2.A;
. Nếu không, việc tái cấu trúc đã sai.
Không tháng, các thử nghiệm của bạn sẽ hoạt động, ngay cả khi chúng nằm trong một thư mục khác. Đó là vì quá trình nhập đã được thay đổi bằng phương pháp tái cấu trúc.
Nếu bạn muốn dọn dẹp cấu trúc thư mục của bạn, bạn phải tự đổi tên gói test/package1
-test/package2
(Tôi biết, gói là package1
và package2
nhưng tôi muốn để tăng cường sự tập trung vào cấu trúc thư mục.
tôi hy vọng tôi có thể giúp bạn
Tôi e rằng mình không thể hiểu câu hỏi của bạn. Bạn có thể vui lòng cung cấp thêm một số thông tin? Điều đó có thể giúp trả lời câu hỏi này (+1 để bạn có thể nhận xét) – guerda
giả sử tôi có lớp AAA trong gói xxx. Điểm đến của lớp là src/xxx/AAA.java và giả sử tôi có một bài kiểm tra nằm ở test/xxx/AAATest.java Vì vậy, khi tôi chuyển lớp AAA sang gói yyy, kiểm tra của tôi ở gói xxx. – dmitrynikolaev