coviolations.io рдЕрдм рдмреАрдЯрд╛ рд╣реИ

coviolations.io - рдкрд░реАрдХреНрд╖рдгреЛрдВ рдФрд░ рдХреЛрдб рдПрдирд╛рд▓рд╛рдЗрдЬрд╝рд░ рдХреЗ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреА рдХрд▓реНрдкрдирд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реЗрд╡рд╛ рдЖрдЬ рдмреАрдЯрд╛ рдЪрд░рдг рдореЗрдВ рдЪрд▓реА рдЧрдИ рд╣реИред

рдкреНрд░рдореБрдЦ рдирд╡рд╛рдЪрд╛рд░:


рдЧреАрдереВрдм рдПрдХреАрдХрд░рдг


рдЗрд╕ рдЕрдкрдбреЗрдЯ рдиреЗ рдЬреАрдердм рдХреЗ рд╕рд╛рде рдПрдХреАрдХрд░рдг рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд┐рдпрд╛ рд╣реИ: рдЕрдм рдХреЛрд╡рд┐рдУрд▓реЗрд╢рди рдЖрдкрдХреЗ рдирд┐рдЬреА рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдФрд░ рдХрдВрдкрдиреА рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдЖрдкрдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рд╣реИред


рдХрдорд┐рдЯреНрд╕ рдХреА рд╕реНрдерд┐рддрд┐ рдЪрд┐рдкрдХрд╛ рджреА рдЬрд╛рддреА рд╣реИ (рдХреЗрд╡рд▓ рдХрдорд┐рдЯреНрд╕ рдФрд░ рдкреБрд▓ рдЕрдиреБрд░реЛрдз рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреЗрддреА рд╣реИ):


рдХреЛрдб рдПрдиреЛрдЯреЗрд╢рди рдореЗрдВ рддреНрд░реБрдЯрд┐рдпрд╛рдВ рдФрд░ рдЪреЗрддрд╛рд╡рдиреА:


рдкреБрд▓ рдЕрдиреБрд░реЛрдз рдХреЗ рд▓рд┐рдП рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд╕рд╛рд░рд╛рдВрд╢:


рдирдпрд╛ рдлреИрд╢рдиреЗрдмрд▓ рдЗрдВрдЯрд░рдлрд╝реЗрд╕


рдЧреНрд░рд╛рд╣рдХ рдкрдХреНрд╖ рдХреЛ backbone.js рд╕реЗ AngularJS рдореЗрдВ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИред рдЗрд╕рдиреЗ рдХреЛрдб рдХреА ~ 900 рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдлреЗрдВрдХрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреАред

рдбреИрд╢рдмреЛрд░реНрдб рджрд┐рдЦрд╛рдИ рджрд┐рдпрд╛:


рдПрдХ рдХрд╛рд░реНрдп рдХрд╛ рдирдпрд╛ рдкреНрд░рджрд░реНрд╢рди:


рд╕рдкреНрддрд╛рд╣ рдХреЗ рджрд┐рди рдФрд░ рджрд┐рди рдХреЗ рднрд╛рдЧ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдкреБрд╢ рдХреА рд╕рдлрд▓рддрд╛:


xUnit, рдХрд╡рд░реЗрдЬ, jslint рдФрд░ covio.yml


рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ xUnit, рдХрд╡рд░реЗрдЬ рдФрд░ jslint рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдердиред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП .covio.yml рдЗрди рд╕рднреА рдХреЗ рд╕рд╛рде:
 violations: jslint: jslint static/js/*.js coverage: coverage report xunit: cat xunit.xml 

рдЕрдм рдЖрдк рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ "рд╡рд┐рд╢реНрд▓реЗрд╖рдХ" рдХрд╛рд░реНрдп рдХреА рд╕реНрдерд┐рддрд┐ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдкрд╛рдЗрдк-рд╕рдореАрдХреНрд╖рд╛ рдХреЗ рд▓рд┐рдП:
 violations: pip_review: command: pip-review nofail: true 

рдЖрдк рдкрд░рд┐рдгрд╛рдо stderr рд╕реЗ рд▓реЗ рд╕рдХрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЕрдЬрдЧрд░ unittest рдФрд░ django рдХреЗ рд▓рд┐рдП:
 violations: py_unittest: command: ./manage.py test stderr: true 

рдФрд░ рдЖрдк github рдХреЛрдб рдкрд░ рдЯрд┐рдкреНрдкрдгреА рдХрд░рдиреЗ рдХреЛ рдЕрдХреНрд╖рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП jslint:
 violations: jslint: command: jslint static/js/*.js nocomment: true 


рд╕рдВрджрд░реНрдн


coviolations.io
рдбреЙрдХреНрд╕ рдкреНрд░рд▓реЗрдЦрди рдкрдврд╝реЗрдВ
рд╕рд░реНрд╡рд░ рд╕реНрд░реЛрдд рдХреЛрдб
рдЧреНрд░рд╛рд╣рдХ рд╕реНрд░реЛрдд рдХреЛрдб

Source: https://habr.com/ru/post/In198208/


All Articles