我一直在使用 mountebank 为性能测试做一些存根,它是一个很棒的工具。功能团队询问是否可以将其重新用于支持功能测试,我说我会看看。
我想要实现的是从 mysql 数据库中选择一个帐号及其帐户余额,然后将余额返回给客户端(在本例中为 jmeter 工具)
function (request, state, logger) {
logger.info('GBG - getAccountBalance');
var mysql = require('mysql');
var result = '';
var con = mysql.createConnection({
host: "localhost",
user: "user",
password: "password",
database: "customer"
});
con.connect(function(err) {
if (err) throw err;
console.log("Connected!");
});
con.query('select * from accounts', function (err, rows, fields) {
if (err) throw err;
console.log(rows);
console.log('accountNumber is : ', rows[0].accountNumber);
result = rows[0].accountNumber;
});
console.log('result is : ', result);
var response = result;
return {
headers: {
'Content-Type': 'application/xml',
'Connection': 'Keep-Alive'
},
body: response
};
}
控制台日志的结果是:
result is :
Connected!
[ RowDataPacket { accountNumber: 777777, accountBalance: 777 } ]
accountNumber is : 777777
不知道我做错了什么以及为什么结果是:尽管在代码中稍后会出现行。
任何建议表示赞赏。
完全披露,我已经使用 mountebank 大约两个星期了,所以我是一个真正的初学者。