Thông số kỹ thuật cho Đầu ra XML JUnit [đã đóng]


84

Tôi có thể tìm thông số kỹ thuật của đầu ra XML của JUnit ở đâu. Mục tiêu của tôi là viết một trình báo cáo UnitTest ++ XML tạo ra JUnit giống như đầu ra.

Xem: " Không thể lấy hudson để phân tích cú pháp XML đầu ra kiểm tra JUnit " và " Hudson, C ++ và UnitTest ++ "


Bạn có thể cung cấp thêm một số thông tin, ý bạn là đầu ra nào? Có lẽ là một ví dụ hoặc hướng dẫn làm thế nào để có được một cuộc gọi như vậy? Cảm ơn!
touristda

Nó dành cho JUnit 4.x? Bạn sử dụng TestRunner nào?
evalda

nếu bạn có thời gian để viết báo cáo XML cho UnitTest ++, tôi sẽ rất quan tâm nếu bạn có thể chia sẻ nó.
Vincent

21
Tôi ngạc nhiên khi biết rằng việc tìm kiếm một đặc điểm kỹ thuật hoặc tiêu chuẩn "có xu hướng thu hút những câu trả lời có ý kiến ​​...". Tôi có thể hiểu tại sao thảo luận về một thông số kỹ thuật hoặc tiêu chuẩn sẽ tạo ra những vấn đề như vậy, nhưng bản thân một thông số kỹ thuật chỉ đơn giản là một sự thật cụ thể. Nó tồn tại hoặc nó không tồn tại và người trả lời có thể biết nó tồn tại ở đâu hoặc không. Với tầm quan trọng của các thông số kỹ thuật và tiêu chuẩn trong việc giúp phần mềm hiện đại - những tạo tác phức tạp nhất mà con người từng xây dựng - tương tác với nhau, tôi nghĩ rằng các hướng dẫn SO nên được thay đổi để cho phép các loại câu hỏi này.
Arthur

Câu trả lời:


50

Bạn có thể tìm thấy một XSD dựa trên mã trong Apache Ant 1.8.2 tại https://github.com/windyroad/JUnit-Schema


4
Xem bài bình luận của tôi tại windroad.zendesk.com/entries/… để biết các phần bị thiếu trong XSD này.
Reinderien

mang lại những nhận xét tại chỗ, Reinderienphát hiện ra rằng đây là dường như bị mất tích: /testsuites/testsuite/@skipped, /testsuites/testsuite/testcase/skipped, /testsuites/testsuite/error, /testsuites/testsuite/failure, /testsuites/testsuite/system-err, sau readthrough của XMLJUnitResultFormatter.java, XMLResultAggregator.java, XMLConstants.javatại svn.apache.org/repos/asf/ant/core/trunk/src/main/org/ apache /…
n611x007

1
@naxa, tôi tin rằng những nút đó đã được thêm vào sau Apache Ant 1.8.2. Tôi nhớ lại mình đã rất kỹ lưỡng vào thời điểm đó (hồi ăn xin năm 2011). Tôi vừa chuyển XSD sang github và chuyển giấy phép sang Giấy phép Apache phiên bản 2.0. Vui lòng fork và cập nhật.
Tom Howard,

12

Đầu ra xml không được tạo ra bởi JUnit (ít nhất, không phải junit.jar), mà bởi nhiệm vụ kiến ​​junit.
Lớp có liên quan là org.apache.tools.ant.taskdefs.optional.junit.XMLJUnitResultFormatter .


2
Điều đó thật tuyệt. Tôi muốn xem tài liệu thực hoặc một thông số kỹ thuật thực, nhưng nếu không thì không có gì có thẩm quyền hơn nguồn.
Giá Greg vào

Việc giải thích nguồn đó cũng yêu cầu đọc svn.apache.org/repos/asf/ant/core/trunk/src/main/org/apache/… .
Reinderien

Cũng đọc svn.apache.org/repos/asf/ant/core/trunk/src/main/org/apache/… vì nó là nguồn của gói và thuộc tính ID.
Reinderien

8

Tôi đã tìm thấy một số thông số kỹ thuật không chính thức tại http://ant.1045680.n5.nabble.com/schema-for-junit-xml-output-td1375274.html


1
vâng, tôi cũng đã đến trang đó, nhưng nó chưa hoàn chỉnh. trong việc mở rộng RUnit (thử nghiệm đơn vị cho R) để nó tạo ra đầu ra tương thích với Hudson, tôi đã kết thúc việc tạo ra một "testsuite", có một danh sách "testsuite" và trong tất cả "testcase" này. Tôi vẫn không biết cách đánh dấu các bài kiểm tra đã hủy kích hoạt.
mariotomo

6

Như những người khác đã đề cập, xml được xử lý bởi ANT không phải jUnit

Đây là thông số kỹ thuật tốt nhất mà tôi đã thấy. Từ bài đăng này


-5

Tôi chỉ có thể cung cấp cho bạn một thông tin chung.

Trong mã nguồn của JUnit , bạn sẽ tìm thấy thông tin của mình. Nếu bạn cung cấp thêm một số thông tin, tôi có thể giúp bạn thêm. Gợi ý cá nhân của tôi để tìm thông số kỹ thuật của bạn sẽ là junit.framework.TestResult.

Chúc may mắn!


2
JUnit không biết gì về định dạng này. Nó được tạo ra bởi kiến. Đó là một công việc kinh doanh hơi buồn cười.
Tom Anderson
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.