microsoft / microsoft/vscode-java-test
Errors in JUnit5TestSearcher
Đang mở
Chưa có ai nhận issue này.
ai-triaged
bug
junit
needs-reproduction
test-discovery
- Ngôn ngữ chính
- TypeScript
- Star
- 340
- Fork
- 173
- Merge trung bình
- 1 ngày 19 giờ
- Pull request đã merge (30 ngày)
- 18
Mô tả
java.lang.NullPointerException: Cannot read the array length because "this.fields" is null
at org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.getField(BinaryTypeBinding.java:1426)
at org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding.buildTargetAnnotation(AnnotationBinding.java:179)
at org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding.addStandardAnnotations(AnnotationBinding.java:83)
at org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.retrieveAnnotations(BinaryTypeBinding.java:1855)
at org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.getAnnotations(ReferenceBinding.java:1067)
at org.eclipse.jdt.core.dom.TypeBinding.getAnnotations(TypeBinding.java:122)
at com.microsoft.java.test.plugin.searcher.JUnit5TestSearcher.matchesNameInAnnotationHierarchy(JUnit5TestSearcher.java:110)
at com.microsoft.java.test.plugin.searcher.JUnit5TestSearcher.findAnnotation(JUnit5TestSearcher.java:85)
at com.microsoft.java.test.plugin.searcher.JUnit5TestSearcher.isTestMethod(JUnit5TestSearcher.java:69)
at com.microsoft.java.test.plugin.util.TestSearchUtils.findTestItemsInTypeBinding(TestSearchUtils.java:382)
at com.microsoft.java.test.plugin.util.TestSearchUtils.findTestTypesAndMethods(TestSearchUtils.java:360)
at com.microsoft.java.test.plugin.handler.TestDelegateCommandHandler.executeCommand(TestDelegateCommandHandler.java:60)
at org.eclipse.jdt.ls.core.internal.handlers.WorkspaceExecuteCommandHandler$1.run(WorkspaceExecuteCommandHandler.java:215)
java.lang.NullPointerException: Cannot assign field "mayTolerateMissingType" because "this.env" is null
at org.eclipse.jdt.internal.compiler.lookup.UnresolvedAnnotationBinding.resolve(UnresolvedAnnotationBinding.java:34)
at org.eclipse.jdt.internal.compiler.lookup.UnresolvedAnnotationBinding.getAnnotationType(UnresolvedAnnotationBinding.java:41)
at org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding.addStandardAnnotations(AnnotationBinding.java:47)
at org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.retrieveAnnotations(BinaryTypeBinding.java:1855)
at org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.getAnnotations(ReferenceBinding.java:1067)
at org.eclipse.jdt.core.dom.TypeBinding.getAnnotations(TypeBinding.java:122)
at com.microsoft.java.test.plugin.searcher.JUnit5TestSearcher.matchesNameInAnnotationHierarchy(JUnit5TestSearcher.java:110)
at com.microsoft.java.test.plugin.searcher.JUnit5TestSearcher.findAnnotation(JUnit5TestSearcher.java:85)
at com.microsoft.java.test.plugin.searcher.JUnit5TestSearcher.isTestMethod(JUnit5TestSearcher.java:69)
at com.microsoft.java.test.plugin.util.TestSearchUtils.findTestItemsInTypeBinding(TestSearchUtils.java:382)
at com.microsoft.java.test.plugin.util.TestSearchUtils.findTestTypesAndMethods(TestSearchUtils.java:360)
at com.microsoft.java.test.plugin.handler.TestDelegateCommandHandler.executeCommand(TestDelegateCommandHandler.java:60)
Hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Hướng nghiên cứu
Bắt đầu với JUnit5TestSearcher.java tại các dòng 69, 85 và 110, sau đó lần theo các stack trace qua TestSearchUtils.findTestItemsInTypeBinding. Tái hiện việc phát hiện test cho dự án bị ảnh hưởng và xác định đường dẫn nào trong hệ thống phân cấp annotation gây ra các NullPointerExceptions đã được báo cáo; hoàn thành khi việc tìm kiếm test JUnit 5 kết thúc mà không có các lỗi này.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- java
- Lĩnh vực
- testing-qa
- Loại issue
- Lỗi
- Độ khó
- 3/5
- Thời gian dự kiến
- 1-2 ngày
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Cần làm rõ
- Mức phù hợp với người mới
- 30/100