Edit

Share via


New-HwCertProjectDefinitionFile

Creates an HCK project definition file.

Syntax

PdefOverrides

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>]

MachineList

New-HwCertProjectDefinitionFile
    -MachineList <String[]>
    [-ControllerName <String>]
    [-PdefFilePath <String>]
    [-TestCollectionFilePath <String>]
    [-EnableIsolateTargets]
    [-EnableMultiDeviceTest]
    [-OutputAutomatedPdef]
    [-ProjectName <String>]
    [-SkipTestStatus <String>]
    [-CrashDumpCollection <String>]
    [-RunSystemTest]
    [-TestAllDevices]
    [-HwIdList <String[]>]
    [-DriverList <String[]>]
    [-ContainerIdList <String[]>]
    [-ClassIdList <String[]>]
    [<CommonParameters>]

MachinePool

New-HwCertProjectDefinitionFile
    -MachinePool <String>
    [-ControllerName <String>]
    [-PdefFilePath <String>]
    [-TestCollectionFilePath <String>]
    [-EnableIsolateTargets]
    [-EnableMultiDeviceTest]
    [-OutputAutomatedPdef]
    [-ProjectName <String>]
    [-SkipTestStatus <String>]
    [-CrashDumpCollection <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.

Parameter properties

Type:

String[]

Default value:None
Supports wildcards:False
DontShow:False
Aliases:ClassList

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

-ContainerIdList

Specifies an array of container IDs, in GUID format. You can use a comma-separated list.

Parameter properties

Type:

String[]

Default value:None
Supports wildcards:False
DontShow:False
Aliases:ContainerList

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments: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.

Parameter properties

Type:String
Default value:None
Supports wildcards:False
DontShow:False

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments: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.

Parameter properties

Type:String
Default value:None
Accepted values:Mini, Kernel, Full, Disable
Supports wildcards:False
DontShow:False

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

-DriverList

Specifies an array of names of target drivers. You can use a comma-separated list.

Parameter properties

Type:

String[]

Default value:None
Supports wildcards:False
DontShow:False

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments: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.

Parameter properties

Type:SwitchParameter
Default value:None
Supports wildcards:False
DontShow:False

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments: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.

Parameter properties

Type:SwitchParameter
Default value:None
Supports wildcards:False
DontShow:False
Aliases:EMDT

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments: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.

Parameter properties

Type:

String[]

Default value:None
Supports wildcards:False
DontShow:False

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments: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.

Parameter properties

Type:

String[]

Default value:None
Supports wildcards:False
DontShow:False
Aliases:Machine

Parameter sets

PdefOverrides
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

-MachinePool

Specifies the name of an existing machine pool, which contains test computers.

Parameter properties

Type:String
Default value:None
Supports wildcards:False
DontShow:False
Aliases:Pool

Parameter sets

PdefOverrides
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

-OutputAutomatedPdef

Indicates that the cmdlet generates the following attributes in the project definition file:

  • Controller = "[MACHINE]"
  • TestCollectionReadLocation = "[FILTERED_TEST_COLLECTION]"
  • Path = "[PACKAGES]"

Parameter properties

Type:SwitchParameter
Default value:None
Supports wildcards:False
DontShow:False
Aliases:automate

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments: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.

Parameter properties

Type:String
Default value:None
Supports wildcards:False
DontShow:False

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments: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.

Parameter properties

Type:String
Default value:None
Supports wildcards:False
DontShow:False
Aliases:PROJ

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments: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.

Parameter properties

Type:SwitchParameter
Default value:None
Supports wildcards:False
DontShow:False
Aliases:System

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments: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.

Parameter properties

Type:String
Default value:None
Accepted values:Fail, NoData
Supports wildcards:False
DontShow:False
Aliases:SkipStatus

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments: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.

Parameter properties

Type:SwitchParameter
Default value:None
Supports wildcards:False
DontShow:False
Aliases:AllDevices

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments: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.

Parameter properties

Type:String
Default value:None
Supports wildcards:False
DontShow:False

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

CommonParameters

This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction, and -WarningVariable. For more information, see about_CommonParameters.