Google se compromete a promover la equidad racial para las comunidades negras. Ver cómo.
Se usó la API de Cloud Translation para traducir esta página.
Switch to English

Certificación de instalación de automatización

Para automatizar las pruebas de certificación, se requiere una configuración adicional.

Todos los pasos de instalación y configuración a continuación se producen en la máquina Windows que se ejecuta el software GRL instrumento de prueba. Descargar e instalar la última GRL Tema instrumento de prueba antes de continuar.

Una vez instalado, hay dos métodos de automatización para el dispositivo bajo prueba (DUT):

  1. Automation Tool arnés OpenThread
  2. El modo de prueba arnés Auto DUT

Automation Tool arnés OpenThread

Instalar en pc

  1. Instalar el software siguiente:
    • Python 2.7
    • Git para Windows (soporte Bash es muy recomendable)
  2. Clonar el repositorio OpenThread para obtener los scripts de automatización:
    git clone https://github.com/openthread/openthread
    
  3. Instalar los requisitos de Python:
    cd tools/harness-automation
    pip install -r requirements.txt
    
  4. Instalar tanto Google Chrome y ChromeDriver .

Configurar

  1. Crear un archivo de configuración para la herramienta de automatización:
    cp autothreadharness/settings_sample.py autothreadharness/settings.py
    
  2. Actualizar ese nuevo archivo de configuración de acuerdo con las instrucciones del archivo.
  3. Añadir el siguiente parámetro en el fichero de configuración del instrumento de prueba, que se encuentra en C:\GRL\Thread1.1\Config\Configuration.ini :
    BrowserAutoNavigate = False

banco de pruebas de soporte mixta

La Herramienta de Automatización arnés también es compatible con bancos de pruebas mixtos, donde los dispositivos de referencia utilizados en cada caso de prueba son un conjunto mixto de dispositivos en lugar de todo el mismo dispositivo. Por ejemplo, en lugar de utilizar placas de 32 TI CC2538 ejecutan OpenThread para todos los casos de prueba, se puede mezclar y combinar entre los cuatro dispositivos de referencia del hilo para cada caso de prueba según se desee.

Para utilizar bancos de pruebas mixtas, configuración adicional es necesario:

  1. Agregue el siguiente parámetro adicional en el fichero de configuración del instrumento de prueba, que se encuentra en C:\GRL\Thread1.1\Config\Configuration.ini :
    EnableDeviceSelection = True
  2. Descargar el archivo de configuración de la topología del grupo de hilos . Añadir este archivo como TopologyConfig.txt a C:\GRL\Thread1.1\Thread_Harness\TestScripts . Este archivo de datos que el dispositivo de referencia a utilizar para cada función en cada caso de prueba.

El archivo de configuración de la topología proporcionado por el grupo de hilos puede ser modificado para otras configuraciones de lecho mixto, sino para la certificación oficial se debe utilizar la configuración original.

Los valores válidos para el uso de dispositivos de referencia en el archivo de configuración de la topología son:

Valor en el archivo de configuración de la topología dispositivo de referencia de prueba arnés
ARM ARM: NXP FROM-K64F con Firefly 6LoWPAN Escudo
NXP NXP (Freescale): USB-KW24D512 dongles
OpenThread OpenThread: TI CC2538DK
SiLabs Silabs: EM358x USB del palillo

Cada entrada de caso de prueba en el archivo de configuración de la topología debe estar en una línea separada y formateado en role:device pares como sigue:

5.3.10-Leader:NXP,Router_1:OpenThread,BorderRouter:OpenThread,MED_1:ARM

El modo de prueba arnés Auto DUT

El software GRL instrumento de prueba proporciona una función de detección automática avanzada (Auto DUT) que acelera el proceso de validación para los vendedores de la pila de referencia de rosca.

OpenThread proporciona un ejemplo de rosca Host Controller Interface (THCI) que permite que el arnés de prueba para el control de su componente o producto como si se tratara de una de las plataformas de referencia. De acuerdo con las características del puerto de serie de su plataforma específica, el DUT, o bien podría:

Actuando como la plataforma de referencia existente OpenThread

Si el puerto serie de las funciones del DUT en la configuración de 115200 8-N-1, y el dispositivo responde correctamente después de cada reinicio del dispositivo físico (por ejemplo, para confirmar la conexión válida del dispositivo a la máquina de Windows), entonces la plataforma se puede utilizar el herramienta OpenThread THCI. Esta herramienta permite que el dispositivo para actuar como la plataforma de referencia OpenThread durante las pruebas.

  1. Cierre el instrumento de prueba GRL, si está abierto.
  2. Conectar el dispositivo a la máquina Windows.
  3. Encontrar el identificador de hardware de puerto serie del dispositivo, utilizando el módulo de Python PySerial:
    1. Instalar PySerial en la máquina Windows.
    2. El uso de Python en la línea de comandos de Windows para enumerar todos los identificadores de hardware (VID y PID) para dispositivos conectados a la máquina. En esta salida, un dispositivo está conectado con un identificador de VID = 1,366 y PID = 1015:
       python -m serial.tools.list_ports -v
      COM10
          desc: USB Serial Port (COM10)
          hwid: USB\ VID_1366+PID_1015 +MI_00 
    3. Si conoce el puerto COM ya, puede utilizar un comando diferente. Por ejemplo, si el puerto COM es COM10 :
       python -c "import serial.tools.list_ports;print [ports[2] for ports in serial.tools.list_ports.comports() if ports[0] == 'COM10']"
      ['USB\ VID_1366+PID_1015 +MI_00']
  4. Actualizar la lista de dispositivos de Oro:
    1. Abrir C:\GRL\Thread1.1\Config\Configuration.ini .
    2. Actualizar el grupo OpenThread en el GoldenDeviceHardwareIds matriz con el VID y PID del dispositivo (s):
      GoldenDeviceHardwareIds = {
      'NXP': ['VID:PID=1FC9:0300','VID:PID=15A2:0300','VID:PID=1366:1015'],
      'SiLabs': 'VID:PID=10C4:8A5E',
      'ARM': 'VID:PID=0D28:0204',
      'OpenThread':['VID:PID=10C4:EA60', 'VID:PID=1366:1015' ]}
  5. Activar el modo Auto DUT .

Actuando como una nueva plataforma de referencia

Si el puerto serie del dispositivo bajo prueba no funciona bajo los valores del puerto serie apropiadas, o el dispositivo no responde correctamente después de un reinicio del dispositivo físico (salidas de código ilegible el plazo de 3-6 segundos de reinicio), entonces OpenThread THCI puede ser personalizado para tratar el dispositivo como una nueva plataforma en el instrumento de prueba.

Por ejemplo, para personalizar THCI utilizando el Nordic Semiconductor nRF52840 plataforma:

  1. Cierre el instrumento de prueba GRL, si está abierto.
  2. Modificar /tools/harness-thci/OpenThread.py basado en las características UART del dispositivo de destino. Las modificaciones pueden diferir entre los dispositivos de destino. En el caso de la plataforma nórdica nRF52840:

    1. Cambie el nombre del OpenThread.py archivo a nRF52840.py .
    2. Cambiar las tres primeras apariciones de "OpenThread" a "nRF52840":

       >> Device : nRF52840 THCI
      >> Class : nRF52840
      
      class nRF52840(IThci):
       
    3. Cambiar los parámetros del puerto serie:

      def _connect(self):
          print 'My port is %s' % self.port
          if self.port.startswith('COM'):
              self.handle = serial.Serial(self.port, 115200, timeout=0)
              time.sleep(1)
              self.handle.write('\r\n')
              time.sleep(0.1)
              self._is_net = False
          elif ':' in self.port:
              host, port = self.port.split(':')
              self.handle = socket.create_connection((host, port))
              self.handle.setblocking(0)
              self._is_net = True
          else:
              raise Exception('Unknown port schema')
          self.UIStatusMsg = self.getVersionNumber()
      
    4. Cambiar el tiempo para eliminar el impacto de la salida de código ilegible después de un reinicio del dispositivo:

      def powerDown(self):
          """power down the Thread device"""
          print '%s call powerDown' % self.port
          self._sendline('reset')
          self.isPowerDown = True
          time.sleep(8)  # New addition
      
      def reboot(self):
          """reset and rejoin to Thread Network without any timeout
      
          Returns:
              True: successful to reset and rejoin the Thread Network
              False: fail to reset and rejoin the Thread Network
          """
          print '%s call reboot' % self.port
          try:
              self._sendline('reset')
              self.isPowerDown = True
              time.sleep(8)  # Updated from 3 to 8
      
      def reset(self):
          """factory reset"""
          print '%s call reset' % self.port
          try:
              self._sendline('factoryreset')
              time.sleep(8)  # Updated from 3 to 8
              self._read()
      
      def resetAndRejoin(self, timeout):
          """reset and join back Thread Network with a given timeout delay
      
          Args:
              timeout: a timeout interval before rejoin Thread Network
      
          Returns:
              True: successful to reset and rejoin Thread Network
              False: fail to reset and rejoin the Thread Network
          """
          print '%s call resetAndRejoin' % self.port
          print timeout
          try:
              self._sendline('reset')
              self.isPowerDown = True
              time.sleep(timeout)
              if timeout < 8:      # Sleep a bit longer if the timeout is short
                  time.sleep(8 - timeout)
      
  3. Copiar el modificado nRF52840.py archivo a C:\GRL\Thread1.1\Thread_Harness\THCI

  4. Añadir la nueva información de plataforma para el instrumento de prueba:

    1. Crear un icono (en formato jpg o png) para que sea más fácil de diferenciar su plataforma y copiarlo en C:\GRL\Thread1.1\Web\images .
    2. Actualización de C:\GRL\Thread1.1\Web\data\deviceInputFields.xml con un nuevo DEVICE sección, donde la thumbnail parámetro es el archivo de icono:

       <DEVICE name="nRF52840" thumbnail="nRF52840.jpg" description ="nRF52840: Nordic" THCI="nRF52840">
          <ITEM label="Serial Line"
                type="text"
                forParam="SerialPort"
                validation="COM"
                hint="eg: COM1">COM
          </ITEM>
          <ITEM label="Speed"
                type="text"
                forParam="SerialBaudRate"
                validation="baud-rate"
                hint="eg: 115200">115200
          </ITEM>
      </DEVICE>
       
  5. Conectar el dispositivo a la máquina Windows.

  6. Encontrar el identificador de hardware de puerto serie del dispositivo, utilizando el módulo de Python PySerial:

    1. Instalar PySerial en la máquina Windows.
    2. El uso de Python en la línea de comandos de Windows para enumerar todos los identificadores de hardware (VID y PID) para dispositivos conectados a la máquina. En esta salida, un dispositivo está conectado con un identificador de VID = 1,366 y PID = 1015:
       python -m serial.tools.list_ports -v
      COM10
          desc: USB Serial Port (COM10)
          hwid: USB\ VID_1366+PID_1015 +MI_00 
    3. Si conoce el puerto COM ya, puede utilizar un comando diferente. Por ejemplo, si el puerto COM es COM10 :
       python -c "import serial.tools.list_ports;print [ports[2] for ports in serial.tools.list_ports.comports() if ports[0] == 'COM10']"
      ['USB\ VID_1366+PID_1015 +MI_00']
  7. Actualizar la lista de dispositivos de Oro:

    1. Abrir C:\GRL\Thread1.1\Config\Configuration.ini .
    2. Añadir un nuevo grupo de plataformas en el GoldenDeviceHardwareIds matriz con el VID y el PID del dispositivo:
      GoldenDeviceHardwareIds = {
      'NXP': ['VID:PID=1FC9:0300','VID:PID=15A2:0300','VID:PID=1366:1015'],
      'SiLabs': 'VID:PID=10C4:8A5E',
      'ARM': 'VID:PID=0D28:0204',
      'OpenThread':'VID:PID=10C4:EA60',
      'nRF52840': 'VID:PID=1366:1015' }
  8. Activar el modo Auto DUT .

Activar el modo Auto DUT

Después de una de las dos opciones de configuración anteriores son completas:

  1. Abrir el instrumento de prueba GRL, el dispositivo / puerto aparece ahora como un nuevo dispositivo de referencia.
  2. Seleccione la casilla de verificación Activar Auto DUT Selección del dispositivo por debajo de la lista de hardware soportado.
  3. Seleccione el botón Establecer como DUT bajo el dispositivo de destino / puerto para configurar el dispositivo como el dispositivo bajo prueba.
Certificación OT Auto DUT