Skip to content

Project for Advanced Techniques and Tools for Software Development (ATTSD) Course.

Notifications You must be signed in to change notification settings

LorenzoPratesi/contacts-manager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

81 Commits
 
 
 
 
 
 

Repository files navigation

Contacts Manager

Java CI with Maven in Linux Java CI with Maven and Docker in Windows Java CI with Maven and Docker in macOS

Coverage Status Quality Gate Status Bugs Code Smells Technical Debt Vulnerabilities

This repository holds the project for the course Advanced Techniques and Tools for Software Development (ATTSD) Course of Data Science in the University of Florence.
This project resembles a skeleton of a contact managing application that can store, delete, update and search contacts from a storage or equivalent. The application is intended to be kept simple because the focus of the project was the usage of the techniques learned during the course, such as TDD, Continuous Integration, GIT, Docker, Mutation Testing and more.

System Requirements

  • Maven (version 3.8.2 used during development)
  • Docker (version 20.10.10 used during development)
  • Java (version 8 or higher)

How to Build the Project

  1. Clone the Repository.
git clone https://github.com/LorenzoPratesi/contacts-manager
  1. Set Project Main Directory.
cd contacts-manager/org.unifi.lorenzopratesi.app.contacts
  1. Build the Project - Compile code, Unit, Integration and End To End tests
mvn clean verify

or With Also JaCoCo and Pit Report

mvn clean verify -Pjacoco,mutation-testing

Run the application

Jar file creation

If you want to build by yourself the application, you have to do the following steps:

  1. Clone the Repository.
git clone https://github.com/LorenzoPratesi/contacts-manager
  1. Set Project Main Directory.
cd contacts-manager/org.unifi.lorenzopratesi.app.contacts
  1. Run a maven build, with clean and package goals
mvn clean package

Usage

Before launching the application, you have to launch a MongoDB instance. You can launch the docker container using

docker run -p 27017:27017 --rm mongo:4.4.3

Set Project Main Directory.

cd contacts-manager/org.unifi.lorenzopratesi.app.contacts

After generating the jar by executing the maven phase package (i.e mvn clean package), the application can be launched executing the jar file

java -jar target/contacts-0.0.1-SNAPSHOT-jar-with-dependencies.jar

Releases

No releases published

Packages

No packages published

Languages