diff --git a/src/libs/routes/dailyChargeAmount.js b/src/libs/routes/dailyChargeAmount.js
index 5935372edafb614798f36663e6fbe402fd999509..b8b3726b7ae28c21fcdb7fa43538f9a23306549a 100644
--- a/src/libs/routes/dailyChargeAmount.js
+++ b/src/libs/routes/dailyChargeAmount.js
@@ -289,7 +289,11 @@ dailyChargeAmount.get('/', rqf.parse(), rqf.build(), (req, res, next) => {
         req.sql.from('turma')
         .field('turma.ano_censo', 'year')
         .field('turma.etapa_resumida', 'education_level_short_id')
-        .field('AVG(turma.duracao_turma)/60', 'average_class_duration')
+        .field('AVG(turma.duracao_turma)/60.0', 'average_class_duration')
+        .field('MEDIAN(turma.duracao_turma)/60.0', 'median_class_duration')
+        .field('STDDEV_POP(turma.duracao_turma)/60.0', 'std_class_duration')
+        .field('QUANTILE(turma.duracao_turma, 0.25)/60.0', 'fstqt_class_duration')
+        .field('QUANTILE(turma.duracao_turma, 0.75)/60.0', 'thdqt_class_duration')
         .group('turma.ano_censo')
         .group('turma.etapa_resumida')
         .order('turma.ano_censo')
@@ -345,7 +349,7 @@ dailyChargeAmount.get('/average', rqf.parse(), rqf.build(), (req, res, next) =>
         req.sql.from('turma')
         .field('turma.ano_censo', 'year')
         .field('turma.etapas_mod_ensino_segmento_id', 'education_level_mod_id')
-        .field('AVG(turma.duracao_turma)/60', 'average_class_duration')
+        .field('AVG(turma.duracao_turma)/60.0', 'average_class_duration')
         .group('turma.ano_censo')
         .group('turma.etapas_mod_ensino_segmento_id')
         .order('turma.ano_censo')
diff --git a/src/test/dailyChargeAmount.js b/src/test/dailyChargeAmount.js
new file mode 100644
index 0000000000000000000000000000000000000000..92e2b59a1fdb88c4ec470120098c047aa3ffe2dd
--- /dev/null
+++ b/src/test/dailyChargeAmount.js
@@ -0,0 +1,159 @@
+process.env.NODE_ENV = 'test';
+
+const chai = require('chai');
+
+const dirtyChai = require('dirty-chai');
+
+chai.use(dirtyChai);
+
+const chaiXml = require('chai-xml');
+
+chai.use(chaiXml);
+
+const chaiHttp = require('chai-http');
+
+const assert = chai.assert;
+
+const expect = chai.expect;
+
+const should = chai.should(); // actually call the function
+
+const libs = `${process.cwd()}/libs`;
+
+const server = require(`${libs}/app`);
+
+chai.use(chaiHttp);
+describe('request daily charge amount', () => {
+    it('should list the year range', (done) => {
+        chai.request(server)
+            .get('/api/v1/dailyChargeAmount/year_range')
+            .end((err, res) => {
+                res.should.have.status(200);
+                res.should.be.json;
+                res.body.should.have.property('result');
+                res.body.result.should.be.a('array');
+                res.body.result[0].should.have.property('start_year');
+                res.body.result[0].should.have.property('end_year');
+                done();
+            });
+    });
+
+    it('should list the year range', (done) => {
+        chai.request(server)
+            .get('/api/v1/dailyChargeAmount/years')
+            .end((err, res) => {
+                res.should.have.status(200);
+                res.should.be.json;
+                res.body.should.have.property('result');
+                res.body.result.should.be.a('array');
+                res.body.result[0].should.have.property('year');
+                done();
+            });
+    });
+
+    it('should list the locations', (done) => {
+        chai.request(server)
+            .get('/api/v1/dailyChargeAmount/location')
+            .end((err, res) => {
+                res.should.have.status(200);
+                res.should.be.json;
+                res.body.should.have.property('result');
+                res.body.result.should.be.a('array');
+                res.body.result[0].should.have.property('id');
+                res.body.result[0].should.have.property('name');
+                done();
+            });
+    });
+
+    it('should list education level short', (done) => {
+        chai.request(server)
+            .get('/api/v1/dailyChargeAmount/education_level_short')
+            .end((err, res) => {
+                res.should.have.status(200);
+                res.should.be.json;
+                res.body.should.have.property('result');
+                res.body.result.should.be.a('array');
+                res.body.result[0].should.have.property('id');
+                res.body.result[0].should.have.property('name');
+                done();
+            });
+    });
+
+    it('should list education level mod', (done) => {
+        chai.request(server)
+            .get('/api/v1/dailyChargeAmount/education_level_mod')
+            .end((err, res) => {
+                res.should.have.status(200);
+                res.should.be.json;
+                res.body.should.have.property('result');
+                res.body.result.should.be.a('array');
+                res.body.result[0].should.have.property('id');
+                res.body.result[0].should.have.property('name');
+                done();
+            });
+    });
+
+    it('should list the dimensions of education_level_short', (done) => {
+        chai.request(server)
+            .get('/api/v1/dailyChargeAmount?dims=education_level_short&filter=min_year:"2015",max_year:"2015",integral_time:"0",period:["3"]')
+            .end((err, res) => {
+                res.should.have.status(200);
+                res.should.be.json;
+                res.body.should.have.property('result');
+                res.body.result.should.be.a('array');
+                res.body.result[0].should.have.property('year');
+                res.body.result[0].should.have.property('education_level_short_id');
+                res.body.result[0].should.have.property('education_level_short_name');
+                res.body.result[0].should.have.property('average_class_duration');
+                res.body.result[0].should.have.property('median_class_duration');
+                res.body.result[0].should.have.property('std_class_duration');
+                res.body.result[0].should.have.property('fstqt_class_duration');
+                res.body.result[0].should.have.property('thdqt_class_duration');
+                done();
+            });
+    });
+
+    it('should list the filter of education level mod', (done) => {
+        chai.request(server)
+            .get('/api/v1/dailyChargeAmount/average?filter=education_level_mod:["3","4","5","6"],integral_time:"0",period:["3"]')
+            .end((err, res) => {
+                res.should.have.status(200);
+                res.should.be.json;
+                res.body.should.have.property('result');
+                res.body.result.should.be.a('array');
+                res.body.result[0].should.have.property('year');
+                res.body.result[0].should.have.property('education_level_mod_id');
+                res.body.result[0].should.have.property('education_level_mod_name');
+                res.body.result[0].should.have.property('average_class_duration');
+                done();
+            });
+    });
+
+    it('should return 400 with no filters', (done) => {
+        chai.request(server)
+            .get('/api/v1/dailyChargeAmount')
+            .end((err, res) => {
+                res.should.have.status(400);
+                res.should.be.json;
+                res.body.should.have.property('error');
+                res.body.error.should.be.equal('Wrong/No filter specified');
+                done();
+            })
+    });
+
+    it('should return 400 with no filters', (done) => {
+        chai.request(server)
+            .get('/api/v1/dailyChargeAmount/average?filter=education_level_mod:["3","4","5","6"]')
+            .end((err, res) => {
+                res.should.have.status(200);
+                res.should.be.json;
+                res.body.should.have.property('result');
+                res.body.result.should.be.a('array');
+                res.body.result[0].should.have.property('year');
+                res.body.result[0].should.have.property('education_level_mod_id');
+                res.body.result[0].should.have.property('education_level_mod_name');
+                res.body.result[0].should.have.property('average_class_duration');
+                done();
+            });
+    });
+});