1 Star 0 Fork 17

xiaosunabc / goreporter

forked from wgliang / goreporter 
Create your Gitee Account
Explore and code with more than 5 million developers,Free private repositories !:)
Sign up
Clone or download
Cancel
Notice: Creating folder will generate an empty file .keep, because not support in Git
Loading...
README.md

goreporter

goreporter Version Status

Current Release Build Status GoDoc License

A Golang tool that does static analysis, unit testing, code review and generate code quality report. This is a tool that concurrently runs a whole bunch of those linters and normalizes their output to a report:

Supported linters

  • unittest - Golang unit test status.
  • deadcode - Finds unused code.
  • gocyclo - Computes the cyclomatic complexity of functions.
  • varcheck - Find unused global variables and constants.
  • structcheck - Find unused struct fields.
  • aligncheck - Warn about un-optimally aligned structures.
  • errcheck - Check that error return values are used.
  • copycode(dupl) - Reports potentially duplicated code.
  • gosimple - Report simplifications in code.
  • staticcheck - Statically detect bugs, both obvious and subtle ones.
  • godepgraph - Godepgraph is a program for generating a dependency graph of Go packages.
  • misspell - Correct commonly misspelled English words... quickly.
  • countcode - Count lines and files of project.

Supported template

  • html template file which can be loaded via -t <file>.

Todo List

  • There are still many shortcomings in the presentation of the report, showing that the model is not perfect, and hope that someone can help optimize it.
  • Bad Practice:the code violates the accepted best practice standards
  • Malicious code vulnerability
  • Performance
  • Security

Installing

Requirements

Quickstart

Install goreporter (see above).

$ go get -u github.com/360EntSecGroup-Skylar/goreporter

Run it:

NOTE

You have to confirm that your project is operational. In particular, the problem with vendor, when the package is not found in the default path, goreporter will look again from the possible vendor path.

$ goreporter -p [projectRelativePath] -r [reportPath] -e [exceptPackagesName] -f [json/html/text]  {-t templatePathIfHtml}
  • -p Must be a valid Golang project path.
  • -r Save the path to the report.
  • -e Exceptional packages (multiple separated by commas, for example: "linters/aligncheck,linters/cyclo" ).
  • -f report format json, html OR text.
  • -t Template path,if not specified, the default template will be used.

By default, the default template is used to generate reports in html format.

Example

goreporter-display

you can see result detail:online-example-report

example:github.com/wgliang/logcool

github.com/wgliang/logcool

Credits

Logo is designed by Ri Xu

Comments ( 0 )

Sign in for post a comment

About

业界第一款Go代码分析工具;最受欢迎的Go代码质量分析工具;自动化生成代码质量报告 spread retract
Cancel

Releases

No release

Contributors

All

Activities

load more
can not load any more
Go
1
https://gitee.com/testwinabc/goreporter.git
git@gitee.com:testwinabc/goreporter.git
testwinabc
goreporter
goreporter
master

Search