Volver a actualizaciones
Nuevo releaseSep 4, 2026

WindowsProtocolTestSuites v4.26.9.0

⭐⭐ Únete a nosotros en SNIA SDC para el SMB3 IO Lab (28 de septiembre - 1 de octubre de 2026), consulta los próximos Eventos de Interoperabilidad

Compartir

Suites de Pruebas de Protocolos de Windows

Windows Protocol Test Suites proporciona pruebas de interoperabilidad contra la implementación de las especificaciones abiertas de Windows, incluyendo Servicios de Archivos, Gestión de Identidades, Escritorio Remoto, etc.

Originalmente desarrolladas para pruebas internas de las Especificaciones Abiertas de Microsoft, las Suites de Pruebas de Protocolos de Microsoft se han utilizado ampliamente durante Plugfests y laboratorios de interoperabilidad para probar contra implementaciones de socios. Una Suite de Pruebas evalúa si una implementación de un protocolo o familia de protocolos cumple ciertos requisitos de interoperabilidad. Las Suites de Pruebas no cubren todos los requisitos de un protocolo y de ninguna manera certifican una implementación, incluso si todas las pruebas pasan. Sin embargo, cada suite de pruebas proporciona a los usuarios una indicación útil de interoperabilidad.

  • File Server Family Test Suite. Está diseñada para probar implementaciones de la familia de protocolos de servidor de archivos, incluyendo [MS-SMB2], [MS-DFSC], [MS-SWN], [MS-FSRVP], [MS-FSA], [MS-FSCC], [MS-RSVD] y [MS-SQOS]. Para comenzar con la suite de pruebas de File Server, puede consultar la File Server Test Suite User Guide. Para crear un entorno de prueba de Azure desechable, utilice el File Server Azure automated deployment.
  • RDP Client Family Test Suite. Proporciona pruebas de interoperabilidad para la implementación del cliente de la familia de protocolos RDP, incluyendo [MS-RDPBCGR], [MS-RDPEDISP], [MS-RDPEDYC], [MS-RDPEGFX], [MS-RDPEGT], [MS-RDPEI], [MS-RDPEMT], [MS-RDPEUDP], [MS-RDPEUSB], [MS-RDPEVOR] y [MS-RDPRFX]. Para comenzar con la suite de pruebas de RDP Client, puede consultar la RDP Client Test Suite User Guide
  • RDP Server Family Test Suite. Proporciona pruebas de interoperabilidad para la implementación del servidor de la familia de protocolos RDP, incluyendo [MS-RDPBCGR], [MS-RDPEDYC], [MS-RDPEMT] y [MS-RDPELE]. Para comenzar con la suite de pruebas de RDP Server, puede consultar la RDP Server Test Suite User Guide
  • Kerberos Server Test Suite. Está diseñada para probar implementaciones de servidor de los protocolos Kerberos, incluyendo [MS-KILE], [MS-KKDCP] y [MS-PAC]. Para comenzar con la suite de pruebas de Kerberos Server, puede consultar la Kerberos Server Test Suite User Guide
  • SMBD Server Test Suite. Está diseñada para probar las implementaciones del protocolo directo (RDMA) SMB2&3, según lo especificado en [MS-SMBD] y [MS-SMB2]. Para comenzar con la suite de pruebas de SMBD Server, puede consultar la SMBD Server Test Suite User Guide
  • Branch Cache Test Suite. Está diseñada para probar las implementaciones del protocolo [MS-PCCRTP], [MS-PCCRR], [MS-PCHC] y [MS-PCCRC]. Para comenzar con la suite de pruebas de Branch Cache, puede consultar la Branch Cache Test Suite User Guide
  • AZOD Test Suite. Está diseñada para probar las implementaciones del protocolo [MS-AZOD]. Para comenzar con la suite de pruebas de AZOD, puede consultar la AZOD Test Suite User Guide
  • ADFamily Test Suite. Está diseñada para probar las implementaciones de los protocolos de Active Directory, incluyendo [MS-ADA1], [MS-ADA2], [MS-ADA3], [MS-ADLS], [MS-ADSC], [MS-ADTS], [MS-APDS], [MS-DRSR], [MS-FRS2], [MS-LSAD], [MS-LSAT], [MS-SAMR] y [MS-NRPC]. Para comenzar con la suite de pruebas de ADFamily, puede consultar la ADFamily Test Suite User Guide
  • ADFSPIP Client Test Suite. Está diseñada para probar las implementaciones de la integración de ADFS Proxy y Web Application Proxy, como se describe en [MS-ADFSPIP]. Para comenzar con la suite de pruebas de ADFSPIP Client, puede consultar la ADFSPIP Client Test Suite User Guide
  • ADOD Test Suite. Está diseñada para probar las implementaciones del protocolo [MS-ADOD]. Para comenzar con la suite de pruebas de ADOD, puede consultar la ADOD Test Suite User Guide
  • XCA Test Suite. Está diseñada para probar las implementaciones del protocolo [MS-XCA]. Para comenzar con la suite de pruebas de XCA, puede consultar la XCA Test Suite User Guide
  • WSP Test Suite. Está diseñada para probar las implementaciones del protocolo [MS-WSP]. Para comenzar con la suite de pruebas de WSP, puede consultar la WSP Test Suite User Guide

Componentes

Windows Protocol Test Suites contiene los siguientes componentes:

  • CommonScripts. Scripts comunes utilizados por cada suite de pruebas. Normalmente se utilizan para desplegar el entorno.
  • ProtoSDK. La biblioteca de protocolos utilizada por cada suite de pruebas. Proporciona las estructuras de datos de los mensajes del protocolo, los métodos para codificar y decodificar los mensajes, los métodos para enviar y recibir mensajes, etc.
  • TestSuites. Todo el código y los documentos de las Suites de Pruebas se guardan aquí y se clasifican por carpeta que representa cada suite de pruebas.
  • ProtocolTestManager. Una herramienta para ayudarle a configurar y ejecutar las suites de pruebas.

Requisitos previos

Windows Protocol Test Suites se basa en .NET, por lo que pueden desarrollarse y ejecutarse en diferentes plataformas. Debe instalar el software que se indica a continuación según su propósito de prueba, incluyendo sus propias dependencias.

  1. .NET y componentes relacionados

    a. Para Windows, Linux y macOS, instale .NET 8.0 SDK para compilar o ejecutar las suites de pruebas.

    b. Para aquellos que trabajan en Windows y prefieren un IDE, instale Visual Studio 2022 o superior (se recomienda Visual Studio 2022 Community), junto con estos componentes individuales del instalador:

    SecciónComponente individual en Visual Studio 2022Ejecutar Windows Protocol Test SuitesCompilar Windows Protocol Test Suites desde el código fuente
    .NET.NET SDKRequeridoRequerido
    Compiladores, herramientas de compilación y tiempo de ejecuciónCompiladores C# y Visual Basic RoslynRequerido
    Compiladores, herramientas de compilación y tiempo de ejecuciónMSVC v143 - Herramientas de compilación C++ x64/x86 de VS 2022 (más reciente)Requerido1
    Compiladores, herramientas de compilación y tiempo de ejecuciónCompatibilidad con C++/CLI para las herramientas de compilación v143 (más reciente)Requerido1
    Compiladores, herramientas de compilación y tiempo de ejecuciónActualización redistribuible de C++ 2022Requerido1Requerido1
    Actividades de desarrolloCaracterísticas principales de C++Requerido1
    SDKs, bibliotecas y marcos de trabajoWindows 10 SDK (10.0.19041.0)Requerido1

    Nota:

[1]: Este componente individual es requerido por ADFamily y MS-SMBD, que tienen código C++.

  1. Protocol Test Framework v2.6 (build 2.6.1)

    Protocol Test Framework es referenciado por los proyectos de ProtoSDK y TestSuites como paquetes NuGet.

  2. Network Direct DDK

    Desde NetworkDirect_DDK.zip extraiga ndspi.h y ndstatus.h en la ruta del proyecto ProtoSDK\RDMA\include. Esto es para compilar la suite de pruebas SMBD.

  3. PowerShell Core

    Esto solo es necesario cuando el usuario desea utilizar PowerShell Core Remoting over SSH.

  4. Win32-OpenSSH

    Esto solo es necesario cuando el usuario desea utilizar PowerShell Core Remoting over SSH para la plataforma Windows.

  5. WMF 5.1

    Esto solo es necesario cuando el usuario desea utilizar la implementación de PowerShell en Windows Server 2012R2 para ISutCommonControlAdapter en CommonTestSuite.ptfconfig.

    a. Si elige la implementación de PowerShell para ISutCommonControlAdapter en un entorno de dominio donde el DC ejecuta Windows Server 2012R2, para obtener el SID del DC, necesita instalar WMF 5.1 en el DC; para otras versiones de Windows Server más recientes que Windows Server 2012R2, no necesita instalar WMF 5.1 en el DC.

    b. Si elige la implementación de PowerShell para ISutCommonControlAdapter en plataformas Windows (incluyendo Windows Server 2012R2 y versiones más recientes) en un entorno de grupo de trabajo, no necesita instalar WMF 5.1 en el SUT.

    c. Si elige la implementación administrada para ISutCommonControlAdapter en plataformas Windows (incluyendo Windows Server 2012R2 y versiones más recientes), utilizará consultas LDAP para obtener el SID y solo admite entornos de dominio.

Si trabaja en Windows, puede utilizar el script de la carpeta InstallPrerequisites para descargar e instalar automáticamente este software.

Consejos al utilizar el script de la carpeta InstallPrerequisites:

  • El script requiere conectividad a Internet para descargar algunas dependencias.

  • El parámetro Category se utiliza para especificar qué conjunto de herramientas debe descargarse e instalarse, según los diferentes nombres de suites de pruebas, como FileServer, Kerberos, SMBD, RDP, BranchCache, ADFamily, AZOD, ADFSPIP y ADOD. Las categorías se definen en PrerequisitesConfig.xml y puede actualizar este archivo de configuración para lograr el requisito deseado.

  • El parámetro ConfigPath se utiliza para especificar la ruta del archivo de configuración de requisitos previos; el valor predeterminado es ".\PrerequisitesConfig.xml".

  • Para ejecutar el script de la suite de pruebas FileServer, por ejemplo, abra Windows PowerShell y ejecute los comandos siguientes en la ventana de PowerShell:

cd WindowsProtocolTestSuites\InstallPrerequisites
.\InstallPrerequisites.ps1 -Category FileServer -ConfigPath ".\PrerequisitesConfig.xml"
  • Si encuentra errores sobre la Execution Policy, asegúrese de ejecutar Windows PowerShell como Administrador, y escriba lo siguiente y pulse Intro:
Set-ExecutionPolicy RemoteSigned

Puede ejecutar el comando siguiente para verificar si la Execution Policy está configurada correctamente:

Get-ExecutionPolicy

Luego vuelva a ejecutar el script.

Compilación

Después de clonar una copia de este repositorio, puede ejecutar build.ps1 en PowerShell o build.sh en shell para cada suite de pruebas por separado después de haber instalado todo el software necesario para la compilación indicado en Requisitos previos.

Por ejemplo, si desea compilar la suite de pruebas FileServer:

cd WindowsProtocolTestSuites\TestSuites\FileServer\src
build.ps1

Una vez que la compilación se realice correctamente, la estructura de carpetas común debería generarse en la carpeta WindowsProtocolTestSuite\drop\TestSuites\[TestSuiteName]\.

  • Bin: todos los binarios compilados, incluyendo ProtoSDK, adaptadores y suites de pruebas.
  • Batch: archivos por lotes (.ps1, .sh) que pueden utilizarse para lanzar las pruebas.
  • Scripts: scripts que pueden utilizarse para configurar el entorno de pruebas.
  • Utils: algunas utilidades que pueden utilizarse en las pruebas.

Alternativamente, puede descargar el archivo de la suite de pruebas precompilada desde Releases.

Ejecución

Antes de ejecutar una suite de pruebas, debe hacer una de las siguientes cosas:

  • Descargar el archivo de la suite de pruebas que desea ejecutar desde Releases y extraerlo en alguna ruta a la que tenga acceso.
  • Compilar la suite de pruebas según Compilar una suite de pruebas.

En macOS, la suite de pruebas FileServer utiliza las clases AesCcm y AesGcm, que requieren OpenSSL, por lo que si no hay OpenSSL 1.1 en su macOS, instale OpenSSL 1.1 y configure la variable de entorno como se indica a continuación antes de ejecutar la suite de pruebas FileServer en macOS,

brew install [email protected]
export DYLD_LIBRARY_PATH="/usr/local/opt/[email protected]/lib:$DYLD_LIBRARY_PATH"

Nota:

  1. Si brew no está instalado en su macOS, puede instalarlo según brew.
  2. Si obtiene el error "algorithm 'aesgcm' is not supported on this platform", eso significa que dotnet no puede cargar la clase AesGcm desde libcrypto.1.1.dylib en su macOS; entonces necesita comprobar si su ubicación está en su variable de entorno DYLD_LIBRARY_PATH o no. Una vez que instale OpenSSL 1.1 en su macOS, la ubicación de la biblioteca crypto es /usr/local/Cellar/[email protected]/1.1.1m/lib/libcrypto.1.1.dylib y /usr/local/opt/openssl enlaza con el directorio /usr/local/Cellar/[email protected]/1.1.1m de forma predeterminada.

Ejecutar la suite de pruebas por lotes

En la carpeta Batch bajo la ruta raíz de la suite de pruebas, hay varios scripts que puede utilizar para lanzar las pruebas.

  1. Ejecutar todos los casos de prueba

    Ejecute RunAllTestCases.ps1 en PowerShell, o RunAllTestCases.sh en shell directamente.

  2. Ejecutar casos de prueba por filtros

    Ejecute RunTestCasesByFilter.ps1 -Filter [su expresión de filtro] en PowerShell, o RunTestCasesByFilter.sh [su expresión de filtro] en shell directamente.

    Por ejemplo, puede ejecutar el comando siguiente si desea ejecutar casos de prueba con la categoría de prueba BVT y SMB311:

    RunTestCasesByFilter.sh "TestCategory=BVT&TestCategory=SMB311"
    

    Para obtener más información sobre cómo construir la expresión de filtro, puede consultar Filter option details.

  3. Ejecución en seco

    Si desea listar los casos de prueba antes de ejecutarlos realmente, puede añadir el modificador -DryRun a los scripts .ps1 o pasar una cadena no vacía como último argumento a los scripts .sh.

    Por ejemplo, puede ejecutar el comando siguiente si desea listar los casos de prueba con la categoría de prueba BVT y SMB311:

    RunTestCasesByFilter.sh "TestCategory=BVT&TestCategory=SMB311" "list"
    

Configurar y ejecutar la suite de pruebas mediante Protocol Test Manager Service

Protocol Test Manager Service (PTMService) es una herramienta de aplicación web de una sola página que le ayuda a configurar y ejecutar casos de prueba en las Suites de Pruebas. PTMService admite múltiples plataformas, incluyendo Windows, Linux y macOS. Para comenzar con PTMService, puede consultar la PTMService Wiki.

Para las configuraciones de FileServer, la opción de la interfaz de PTM Enable Parallel Test Execution se corresponde con la propiedad .ptfconfig totalmente cualificada Common.PTF.LogProfileParserPatch.Enabled. Establézcala en true para habilitar la ejecución paralela por etapas dentro de una ejecución de pruebas de FileServer.

Documentos

Puede configurar el entorno de pruebas y configurar la suite de pruebas según su User Guide. Cada suite de pruebas tiene su propia User Guide en la carpeta WindowsProtocolTestSuites\TestSuites\[TestSuiteName]\docs. Hay dos tipos más de documentos en la misma carpeta:

  • Technical Documents. La documentación de Especificaciones Abiertas para protocolos, publicada por Microsoft. Es la base para desarrollar las Suites de Pruebas.
  • Test Design Specs. Proporciona información sobre el alcance de las pruebas y el diseño de la suite de pruebas.

Contribuir

Puede encontrar la guía de contribución aquí.

Licencia

Windows Protocol Test Suites está bajo la licencia MIT.

Contacto

Los siguientes recursos son para noticias, discusión y soporte de la suite de pruebas de protocolos de Windows:

Código de Conducta de Código Abierto de Microsoft

Este proyecto ha adoptado el Microsoft Open Source Code of Conduct. Para obtener más información, consulte las Code of Conduct FAQ o contacte con [email protected] si tiene preguntas o comentarios adicionales.

Categorías