Нагрузочное тестирование VS2013. Как получить cookies?


(Mev Mix) #1

Добрый день!!! Подскажите, может кто сталкивался с получением кук в VS2013 load tets.
Есть URL, при переходе по ссылке(попадаем на страницу авторизации) добавляется случайное значение, если каждый раз перегружать страницу, значение будет меняться. Значение хранится в куки как переменная OW. Но, после ввода логин/пароля и авторизации значение в URL - меняется на новое(после авторизации, если переходить по страницам уже не меняется).ю По сути две сессии до авторизации и после. Если случайно закрыл браузер, то при вводе ссылки попадаешь на форму авторизации снова.

К примеру, до авторизации
http://a/b/c?dd=100:24496651689950 в куках - OW=7755F126E19F1804C2604D32388ACBB4

После авторизации
http://a/b/c?dd=100:1:24496651689950::NO::: в куках=OW=48C621D0A4BC9AA16E725C59DEB42368

Как взять это значении и подставить в тест(.можно ли через WebTest, не Code). Получается что каждый раз при посылке запроса у меня значение 24496651689950 новое и запросы дальше чем форма атворизации не уходят.

Спасибо!!!


(5am) #2

VS под рукой нет
но если заглянуть в .cs теста, там будет использован WebTestRequest в начале тестового метода
что то типа:
WebTestRequest customRequest = new WebTestRequest(“http://weather.msn.com/”);
в нем должен быть контейнер с куками.


(Mev Mix) #3

К сожалению в методе нет контейнера с куками.
Вот первый запрос

        WebTestRequest request1 = new WebTestRequest(URL + "/f");
        request1.ThinkTime = 10;
        request1.ExpectedResponseUrl = URL + "/f?p=146:LOGIN:11592127854616";
        request1.QueryStringParameters.Add("p", "146", false, false);
        ExtractHiddenFields extractionRule1 = new ExtractHiddenFields();
        extractionRule1.Required = true;
        extractionRule1.HtmlDecode = true;
        extractionRule1.ContextParameterName = "1";
        request1.ExtractValues += new EventHandler<ExtractionEventArgs>(extractionRule1.Extract);
        yield return request1;
        request1 = null;

Да и во всем коде нет ссылки на куки файл. МОжет где его надо указывать перед формированием кода, в самом Web test


(5am) #4

посмотрите куки здесь:
this.Context.CookieContainer (Gets or sets the cookies used by previous requests in the Web performance test.)
https://msdn.microsoft.com/en-us/library/microsoft.visualstudio.testtools.webtesting.webtestcontext.cookiecontainer.aspx


(Mev Mix) #5

К сожалению работа с куками не помогла. Решил что можно выдрать регулярным выражением то что находится после основного статического URLa и загнать это в переменную, но вот вопрос, как это подставить в запрос.
Я с нагрузочным только недавно столкнулся и не совсем владею этой информацией.

Не меняется вот эта часть - http://a/b/c?dd=100:
После : изменяется в зависимости от страницы и действий пользователя - :24496651689950 или 1:24496651689950::NO:::


(Mev Mix) #6

По сути я так понимаю, что нам необходимо добавить правило извлечения на основе регулярного выражения. Но как и куда его дальше подставлять пока не понятно