Есть ли способ запросить mongodb в тесте на кипарис? - PullRequest
1 голос
/ 15 января 2020

Я ищу взаимодействие с mongodb из теста на кипарис. Я не смог найти никакой полезной документации. Пожалуйста, помогите мне, как добиться этого?

1 Ответ

1 голос
/ 16 марта 2020

Посмотрите на их документацию по задачам: https://docs.cypress.io/api/commands/task.html#Command

Мне нужно было что-то сделать с mongodb, и мне удалось подключиться, выполнив что-то вроде этого (внутри каталога "plugins"):

const MongoClient = require('mongodb').MongoClient;
module.exports = (on, config) => {
  on('task', {
    updateTask (id) {
      return new Promise((resolve) => {
        MongoClient.connect('mongodb://localhost:27017', (err, client) => {
          if (err) {
            console.log(`MONGO CONNECTION ERROR: ${err}`)  
            throw err;
          } else {
            const db = client.db('myDB');
            db.collection('someCollection').count({}, function(error, numOfDocs){              
              resolve({success: numOfDocs})
              client.close();
            })
          }
        });
      }); // end of return Promise
    }
  }) // end of task
}

и вы называете его внутри "spe c", например:

cy.task('updateTask', someParam).then((textOrNull) => {   
  console.log(textOrNull) 
})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...