0

Я был очень рад испытать новую функцию в VS 2012, которая позволяет запускать все тесты нагрузки с помощью кодированных веб-тестов.нулевая ссылка в кодированном веб-сайте с system.datetime

К несчастью, у меня возникла проблема. При попытке отладить веб-тест, который я сгенерировал (и впоследствии отредактировал), я продолжаю получать NullReferenceException по простой строке объявления. Я просто не могу окутать голову, почему это происходит. Вот код:

[Priority(0)] 
public class CreateSessionCoded : WebTest 
{ 
    public string[] SessionID; 
    public string[] SessionTime; 
    public string[] CreatedTime; 

    public CreateSessionCoded() 
    { 
     this.Context.Add("Parameter1", ""); 
     this.PreAuthenticate = true; 
    } 

    public override IEnumerator<WebTestRequest> GetRequestEnumerator() 
    { 

     //string CurrentITR = this.Context.WebTestIteration.ToString(); 
     SessionID[this.Context.WebTestIteration] = Guid.NewGuid().ToString(); 
     SessionTime[this.Context.WebTestIteration] = System.DateTime.UtcNow.ToString(); 
     CreatedTime[this.Context.WebTestIteration] = System.DateTime.Now.ToString(); 

    ... 

Код продолжается, но та часть, где я ЯРД находится в двух последних строках, где я пытаюсь присвоить значения моего SessionTime и CreatedTime параметров.

Это не происходит при назначении SessionID, поэтому он не относится к WebTestIteration. Это также происходит, если я пытаюсь назначить другую строку (любую случайную строку, такую ​​как, скажем, «blabla») для тех же параметров.

Я очень благодарен за любую помощь! Заранее спасибо! :)

ответ

1

определяются три массива:

public string[] SessionID; 
public string[] SessionTime; 
public string[] CreatedTime; 

Но они не инициализирован, прежде чем пытаться использовать их.

В принципе, вы делаете это:

string[] foo; 
foo[1] = "bar"; 

И вам нужно сделать, это:

string[] foo = new string[10]; // sized appropriately 
foo[1] = "bar";