Skip to content

Convenzioni

drblallo edited this page Apr 13, 2018 · 5 revisions

Convenzioni di pushing

  • Mai pushare una branch diversa master
  • Il nuovo codice deve avere copertura di istruzioni di almeno 90%
  • Il nuovo codice deve avere copertura di condizioni di almeno 80%
  • Tutti i casi di test devono funzionare in locale.
  • Sonarqube non deve indicare bug o code smells
  • queste condizioni non sono necessarie nel caso di stia pushando una commit che contiene solo nuovi casi di test

Se una push non soddisfa queste convenzioni allora verrà respinta.

Commenti

Non è necessario commentare immediatamente il codice, I commenti devono essere caricati entro una settimana dal resto del codice.

Problemi platform dependant.

Se un test fallisce su una sola piattaforma allora è concesso pushare comunque tale commit. Tale problema deve essere risolto il più velocemente possibile.

comandi utili

Il comando maven da eseguire per caricare il codice su sonarqube è

  • mvn clean test verify sonar:sonar

Se si esegue la commit in locale e ci si accorge che una delle convenzioni non è rispettata e ciò implica poche righe di modica, si può utilizzare git --amend per aggiungere le modifiche alla ultima commit

  • git --amend -m "nuovo messaggio"

come segnalare un bug

Se notate un bug in codice edito da un altra persona, la procedura è la seguente:

  • tentare di scrivere un pezzo di codice che causa l'errore.
  • se si riesce a scrivere il pezzo di codice, allora creare un caso di test che causa l'errore.
  • pushare le modifiche
  • aggiungere una issue indicando la descrizione del bug e la locazione locazione del caso di test se presente

Loggers

tutorial: http://www.vogella.com/tutorials/Logging/article.html

creazione del logger private static final Logger LOGGER = Logger.getLogger(NOME_CLASSE_CORRENTE.class.getName());

WHY IT DOES NOT WRITE? per qualche motivo bisogna settare il livello del logger e dell'handler. Logger.getLogger(NOME_CLASSE_CORRENTE.class.getName()).getParent().getHandlers()[0].setLevel(Level.ALL); Logger.getLogger(NOME_CLASSE_CORRENTE.class.getName()).setLevel(Level.ALL);

Clone this wiki locally