2016-06-08 2 views
3

go test -coverprofile=cover.out을 Jenkins가 수락 할 수있는 형식으로 변환 할 수있는 도구가 있는지 궁금합니다. go-junit-reportgo2xunit과 같은 도구를 찾았지만 실제로는 범위 보고서가 아닌 go test -v의 결과 만 변환합니다.Jenkins와의 통합 보도 자료

저는 Jenkins의 상세한 테스트 커버리지를 직접 알고 싶습니다. 기본적으로 Jenkins 웹 페이지에서 go tool cover -func=cover.outgo tool cover -html=cover.out의 출력을보고 싶습니다.

답변

0

Go Coverage 보고서 전용 플러그인이나 일반 코드 커버리지를위한 플러그인이 없습니다.

이와 같은 보고서의 경우 .html 파일을 게시하는 동안 HTML Publisher Plugin을 게시합니다.

+0

방금 ​​https://github.com/AlekSi/gocov-xml을 찾았습니다. 필요한 조치를 취할 것입니다. –

+0

아, 멋지다. 알아 둘만한! –

0

여러 이동 젠킨스에 대한 Cobertura에 go test에서 범위의 데이터를 변환하는 도구가 있습니다. 다음과 같이

당신은 gocover-cobertura을 사용할 수 있습니다 : 당신이 run -coverprofile against multiple packages in one run에 1.10+ 이동이 필요합니다

$ go get github.com/t-yuki/gocover-cobertura 

$ go test -coverprofile=cover.out example.com/demo/... 
ok  example.com/demo 0.008s coverage: 0.0% of statements 
ok  example.com/demo/cmd/demo 0.020s coverage: 23.4% of statements 

$ gocover-cobertura <cover.out> coverage.xml 

$ head coverage.xml 
<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE coverage SYSTEM "http://cobertura.sourceforge.net/xml/coverage-04.dtd"> 
<coverage line-rate="0.35415787" branch-rate="0" version="" timestamp="1520609235359" lines-covered="839" lines-valid="2369" branches-covered="0" branches-valid="0" complexity="0"> 
     <sources> 
       <source>/usr/local/go/src</source> 
       <source>/Users/wilfred/workspace/go-scratch/src</source> 
     </sources> 
     <packages> 
       <package name="example.com/demo/cmd/demo" line-rate="0.4848485" branch-rate="0" complexity="0"> 
         <classes> 

참고.

관련 문제