Connect MySQL from Cypress in 3 Step
May 2, 2022
Step 1) Install MySQL lib in the Cypress project
$ npm install mysqljs/mysql
Step 2) Add the following to plugins/index.js
const mysql = require("mysql");
function execQuery(query, config) {
const connection = mysql.createConnection({
host: "your-host.com",
user: "username",
password: "password",
database: "dbname"
});
connection.connect();
return new Promise((resolve, reject) => {
connection.query(query, (error, results) => {
if (error) {
reject(error);
} else {
return resolve(results);
}
});
connection.end();
});
}
module.exports = (on, config) => {
on("task", {
queryDB: query => {
return execQuery(query, config);
}
});
};
Step 3) Create your spect.js
describe('DB Unit Test', function() {
it('Test DB Connection', function() {
cy.task(
"queryDB",
`SELECT '1'`
).then(response => {
console.debug('DB Connection result: ', response)
});
})
})