The RuntimeSession class has access to the run-time session object that has access to request and response data. It contains the following properties and methods:
RuntimeSession Members
/// <summary> /// A replayed runtime session object. /// </summary> public class RuntimeSession { /// <summary> /// The recorded session id. /// </summary> public int RecordedSession { get; } /// <summary> /// The recorded test case name. /// </summary> public string RecordedTestCase { get; } /// <summary> /// The current iteration number. /// </summary> public int IterationNumber { get; } /// <summary> /// The current request number in iteration. /// </summary> public int RequestNumber { get; } /// <summary> /// The VU number. /// </summary> public int VUNumber { get; } /// <summary> /// The extractor runtime object for the VU. /// </summary> public ExtractorRuntime ExtractorRuntime { get; } /// <summary> /// Returns the data source with the given name. /// </summary> /// <param name="name">The name of the data set.</param> /// <returns>The DataTable object that represents the data set. Returns null if data source does not exist.</returns> public DataTable GetDatasource(string name); /// <summary> /// Returns the current value of an iteration data generator. If the data generator is evalued on every request then a new value is generated. If the data generator doesn't exist then null is returned. /// </summary> /// <param name="name">The name of the data generator.</param> /// <returns></returns> public string GetDatageneratorValue(string name); /// <summary> /// Gets or sets the property whether the response is marked as an error. /// </summary> public bool IsError { get; set; } /// <summary> /// Custom error message for an error response. /// </summary> public string ErrorMessage { get; set; } /// <summary> /// If set to true before request is sent then cancel the request to the server. /// </summary> public bool CancelRequest { get; set; } /// <summary> /// The url. /// </summary> public Uri Url { get; } /// <summary> /// Get request headers. /// </summary> /// <returns>An enumerable list of request headers.</returns> public IEnumerable<NameValuePair> GetRequestHeaders(); /// <summary> /// Gets a string representation of the request body. /// </summary> /// <returns>The string representation of the request body.</returns> public string GetRequestBody(); /// <summary> /// Gets the raw request body. /// </summary> /// <returns>The byte[] representation of the request body.</returns> public byte[] GetRawRequestBody(); /// <summary> /// Change or add a request header. Set the value to null to remove the header. /// </summary> /// <param name="name">The name of the request header.</param> /// <param name="value">The value of the request header.</param> public void SetRequestHeader(string name, string value); /// <summary> /// Change the request body. /// </summary> /// <param name="body">The byte[] of the new response body.</param> public void SetRequestBody(byte[] body); /// <summary> /// Returns the response code. /// </summary> public int ResponseCode; /// <summary> /// Get response headers. /// </summary> /// <returns>An enumerable list of response headers.</returns> public IEnumerable<NameValuePair> GetResponseHeaders(); /// <summary> /// Gets a string representation of the response body. /// </summary> /// <returns>The string representation of the response body.</returns> public string GetResponseBody(); /// <summary> /// Gets the raw request body. /// </summary> /// <returns>Returns the byte[] representation of the response body.</returns> public byte[] GetRawResponseBody(); /// <summary> /// Set a string value to VU storage with a given key. /// </summary> /// <param name="key">The key name</param> /// <param name="value">The string value</param> public void SetValue(string key, string value) /// <summary> /// Get a value from VU storage with a given key. /// </summary> /// <param name="key">The key name</param> /// <returns>The value associated with the key</returns> public string GetValue(string key) /// <summary> /// Set an object to VU storage /// </summary> /// <param name="key">The key name</param> /// <param name="value">The object</param> public void SetObject(string key, object value) /// <summary> /// Get an object from VU storage /// </summary> /// <param name="key">The key name</param> /// <returns>The object associated with the key</returns> public object GetObject(string key) /// <summary> /// The the VU storage. /// </summary> public string ClearValues(); /// <summary> /// Stops sending all requests and ignore all further responses from the current session's VU /// </summary> public void AbortVU(); /// <summary> /// Aborts the test and stops all VUs from sending requests and ignores all further responses. /// </summary> public void AbortTest(); } /// <summary> /// Name/value pair representation. /// </summary> public class NameValuePair { /// <summary> /// The name. /// </summary> public string Name { get; } /// <summary> /// The value. /// </summary> public string Value { get; } }
Overview
Content Tools