Return 来自量角器中 soap 方法的对象
Return Object from soap method in protractor
我正在使用 "soap" 在量角器中测试我的应用程序 wsdls。
这是我正在使用的代码
我想要 'servicechitest' 函数到 return "results" 对象(在屏幕截图中突出显示)。它将预期的输出打印到控制台。
不确定在哪里可以放置 return 语句来获取结果对象。
您需要实现从异步方法获取值的承诺。您可以使用 npm 中的 q
模块来实现 promise。
安装q
,运行终端中的以下命令,
npm install q
下载 q
后,在您的应用程序中使用它,如下所示,
var q= require('q');
servicehitest : function () {
var url ="someurl";
var args= [];
var defered = q.defer();
soap.creatClient(url,creatClient);
function clientCreate(err,client) {
if(err){
console.log("in error block");
console.log(client.describe());
}
client.getInstrument(args,instrument);
function instrument(err,result){
if(err){
defered.reject(err);
} else {
console.log(result);
defered.resolve(result);
}
}
}
return defered.promise;
}
要从 servicehitest
方法中获取结果,请使用以下代码。
servicehitest().then(function(result){
//this method will be called when the result is obtained from getInstrument() method.
console.log("Successfully got result:"+result);
},
function(error){
//error callback method will be called if there is any error from getInstrument() method.
console.log("Some error occured:"+error);
})
我正在使用 "soap" 在量角器中测试我的应用程序 wsdls。
这是我正在使用的代码
我想要 'servicechitest' 函数到 return "results" 对象(在屏幕截图中突出显示)。它将预期的输出打印到控制台。 不确定在哪里可以放置 return 语句来获取结果对象。
您需要实现从异步方法获取值的承诺。您可以使用 npm 中的 q
模块来实现 promise。
安装q
,运行终端中的以下命令,
npm install q
下载 q
后,在您的应用程序中使用它,如下所示,
var q= require('q');
servicehitest : function () {
var url ="someurl";
var args= [];
var defered = q.defer();
soap.creatClient(url,creatClient);
function clientCreate(err,client) {
if(err){
console.log("in error block");
console.log(client.describe());
}
client.getInstrument(args,instrument);
function instrument(err,result){
if(err){
defered.reject(err);
} else {
console.log(result);
defered.resolve(result);
}
}
}
return defered.promise;
}
要从 servicehitest
方法中获取结果,请使用以下代码。
servicehitest().then(function(result){
//this method will be called when the result is obtained from getInstrument() method.
console.log("Successfully got result:"+result);
},
function(error){
//error callback method will be called if there is any error from getInstrument() method.
console.log("Some error occured:"+error);
})