Невозможно получить правильные данные при выполнении 2 запросов в функции BeforeAll в транспортире - PullRequest
0 голосов
/ 11 октября 2018

Я использую транспортир 5.2.2.и cucumber 3.2.0. Я выполняю 2 запроса в функции Before All для извлечения данных из DB. Но мне нужно выполнить таким образом, чтобы после полного выполнения первого запроса только мне нужно было начать выполнение второго запроса (потому чтоЯ использую 1-й результат запроса во 2-м запросе, и мне нужно перехватить 2-й результат запроса перед запуском всех сценариев.) Код, который я дал в функции BeforeAll, приведен ниже

var Connection = require('tedious').Connection;
var Request = require('tedious').Request;

var config = 
{
 userName: 'xxx', 
 password: 'xxxx', 
 server: 'xxxx', 
 options: 
    {
       database: 'xx' ,
       encrypt: true,
       rowCollectionOnRequestCompletion: true
    }
}
var connection = new Connection(config);

connection.on('connect', function (err) {
    if (err) {
        console.log(err);
    }
    else {
        request1 = new Request("EXEC [dbo].[usp_GetPost]", function (err, rowCount, rows) {
            if (err) {
                console.log("Error");
            }
        });

        connection.execSql(request1);


        request2 = new Request("select * from [dbo].[Post_Automation] ", function (err, rowCount, rows) {

        });
        request2.on('row', function (columns) {
            var row = {};
            columns.forEach(function (column) {
                row[column.metadata.colName] = column.value;
            });
            post_details.push(row);
        });
        connection.execSql(request2);
    }
});

Как я могуСделайте это. Спасибо заранее.

...