Sensor Tests

Note  This content applies to the Windows Logo Kit (WLK). For the latest information using the new Windows Hardware Certification Kit (HCK), see Windows HCK User's Guide on the Windows Hardware Dev Center.

Type: Automated Test

Overview

Sensor Tests verifies that the sensor devices meet the Sensor and Location platform logo requirements.

Details

Test: Sensor Common - Required Properties Exist

Test verifies that the sensor is reporting all the properties required to function correctly in the Sensor and Location platform.

Input Parameter: /test:required_properties_exist

Run Time: (estimated) 2 minutes

TUID: 70C4250C-9231-4d4f-9831-053048FD78F0

Test: Sensor Common - Minimum Supported Data Fields

Test verifies that the sensor is reporting the minimum number of data fields required to function correctly in the Sensor and Location platform.

Input Parameter: /test:minimum_supported_data_fields

Run Time: (estimated) 2 minutes

TUID: 066C231A-40B5-4ac1-ABB5-1099684A3D41

Test: Sensor Common - Settable Properties Support Read Write Access

Test verifies that, if the sensor supports well-known settable properties, the properties support read-write access. If the sensor supports the Report Interval property, the test will verify if Report Interval Best Practices are being followed. Look in the test log for warnings that would indicate a best practices violation. Note that this test will not fail if the Report Interval Best Practices portion of the test reports a warning.

Input Parameter: /test:settable_properties_support_read_write

Run Time: (estimated) 2 minutes

TUID: F88D4E0A-F31A-477b-AD7D-7B536A39F0BC

Test: Sensor Common - Required Static Properties

Test verifies that values for required properties that are expected to be static do not change over time (eg: SENSOR_PROPERTY_FRIENDLY_NAME).

Input Parameter: /test:required_static_properties

Run Time: (estimated) 20 minutes

TUID: 71DB2B92-6DD4-4f38-BC6A-0CFFEC0F373C

Test: Sensor Common - Missing Property Validation

Test verifies that sensor devices return the correct output values and error codes in response to requests for properties that the sensor does not support.

Input Parameter: /test:missing_property

Run Time: (estimated) 2 minutes

TUID: B9AA9A48-CB38-4b37-9725-26F4B7CAD09B

Test: Location Sensor - Required Data Fields Exposed

Test verifies that sensors with a category of SENSOR_CATEGORY_LOCATION support the data fields required to function correctly as a location sensor in the Sensor and Location platform.

Input Parameter: /test:required_location_data_fields

Run Time: (estimated) 2 minutes

TUID: CDC6C0C1-9632-4db2-A467-77EC223EC04B

Test: Ambient Light Sensor - Required Data Fields Exposed

Test verifies that sensors with a type of SENSOR_TYPE_AMBIENT_LIGHT support the data fields required to function correctly as an ambient light sensor in the Sensor and Location platform.

Input Parameter: /test:required_als_data_fields

Run Time: (estimated) 2 minutes

TUID: CBABA91A-485A-4b0a-B22A-0D69FA555289

Test: Sensor Common - Sensor Interface Stress

Test verifies that the sensor can operate without failure under heavy API usage. APIs should not return any unexpected failures.

Input Parameter: /test:stress_common

Run Time: 4 hours

TUID: 478AD25F-F726-4603-9A91-79C246311E5F

Test: Sensor Common - Sensor Interface Stress with Sleep/Resume Cycles

Test verifies that the sensor continues to operate and provide data after prolonged usage including after numerous sleep/resume cycles.

Input Parameter: /test:stress_common_sleepcycle

Run Time: 4 hours

TUID: 269C744C-0706-4788-97FD-C3B70C375FD7

Test: Sensor Common - Timestamp Validation [Manual]

Test verifies that each new event from a sensor has a unique timestamp that is more recent than the previous event timestamp. Note that the test will prompt for the generation of events.

Input Parameter: /test:required_common_timestamp

Run Time (estimated) 2 - 4 minutes

TUID: 69E0126C-3EA8-4bfa-93FB-5192C64BD614

Test: Sensor Common - Ready State Validation

Test verifies that after a device is disabled then enabled, the sensor will go into the Ready State within five minutes. The exposed properties, data fields, and static data will persist after the disable/enable cycle.

Input Parameter: /test:validate_common_ready

Run Time: (estimate) 1 - 5 minutes

TUID: 59930CBF-4A3A-4e26-A74B-A48D7C17CF54

Test: Location Sensor - Validate Location DataReport [Manual]

Test verifies that for a sensor of category SENSOR_CATEGORY_LOCATION, it provides the data for an ILatLongReport or an ICivicAddressReport or both. In the case of either locationreport on the minimum required data fields must be present and have data. Note that if no data is available when the test begins, the test will prompt for the generation of a data event.

Input Parameter: /test:required_location_datareport

Run Time: (estimate) 1 minute

TUID: 52847B83-A474-4301-A969-C4C7D14A15E9

Test: Ambient Light Sensor - Required DataReport LUX

Test verifies that for a sensor of type SENSOR_TYPE_AMBIENT_LIGHT, it provides a datareport that contains at least SENSOR_DATA_TYPE_LIGHT_LEVEL_LUX. The test reads this data and verifies that it is of data type VT_R4 and is greater than or equal to zero.

Input Parameter: /test:required_als_datareport_lux

Run Time: (estimate) 1 minute

TUID: 5D7FD921-9C0E-4710-B22B-4276AE83E61E

Test: Ambient Light Sensor - Required DataReport LUX Event [Manual]

Test verifies that for a sensor of type SENSOR_TYPE_AMBIENT_LIGHT, that when the ambient light level is varied, a data changed event is raised. The data report from the raised event must contain a new LUX level in the SENSOR_DATA_TYPE_LIGHT_LEVEL_LUX field. Note that at the start of the test, a base level light reading will be taken. You will be prompted to cover the Ambient Light Sensor (ALS). It is expected that the LUX reading will decrease. You will then be prompted to increase the LUX level beyond the base reading. It is expected that the LUX reading will increase.

Input Parameter: /test:required_als_datareport_lux_event

Run Time: (estimate) 2 minutes

TUID: 95597316-A658-4fe5-8A62-DEA4EAFFE908

Run Time: Each test above identifies a specific estimated run time.

Log File: SensorLocationTests.xml

System Restart Required: No

Test Category: Input > Sensor

Supported operating systems for Logo or Signature:

  • Windows 7

Program: SensorLocationTests.exe

Requirements

Software Requirements

The test tool requires the following software:

  • Supported operating system (see list above).

Hardware Requirements

The test tool requires the following hardware:

  • Device to be tested

  • Computer that meets the minimum software requirements

  • Hard disk with a minimum of 20 GB available on partition C

Processor

The test tool runs on the following processor architectures:

  • x86

  • x64

Running Sensor Tests

All test cases return PASS or FAIL. Review the test results in the log file for specific details about failures.

The following tests will report a SKIP result under certain conditions:

  • Location Sensor - Required Data Fields Exposed: If the sensor under test does not have a category of SENSOR_CATEGORY_LOCATION, then this test will report SKIP.

  • Location Sensor - Validate Location Data Report: If the sensor under test does not have a category of SENSOR_CATEGORY_LOCATION, then this test will report SKIP.

  • Ambient Light Sensor - Required Data Fields Exposed: If the sensor under test does not have a type of SENSOR_TYPE_AMBIENT_LIGHT, then this test will report SKIP.

  • Ambient Light Sensor - Required DataReport LUX: If the sensor under test does not have a type of SENSOR_TYPE_AMBIENT_LIGHT, then this test will report SKIP.

  • Ambient Light Sensor - Required DataReport LUX Even: If the sensor under test does not have a type of SENSOR_TYPE_AMBIENT_LIGHT, then this test will report SKIP.

Command Syntax

Command option Description

SensorLocationTests.exe

Without any option, the test executable will report the required input parameters for test execution.

/path:

The /path: input parameter is used to provide the device instance path for the sensor to test. Note that the device path will commonly need double quotes for this parameter to function correctly. The following is an example of how this might look:

/path:"ROOT\SENSOR\0000" or

/path:" HID\VID_C1CA&PID_0004\6&2A0A6310&0&0000"

/test:

The /test: input parameter specifies the test that should be ran on the sensor under test. The supported input parameters are:

/test:required_properties_exist

/test:required_static_properties

/test:minimum_supported_data_fields

/test:required_location_data_fields

/test:required_als_data_fields

/test:settable_properties_support_read_write

/test:missing_property

/test:stress_common

/test:stress_common_sleepcycle

/test:required_common_timestamp

/test:validate_common_ready

/test:required_location_datareport

/test:required_als_datareport_lux

/test:required_als_datareport_lux_event

Note   The detail section above indicates the input parameter required to run each test.

/rs:

The /rs: input parameter specifies a random seed that should be used during the running of the test. This parameter only applies to the /test:stress_common and the /test:stress_common_sleepcycle tests. This enables a random test to be repeated to try and reproduce a previous test run failure. Look at the output log of the original test to find the test seed generated. Note that a test seed value of 0 (/rs:0) will use the current system time as the random seed.

 

Code Tour

File Manifest

File Location

SensorLocationTests.exe

[testbinroot]\NTTEST\DRIVERSTEST\MobilePC\Sensors\WLK

 

 

 

Build date: 9/14/2012