diff --git a/src/test/test.js b/src/test/test.js
index 65187f1c2b6f003fa1a0bbad61180361deb65638..854e26ff1a9517e2df541e7a0e0c02a0ce6a3619 100644
--- a/src/test/test.js
+++ b/src/test/test.js
@@ -870,6 +870,56 @@ describe('Saves a user', () => {
         });
     });
 
+    it('should not create a user with a CPF that is already in use', (done) => {
+        let newUser = new User();
+
+        newUser.email = 'lorem@ipsum.com';
+        newUser.password = '123mudar';
+        newUser.name = 'Gute';
+        newUser.cpf = '08236017907';
+        newUser.schooling = 'Doutorado';
+        newUser.course = 'Ciência da Computação';
+        newUser.segment = 'Comunidade acadêmica';
+        newUser.role = 'Pesquisador';
+        newUser.institution_name = 'UFPR';
+        newUser.state = 'PR';
+        newUser.city = 'Curitiba';
+
+        newUser.save((err) => {
+            if (err) {
+                console.log('MongoDB error:' + err);
+            }
+        }).then(function(newuser){
+            chai.request(server)
+                .post('/api/v1/user')
+                .set('content-type', 'application/x-www-form-urlencoded')
+                .set('x-apicache-bypass', 'true')
+                .send({email: 'dolor@ipsum.com',
+                       password: '123mudar',
+                       name: 'Tequila Baby',
+                       cpf: '08236017907',
+                       schooling: 'Doutorado',
+                       course: 'Ciência da Computação',
+                       segment: 'Comunidade acadêmica',
+                       role: 'Pesquisador',
+                       institution_name: 'UFPR',
+                       state: 'PR',
+                       city: 'Cutiriba'})
+                .end((err, res) =>{
+                    res.should.have.status(200);
+                    res.should.be.json;
+                    res.body.should.have.property('success');
+                    res.body.success.should.equal(false);
+                    res.body.should.have.property('msg');
+                    res.body.msg.should.equal('O CPF informado já está cadastrado.');
+                    User.findOne({'email': 'dolor@ipsum.com'}, (err, user) => {
+                            expect(user).to.not.exist;
+                            done();
+                    });
+                });
+        });
+    });
+
     it('should not save an user without email', (done) => {
         chai.request(server)
             .post('/api/v1/user')
@@ -1016,7 +1066,36 @@ describe('Saves a user', () => {
             });
     });
 
-    it('should not save an user without CPF', (done) => {
+    it('should not save an user without segment', (done) => {
+        chai.request(server)
+            .post('/api/v1/user')
+            .set('content-type', 'application/x-www-form-urlencoded')
+            .set('x-apicache-bypass', 'true')
+            .send({email: 'lorem@ipsum.com',
+                   password: '123mudar',
+                   name: 'Tequila baby',
+                   schooling: 'Doutorado',
+                   cpf: '48303270737',
+                   course: 'Ciência da Computação',
+                   role: 'Pesquisador',
+                   institution_name: 'UFPR',
+                   state: 'PR',
+                   city: 'Cutiriba'})
+            .end((err, res) =>{
+                res.should.have.status(200);
+                res.should.be.json;
+                res.body.should.have.property('success');
+                res.body.success.should.equal(false);
+                res.body.should.have.property('msg');
+                res.body.msg.should.equal('O campo Segmento é obrigatório.');
+                User.findOne({'email': 'lorem@ipsum.com'}, (err, user) => {
+                        expect(user).to.not.exist;
+                        done();
+                });
+            });
+    });
+
+    it('should not save an user without schooling', (done) => {
         chai.request(server)
             .post('/api/v1/user')
             .set('content-type', 'application/x-www-form-urlencoded')
@@ -1045,4 +1124,120 @@ describe('Saves a user', () => {
             });
     });
 
+    it('should not save an user without role', (done) => {
+        chai.request(server)
+            .post('/api/v1/user')
+            .set('content-type', 'application/x-www-form-urlencoded')
+            .set('x-apicache-bypass', 'true')
+            .send({email: 'lorem@ipsum.com',
+                   password: '123mudar',
+                   name: 'Tequila baby',
+                   schooling: 'Doutorado',
+                   cpf: '48303270737',
+                   course: 'Ciência da Computação',
+                   segment: 'Comunidade acadêmica',
+                   institution_name: 'UFPR',
+                   state: 'PR',
+                   city: 'Cutiriba'})
+            .end((err, res) =>{
+                res.should.have.status(200);
+                res.should.be.json;
+                res.body.should.have.property('success');
+                res.body.success.should.equal(false);
+                res.body.should.have.property('msg');
+                res.body.msg.should.equal('O campo Função é obrigatório.');
+                User.findOne({'email': 'lorem@ipsum.com'}, (err, user) => {
+                        expect(user).to.not.exist;
+                        done();
+                });
+            });
+    });
+
+    it('should not save an user without institution', (done) => {
+        chai.request(server)
+            .post('/api/v1/user')
+            .set('content-type', 'application/x-www-form-urlencoded')
+            .set('x-apicache-bypass', 'true')
+            .send({email: 'lorem@ipsum.com',
+                   password: '123mudar',
+                   name: 'Tequila baby',
+                   schooling: 'Doutorado',
+                   cpf: '48303270737',
+                   course: 'Ciência da Computação',
+                   segment: 'Comunidade acadêmica',
+                   role: 'Pesquisador',
+                   state: 'PR',
+                   city: 'Cutiriba'})
+            .end((err, res) =>{
+                res.should.have.status(200);
+                res.should.be.json;
+                res.body.should.have.property('success');
+                res.body.success.should.equal(false);
+                res.body.should.have.property('msg');
+                res.body.msg.should.equal('O campo Instituição em que trabalha é obrigatório.');
+                User.findOne({'email': 'lorem@ipsum.com'}, (err, user) => {
+                        expect(user).to.not.exist;
+                        done();
+                });
+            });
+    });
+
+    it('should not save an user without city', (done) => {
+        chai.request(server)
+            .post('/api/v1/user')
+            .set('content-type', 'application/x-www-form-urlencoded')
+            .set('x-apicache-bypass', 'true')
+            .send({email: 'lorem@ipsum.com',
+                   password: '123mudar',
+                   name: 'Tequila baby',
+                   schooling: 'Doutorado',
+                   cpf: '48303270737',
+                   course: 'Ciência da Computação',
+                   segment: 'Comunidade acadêmica',
+                   institution_name: 'UFPR',
+                   role: 'Pesquisador',
+                   state: 'PR'})
+            .end((err, res) =>{
+                res.should.have.status(200);
+                res.should.be.json;
+                res.body.should.have.property('success');
+                res.body.success.should.equal(false);
+                res.body.should.have.property('msg');
+                res.body.msg.should.equal('O campo Cidade é obrigatório.');
+                User.findOne({'email': 'lorem@ipsum.com'}, (err, user) => {
+                        expect(user).to.not.exist;
+                        done();
+                });
+            });
+    });
+
+    it('should not save an user without state', (done) => {
+        chai.request(server)
+            .post('/api/v1/user')
+            .set('content-type', 'application/x-www-form-urlencoded')
+            .set('x-apicache-bypass', 'true')
+            .send({email: 'lorem@ipsum.com',
+                   password: '123mudar',
+                   name: 'Tequila baby',
+                   schooling: 'Doutorado',
+                   cpf: '48303270737',
+                   course: 'Ciência da Computação',
+                   segment: 'Comunidade acadêmica',
+                   institution_name: 'UFPR',
+                   role: 'Pesquisador',
+                   city: 'Cutiriba'})
+            .end((err, res) =>{
+                res.should.have.status(200);
+                res.should.be.json;
+                res.body.should.have.property('success');
+                res.body.success.should.equal(false);
+                res.body.should.have.property('msg');
+                res.body.msg.should.equal('O campo Estado é obrigatório.');
+                User.findOne({'email': 'lorem@ipsum.com'}, (err, user) => {
+                        expect(user).to.not.exist;
+                        done();
+                });
+            });
+    });
+
 });