New-HwCertProjectDefinitionFile
Creates an HCK project definition file.
Syntax
New-HwCertProjectDefinitionFile
[-ControllerName <String>]
[-PdefFilePath <String>]
[-TestCollectionFilePath <String>]
[-EnableIsolateTargets]
[-EnableMultiDeviceTest]
[-OutputAutomatedPdef]
[-ProjectName <String>]
[-SkipTestStatus <String>]
[-CrashDumpCollection <String>]
[-MachineList <String[]>]
[-MachinePool <String>]
[-RunSystemTest]
[-TestAllDevices]
[-HwIdList <String[]>]
[-DriverList <String[]>]
[-ContainerIdList <String[]>]
[-ClassIdList <String[]>]
[<CommonParameters>]
New-HwCertProjectDefinitionFile
[-ControllerName <String>]
[-PdefFilePath <String>]
[-TestCollectionFilePath <String>]
[-EnableIsolateTargets]
[-EnableMultiDeviceTest]
[-OutputAutomatedPdef]
[-ProjectName <String>]
[-SkipTestStatus <String>]
[-CrashDumpCollection <String>]
-MachineList <String[]>
[-RunSystemTest]
[-TestAllDevices]
[-HwIdList <String[]>]
[-DriverList <String[]>]
[-ContainerIdList <String[]>]
[-ClassIdList <String[]>]
[<CommonParameters>]
New-HwCertProjectDefinitionFile
[-ControllerName <String>]
[-PdefFilePath <String>]
[-TestCollectionFilePath <String>]
[-EnableIsolateTargets]
[-EnableMultiDeviceTest]
[-OutputAutomatedPdef]
[-ProjectName <String>]
[-SkipTestStatus <String>]
[-CrashDumpCollection <String>]
-MachinePool <String>
[-RunSystemTest]
[-TestAllDevices]
[-HwIdList <String[]>]
[-DriverList <String[]>]
[-ContainerIdList <String[]>]
[-ClassIdList <String[]>]
[<CommonParameters>]
Description
The New-HwCertProjectDefinitionFile cmdlet creates a Windows Hardware Certification Kit (HCK) project definition file. The project definition file includes the targets, such as devices and systems, for certification tests. The HCK automation tool uses the settings in this file to determine which targets to test. For more information, see Windows Hardware Certification Kit downloads in the Microsoft Developer Network (MSDN) Library.
You can update this generated file by adding any changes that are valid with respect to the project definition file schema.
Examples
Example 1: Create a project definition file for a driver
PS C:\> New-HwCertProjectDefinitionFile -MachinePool "Test07" -DriverList "disk.sys"
This command creates a project definition file. The command populates the project file with HCK target values for which disk.sys is a device driver, and from all machines available in the Test07 pool.
Parameters
-ClassIdList
Specifies an array of class GUIDs as strings. For more information, see Class-GUID in the TechNet library. You can use a comma-separated list.
Type: | String[] |
Aliases: | ClassList |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ContainerIdList
Specifies an array of container IDs, in GUID format. You can use a comma-separated list.
Type: | String[] |
Aliases: | ContainerList |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ControllerName
Specifies the name of the controller or test server. The project definition file stores the controller name in the Controller attribute of the <ProjectDefinitionData> element. If you do not provide a controller name and do not specify the OutputAutomatedPdef parameter, the cmdlet uses the current computer.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-CrashDumpCollection
Specifies the type of Windows crash dump file to generate and collect for the project. The acceptable values for this parameter are:
- Mini
- Kernel
- Full
- Disable
Default value is Disable.
Type: | String |
Accepted values: | Mini, Kernel, Full, Disable |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DriverList
Specifies an array of names of target drivers. You can use a comma-separated list.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-EnableIsolateTargets
Indicates that the cmdlet creates an individual device family for each discovered target. If you do not specify this parameter, the cmdlet groups targets into families based on device class.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-EnableMultiDeviceTest
Indicates that multiple-device scheduling is enabled. The project definition file stores the Boolean setting for multiple-device scheduling in the <MultiDeviceTestGroup> element.
Type: | SwitchParameter |
Aliases: | EMDT |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-HwIdList
Specifies an array of hardware IDs for target devices. You can use a comma-separated list.
You can specify partial hardware IDs. The cmdlet matches a partial value as a substring of the hardware ID format. The comparison uses ASCII characters and is not case sensitive. If the ID contains an ampersand character (&), enclose the ID in double quotes (""). In Windows PowerShell®, the ampersand is a reserved character.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-MachineList
Specifies an array of test computer names. You can use a comma-separated list. If you specify more than one computer, all of them must be in the same pool.
Type: | String[] |
Aliases: | Machine |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-MachinePool
Specifies the name of an existing machine pool, which contains test computers.
Type: | String |
Aliases: | Pool |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-OutputAutomatedPdef
Indicates that the cmdlet generates the following attributes in the project definition file:
- Controller = "[MACHINE]"
- TestCollectionReadLocation = "[FILTERED_TEST_COLLECTION]"
- Path = "[PACKAGES]"
Type: | SwitchParameter |
Aliases: | automate |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PdefFilePath
Specifies the name of the project definition file. If you do not specify a name, the cmdlet creates a name in the following format: %UserProfile%\Desktop\PDEF_Files\PDEF_TimeDate\PDEF_OSPlatformName_TimeDate.xml.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ProjectName
Specifies the friendly name of the project. The project definition file stores the project name in the Name attribute of the <Project> element. If you do not specify a name, the cmdlet generates a name that contains a time stamp.
Type: | String |
Aliases: | PROJ |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-RunSystemTest
Indicates that the cmdlet specifies a single TargetType attribute, which equals System. Specify this parameter for testing a whole system. You cannot run a System test with any other query types.
A System test treats the target as a single device. This differs from TestAllDevices, which tests every target on a system, but treats them individually. Specify the TestAllDevices parameter to test all devices.
Type: | SwitchParameter |
Aliases: | System |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SkipTestStatus
Specifies the skipping mode for scheduling tests. The project definition file stores this value in the <TestStatusToSkip> element. The acceptable values for this parameter are:
- Pass
- Fail
- NoData
The default value is Pass.
Type: | String |
Aliases: | SkipStatus |
Accepted values: | Fail, NoData |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-TestAllDevices
Indicates that the controller tests all target devices that it discovers. The controller discovers devices on the computers specified by the MachineList or the MachinePool parameter.
Type: | SwitchParameter |
Aliases: | AllDevices |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-TestCollectionFilePath
Specifies the full path for a test collection .xml file. The project definition file stores the path in the TestCollectionReadLocation attribute of the <Project> element. If you do not specify a path, the cmdlet uses an empty string.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |