Adaptador de dispositivo humano
El adaptador de dispositivo humano (HDA) es una manera manual de interactuar manualmente con la Plataforma de pruebas de Bluetooth (BTP), lo que permite el uso de dispositivos con BTP que aún no se han automatizado. Por ejemplo, el HDA permitiría interactuar con un casco comprado que, de lo contrario, no tiene ninguna manera clara de conectarse a BTP. El HDA permite realizar pruebas manuales de usuario entre un dispositivo Windows y el hardware de creación de prototipos sin el uso de hardware externo, como Traduci. Por lo tanto, todo lo necesario para configurar es un equipo que admite Bluetooth y su propio dispositivo de prueba.
Configuración de HDA
Instale el software como se describe en Configuración de software BTP para admitir el HDA.
Archivo de configuración de HDA
Cree un archivo de configuración denominado después del dispositivo de prueba, por ejemplo: mytestdevice.txt. El nombre de archivo y la extensión no son importantes. El archivo de configuración debe contener la siguiente información:
name=myTestDevice
baseband=BR
br_address=B4:F1:DA:96:C0:A4
Pruebas de emparejamiento de HDA
Vaya a la carpeta donde se extrajo el paquete de software BTP, normalmente C:\BTP
. Los scripts se encuentran en una subcarpeta del directorio del paquete. Ejecute el script adecuado para el entorno de comandos deseado:
Entorno de comandos | Script |
---|---|
Símbolo del sistema con privilegios elevados | RunPairingTests.bat HDA,conf_file=<configuration file name> |
Consola de PowerShell con privilegios elevados | RunPairingTests.ps1 HDA,conf_file=<configuration file name> |
Se puede agregar el parámetro -VerboseLogs
opcional para proporcionar una salida más detallada de las operaciones internas de BTP para ayudar con la depuración.
Emparejamiento manual de HDA
El script pregunta si el dispositivo se ha emparejado antes. Si responde con y, el script elimina el emparejamiento. Si responde con n, el proceso continúa sin ninguna acción.
Verify: SUCCEEDED(WEX::TestExecution::RuntimeParameters::TryGetValue(deviceParameterName.c_str(), deviceParametersStr)): Getting required runtime parameter 'central' [BluetoothTests::PairingTestsImpl::PairingTestsImpl]: Using central device named: MyCentralDevice [BluetoothTests::PairingTestsImpl::PairingTestsImpl]: Using peripheral device named: MyTestDevice [BluetoothTestHelpers::Pairing::Unpair]: Unpairing device with address B4F1DA96C0A4 from the device with address D83BBFAC35607 [BluetoothTestHelpers::Pairing::Unpair]: Unpaired successfully [BluetoothTestHelpers::Pairing::WaitForDisconnection]: Waiting for disconnection of device with address B4F1DA96C0A4 [BluetoothTestHelpers::Pairing::WaitForDisconnection]: Asserted: connectionModule.WaitForDisconnection(otherDeviceAddress, c_disconnectionAfterUnpairingTimeout) [BluetoothTestHelpers::Pairing::WaitForDisconnection]: Disconnected successfully Is MyTestDevice paired to the device with address D83BBFAC35607? Enter (y/n): y
En el ejemplo siguiente se muestra el HDA que elimina el emparejamiento. También le pedirá que elimine cualquier información de emparejamiento en el dispositivo (aquí denominada "MyTestDevice"). Presione cualquier tecla para continuar una vez que se haya eliminado cualquier información de emparejamiento.
[BluetoothTestHelpers::Pairing::Unpair]: Unpairing device with address D83BBFAC35607 Public from the device with address D83BBFAC35607 Public If possible, delete the pairing on MyTestDevice Press any key to continue
A continuación, el script comienza el proceso de emparejamiento ejecutando comprobaciones y, a continuación, pide al usuario que escriba su dispositivo (aquí denominado "MyTestDevice") en "Modo de emparejamiento de banda". Después de colocar el dispositivo en modo de emparejamiento, presione cualquier tecla para continuar.
StartGroup: BluetoothTests::TaefPairingTests::OutgoingJustWorksPairingTest [BluetoothTests::PairingTestsImpl::OutgoingJustWorksPairingTest]: Will attempt an outgoing pairing to the peripheral device and validate that a JustWorks ceremony was used [BluetoothTestHelpers::Pairing::Pair]: Asserted: (originDeviceAssociationModule) != nullptr [BluetoothTestHelpers::Pairing::Pair]: Asserted: originDeviceAssociationModule->CanInitiatePairing() [BluetoothTestHelpers::Pairing::Pair]: Asserted: originDeviceAssociationModule->CanCheckPairingStatus() [BluetoothTestHelpers::Pairing::Pair]: Asserted: !(originDeviceAssociationModule->IsPairedTo(destinationDeviceAddress)) If not already, put MyTestDevice in BR pairing mode Press any key to continue . . .
El script inicia el emparejamiento. Si el emparejamiento se realiza correctamente, verá la siguiente salida. Responda a las notificaciones en el dispositivo o en el equipo de prueba para confirmar y finalizar el emparejamiento. A continuación, la prueba le pide que quite el dispositivo del modo de emparejamiento. Después de sacar el dispositivo del modo de emparejamiento, presione cualquier tecla para continuar.
[BluetoothTestHelpers::Pairing::Pair]: Initiating pairing request from device with address D83BBFAC35607 to device with address B4F1DA96C0A4 [BluetoothTestHelpers::Pairing::DefaultPairingCeremonyHandler::OnJustWorks]: JustWorks ceremony used [BluetoothTestHelpers::Pairing::Pair]: Asserted: originDeviceAssociationModule->IsPairedTo(destinationDeviceAddress) [BluetoothTestHelpers::Pairing::Pair]: Asserted: ceremonyHandler.GetLastCeremonyUsed().has_value() [BluetoothTestHelpers::Pairing::Pair]: Asserted: ceremonyHandler.GetLastCeremonyUsed().value() == expectedCeremony [BluetoothTestHelpers::Pairing::Pair]: Paired successfully If the device is in pairing mode, exit pairing mode if possible. Press any key to continue . . .
Una vez completado el emparejamiento, el script continúa con las pruebas disponibles en el conjunto de pruebas. La documentación sobre las pruebas disponibles y cómo ejecutarlas se puede encontrar en Pruebas BTP admitidas actualmente.
Captura de registro de HDA
Si se detectan problemas, los registros de Bluetooth se pueden capturar siguiendo las instrucciones de Busiotools para el repositorio de Windows en GitHub para la captura de registros o mediante la opción -VerboseLogs
script al iniciar las pruebas.