The RuntimeVU class has access to the run-time VU object. It contains the following properties and methods:


RuntimeVU Members
/// <summary>
///  A runtime VU object.
/// </summary>
public class RuntimeVU
{        
    /// <summary>
    /// The extractor runtime object for the VU.
    /// </summary>
    public ExtractorRuntime ExtractorRuntime { get; } 
       
    /// <summary>
    /// The VU number.
    /// </summary>
    public int VUNumber { get; }

    /// <summary>
    /// The VU iteration number.
    /// </summary>
    public int Iteration { get; }

    /// <summary>
    /// If iteration was aborted
    /// </summary>
    public bool IsAbortedIteration { get; }    

    /// <summary>
    /// If virtual user is warming up.
    /// </summary>
    public bool IsWarmup { get; }

    /// <summary>
    /// If virtual user is running a verify.
    /// </summary>
    public bool IsVerify { get; }

    /// <summary>
    /// Which test case is currently being executed.
    /// </summary>
    public string TestCase{ 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 consumed row number for the given datasource in the current iteration.
    /// </summary>
    /// <param name="name">The name of the datasource.</param>
    /// <returns>The row number. Returns -1 if datasource is not found or has no rows.</returns>
	public int GetDatasourceRow(string name);

    /// <summary>
    /// Returns the given dataset cell value for the given column and the consumed row for the current iteration.
    /// </summary>
    /// <param name="name">The name of the datasource.</param>
    /// <param name="column">The name of the column in the datasource.</param>
    /// <returns>The cell value. Returns null if datasource or column is not found.</returns>
	public string GetDatasourceValue(string name, string column);

    /// <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>
	/// 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>
    /// Stop sending requests in the current iteration.
    /// </summary>
    /// <param name="failIteration">If true, the aborted iteration will count as a failure, otherwise it will count as a success.</param>
    public void AbortIteration(bool failIteration);

    /// <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();
}
  • No labels