Automatic testing

Projeto LI3

Arquitetura do projeto

diagrama

Diagrama

Relatórios

Requerimentos

install
apt install gcc make libglib2.0-dev libgtk2.0-dev gdb valgrind -y

Utilização

cd trabalho-pratico/
make

Modo Batch:

./programa-principal <dir_with_csvs> <input_file_path> 

Modo Interativo:

./programa-principal
exemplo de utilização
Enter dataset path: dataset
Number of drivers parsed: 10000
Number of users parsed:  100000
Number of rides parsed: 1000000
$ 1 SaCruz110
Santiago Cruz;M;31;3.200;5;50.340
$ 3 2    
Anita-PetPinto38;Anita-Petra Pinto;240
REsteves70;Raquel Esteves;234
$ 4 Braga
10.062
$ (Ctrl + D) 
Exit with success

Testagem

programa-testes:

make programa-testes
./programa-testes <dir_with_csvs> <dir_with_input_and_outputs>
exemplo de output
Teste de desempenho - Parsing dos dados
Number of drivers parsed: 10000
Number of users parsed:  100000
Number of rides parsed: 1000000
Parsing data time: 8.66s

Teste de desempenho - Avaliação de queries
Query 1 | 0.00000175s | "1 SaCruz110"
Query 2 | 0.00003250s | "2 50"
Query 3 | 0.00002250s | "3 50"
Query 4 | 0.00000300s | "4 Braga"
Query 5 | 0.02394250s | "5 01/01/2021 01/02/2021"
Query 6 | 0.06587550s | "6 Porto 01/01/2021 01/02/2021"
Query 7 | 0.00001600s | "7 50 Lisboa"
Query 8 | 0.00361250s | "8 M 12"
Query 9 | 0.01861500s | "9 01/01/2021 01/02/2021"

(...)

Teste funcional - Validação de queries
command1_output.txt:    Pass ✔
command2_output.txt:    Pass ✔
command3_output.txt:    Pass ✔
command4_output.txt:    Pass ✔
command5_output.txt:    Pass ✔
command6_output.txt:    Pass ✔
command7_output.txt:    Pass ✔
command8_output.txt:    Pass ✔
command9_output.txt:    Pass ✔
command10_output.txt:    Pass ✔
command11_output.txt:    Pass ✔
command12_output.txt:    Pass ✔
command13_output.txt:    Pass ✔
command14_output.txt:    Pass ✔
command15_output.txt:    Pass ✔
command16_output.txt:    Pass ✔
command17_output.txt:    Pass ✔
command18_output.txt:    Pass ✔
command19_output.txt:    Pass ✔

malloc_stats
Arena 0:
system bytes     =  550182912
in use bytes     =  550137440
Total (incl. mmap):
system bytes     = 1071362048
in use bytes     = 1071316576
max mmap regions =         30
max mmap bytes   =  588943360

malloc_stats after freeing memory
Arena 0:
system bytes     =  550182912
in use bytes     =  259894208
Total (incl. mmap):
system bytes     = 1021255680
in use bytes     =  730966976
max mmap regions =         30
max mmap bytes   =  588943360

Debug

make debug

GDB:

gdb ./programa-principal

Valgrind:

valgrind ./programa-principal <dir_with_csvs> <input_file_path>

Realizado por:

a100711,João Andrade Rodrigues,joaorodriguesss

a95485,Miguel Torres Carvalho,migueltc13

a100754,Rafael Vale da Costa Peixoto,Rafa-Peixoto