在jasmine框架中使用webdriverio。我需要连接到一个数据库,我使用node-mssql来实现。
var sql = require('mssql');
sql.connect("mssql://username:password@localhost/database").then(function() {
new sql.Request().query('select * from mytable').then(function(recordset) {
console.dir(recordset);
}).catch(function(err) {
// ... query error checks
});
}); 上面的代码显示错误:"UnhandledPromiseRejectionWarning:未处理的promise rejection (rejection id: 1):ConnectionError:无法连接到未定义的:1433- connect ECONNREFUSED 127.0.0.1:1433 (node:24585) DeprecationWarning:不推荐使用未处理的promise rejections。将来,未处理的promise rejections将以非零退出代码终止Node.js进程。“
我尝试不使用promises,因为webdriverio中的代码是异步的,promises可能无法正常工作:
var connection = sql.connect(config); //config has all the parameters
var request = new sql.Request();
request.query('select * from myTable');错误是:“查询未定义”
我做错了什么?
发布于 2017-03-23 06:05:20
您使用的是npm请求包还是npm请求-承诺包?我在使用promise版本时遇到了类似的问题。您使用的是什么版本的node?最新的稳定版本支持原生JavaScript承诺,您可以使用它来处理您的异步代码。我将在早上使用一些使用本机promise实现和请求包的示例代码来更新这个答案。另外,根据异步代码块的位置,将有助于确定答案。它是在jasmine ' it‘块中,还是在conf文件中,还是在其他地方?
https://stackoverflow.com/questions/42825000
复制相似问题