diff --git a/pkg/printers/junitxml.go b/pkg/printers/junitxml.go index 2d01808561b7..39cd4247c02c 100644 --- a/pkg/printers/junitxml.go +++ b/pkg/printers/junitxml.go @@ -3,6 +3,7 @@ package printers import ( "context" "encoding/xml" + "fmt" "strings" "github.com/golangci/golangci-lint/pkg/logutils" @@ -31,6 +32,7 @@ type testCaseXML struct { type failureXML struct { Message string `xml:"message,attr"` + Type string `xml:"type,attr"` Content string `xml:",cdata"` } @@ -56,8 +58,10 @@ func (JunitXML) Print(ctx context.Context, issues []result.Issue) error { Name: i.FromLinter, ClassName: i.Pos.String(), Failure: failureXML{ + Type: i.Severity, Message: i.Pos.String() + ": " + i.Text, - Content: i.Pos.String() + ": " + i.Text + "\n" + strings.Join(i.SourceLines, "\n"), + Content: fmt.Sprintf("%s: %s\nCategory: %s\nFile: %s\nLine: %d\nDetails: %s", + i.Severity, i.Text, i.FromLinter, i.Pos.Filename, i.Pos.Line, strings.Join(i.SourceLines, "\n")), }, }