私は分度器でUIテストを作成していますが、UIを使用する代わりにRESTfulサービスを通じてファイルを直接アップロードしています。次のメソッドがあります。分裂器の投げ 'TypeError:要求のコールバックで' statusCode 'of undefined'を読み取ることができません
var defer = protractor.promise.defer();
request(options, function (error, response, body) {
if (!error && response.statusCode == 201) {
var info = JSON.parse(body);
defer.fulfill(info);
} else {
defer.reject({
error: error,
message: response.statusCode
});
}
});
return defer.promise;
注:正常にアップロードされた場合、APIは201を返します。
私は私のIDEによって、コードを実行すると(Windowsの場合)正常に動作しますが、私は(Ubuntuの上)ジェンキンスてテストを実行すると、その場合には、私はエラーを取得する:
E/launcher - TypeError: Cannot read property 'statusCode' of undefined
at Request._callback (file.js:144:34)
at self.callback (/workspace/node_modules/request/request.js:186:22)
at emitOne (events.js:101:20)
at Request.emit (events.js:188:7)
at Request.onRequestError (/workspace/node_modules/request/request.js:845:8)
at emitOne (events.js:96:13)
at ClientRequest.emit (events.js:188:7)
at Socket.socketErrorListener (_http_client.js:310:9)
at emitOne (events.js:96:13)
at Socket.emit (events.js:188:7)
E/launcher - Process exited with error code 199
私は」これが何らかの設定に関係しているのか、それともSOがこの問題を引き起こしているのかどうかはわかりませんが、確かにガイダンスが必要です。
チップをありがとうございます。変更を適用すると、エンドポイントホストが完全に正しくないことがわかりましたが、ドメインが見つかりませんでした。有効な回答としてマークされています。 – mleitao