Я пишу автоматизированный набор тестов, использующий ночные часы для извлечения данных из Интернета. Тесты работают отлично.
Однако я хотел бы записать полученные данные в базу данных mongoDB.
Я могу подключиться к Монго, и могу писать в БД, когда тесты не запускаются.
Но когда я запускаю тесты, я получаю следующую ошибку :
1) Navigate to url
"before all" hook:
Error: Timeout of 10000ms exceeded.
For async tests and hooks, ensure "done()" is called;
if returning a Promise, ensure it resolves.
Я вызываю вспомогательную функцию для записи в mongodb, которая работает, когда я запускаю ее самостоятельно, а не когда она запускается в тесте nightwatch.
Это та функция :
function createDBCategories(dbName, categories) {
MongoClient.connect(url, { useNewUrlParser: true })
.then(client => {
const db = client.db(dbName);
const categoryData = [
exampleTitleOne: "exampleOne",
exampleTitleTwo: "exampleTwo",
]
db.collection("products").insertMany(categoryData, (err, res) => {
if (err) throw err;
console.log(`${res.insertedCount} documents inserted into ${dbName} db`);
// db.close();
});
}).catch(err => {
console.log("err", err);
});
};
В моих ночных часах перед крючком :
before(() => {
createDBCategories("categoryDB", categoryData);
});