ProvTest.exe

ProvTest.exe is a utility that submits sample requests to Microsoft® Provisioning Framework (MPF). It is used primarily to test clients and prior to deployment.

ProvTest.exe includes options for:

Prerequisites

Any machine that submits requests must have the MPF administration tools and MPF client COM object. Any machine that receives requests must have these two components plus the MPF core components and any MPF providers called by the sample requests. For more information on installing these components, see System Requirements, Running Setup.exe, and Unattended Installations.

Implementation

Program Files\Microsoft Provisioning\Tools\ProvTest.exe

Command Syntax

ProvTest [/t<n>] [/r<n>] [/e] [/m] [/x<n>] [/q] [/qu] [/qa <queue ID>] [/qd <queue ID>] [/qr <queue ID>] [/qs <queue ID>] [/qc <parent queue ID, child queue ID>] [/n:<namespace> /p:<procedure>] [/i[s][a]:<server>] [/bu:<user>] [/bp:<password>] <request XML file>

Arguments

All of the following switches are optional.

/t<n> Starts n execution threads to execute the request. Used to test a provider's multithreading capabilities. If not specified, only one thread is created. The maximum value for n is 64.

By default, only one request is sent per thread. To send multiple requests, specify the /r switch. Whenever a request is executed multiple times, only execution time is displayed.

/r<n> Repeats the request n times per thread. If not specified, the request is sent only once.

By default, there is only one execution thread. For multi-threading, specify the /t switch. Whenever a request is executed multiple times, only execution time is displayed.

/e Displays the error description. If not specified, only the HRESULT and execution time display.

When specified together with the /t and/or /r switches, error responses display. If not specified, error responses do not display.

/m Measures and displays the execution time for the request. Automatically enabled whenever the /t and/or /r switches are specified.
/x<n> Formats successive element levels of XML output using either a tab (n = 0) or the number of spaces specified by n (1 <= n <= 8).
/q Submit the request to the queue manager.
/qu Submit the request as suspended to the queue manager.
/qa <queue ID> Activates the specified queued request.
/qd <queue ID> Deletes the specified queued request.
/qr <queue ID> Displays the result of the specified queued request.
/qs <queue ID> Checks the status of the specified queued request.
/qc <parent queue ID, child queue ID> Establishes a parent/child relationship between queued requests.
/n:<namespace> /p:<procedure> Submits the request as non-trusted to the specified namespace procedure. Used to override the default behavior of ProvTest.exe, which is to submit trusted requests. Procedure names that consist of multiple words must be encased in quotes (for example, "Simple Procedure"). For more information, see Remarks.
/i:<server> Executes a request to a remote server as a non-trusted Simple Object Access Protocol (SOAP) request using the SubmitRequest method of the IProvEngine interface. Must be specified together with the /n and /p switches.
/is:<server> Same as /i except that the transport protocol is HTTPS instead of HTTP.
/ia:<server> Same as /i except that authentication is basic authentication instead of anonymous.
/bu:<user> /bp:<password> Specifies a user name and password for basic authentication. Requires the /ia switch.
<request XML file> ProvTest.exe accepts any XML file, with any name, as long as it is a well-formed MPF request.
Remarks

By default, ProvTest.exe submits a trusted request (that is, the utility invokes the SubmitTrustedRequest method of the IProvEngine interface). This has at least a couple of implications.

If a request fails with error code 0x80070005 or 0x80070534, check the value defined in Provisioning Manager for the provisioning engine's Principal property. (This value is set in Provisioning Servers, Clients, Provisioning Engine Clients.) The Principal value must be set to Microsoft® Active Directory® user principal name (UPN) for the account under which the engine is running.

See Also

Security