Download Windows Protocol Test Suites Overview and Updates and more Study notes Design in PDF only on Docsity!
Windows Protocol Test Suites
Overview and Updates
Mengyan (Helen) Lu Jiajun Wang
Microsoft
Agenda
Protocol Test Suite Overview
Protocol Test Suite Open Source
Linux Integration with Test Suite Automation
Test Environment on Azure
Why we developed Protocol Test suites
Ensure quality of Microsoft Open Specifications
- Accuracy and Usability Help to identify your implementation issues
• Make debugging easier
Message sequence, encrypted
messages logging
• Test mainstream scenarios
Source code in test suite can be your reference in development phase
Protocol Test Methodology
- Develop protocol test suite (synthetic client) according to Open Specification
- Run against Windows to verify Open Specification
- Run against 3 rd
- party implementation to help identify & debug issues
- Open Specification defines messages, sequences, behaviors
- Interoperability between partner’s server and Windows client
Windows
Client
Windows
Server
Test Suite
Synthetic Server
Partner’s Server
Message Over the Wire
Open Specification
Server-side implementation
Windows Protocol Test Suite Types
Type Test Suite Name Protocols Protocol Families FileServer MS-SMB2, MS-FSRVP, MS-SWN, MS-DFSC, MS-RSVD, MS-SQOS, MS-FSA, MS-HVRS Kerberos MS-KILE, MS-KKDCP, MS-PAC RDP (Client & Server) RDP Client TestSuite: MS-RDPBCGR, MS-RDPEDISP, MS-RDPEDYC, MS-RDPEGFX, MS- RDPEGT, MS-RDPEI, MS-RDPEMT, MS-RDPEUDP, MS-RDPEUSB, MS-RDPEVOR, MS- RDPRFX RDP Server TestSuite: MS-RDPBCGR, MS-RDPEMT ADFamily MS-ADTS-LDAP, MS-ADTS-PublishDC, MS-ADTS-Schema, MS-ADTS-Security, MS- APDS, MS-DRSR, MS-FRS2, MS-LSAD, MS-LSAT, MS-NRPC, MS-SAMR BranchCache MS-PCCRC, MS-PCCRR, MS-PCCRTP, MS-PCHC, MS-CCROD Individual Protocols MS-SMB MS-SMB MS-SMBD MS-SMBD MS-ADFSPIP MS-ADFSPIP Overview Documents MS-ADOD MS-ADOD MS-AZOD MS-AZOD
Protocol Test Framework, Protocol Test Manager
- Protocol Test Framework
- PTF Adapter
- PTF Config
- Logging
- ……
- Protocol Test Manager
Visual Studio Unit Test
Framework
Protocol Test Framework
FileServer Test Suite ADFamily Test Suite ……
PTM CLI: a command line interface for PTM
https://github.com/Microsoft/WindowsProtocolTestSuites/wiki/PtmCli
Test Suite Open Source
https://github.com/Microsoft/WindowsProtocolTestSuites
- Open sourced on GitHub in 2016
- Two formats: source code and MSI file
- MIT License: Short and permissive
https://github.com/Microsoft/ProtocolTestFramework
- 11 Test Suites(family)
- 45 Windows Protocols
- Protocol Test Framework
- Protocol Test Manager
Build Test Suites
• Clone code from Github
• Install Prerequisites Software
cd WindowsProtocolTestSuites\InstallPrerequisites
.\InstallPrerequisites.ps1 – Category ‘FileServer’
• Build Protocol Test Framework
• Build Test Suite
Check more details on GitHub:
Agenda
Protocol Test Suite Overview
Protocol Test Suite Open Source
Linux Integration with Test Suite Automation
Test Environment on Azure
Linux Integration
• Trigger Test Suites Remotely
• Control Linux SUT in Test Suite
Test Suite (^) Domain Controller Linux SUT
Trigger Test Suites Remotely
Trigger through PowerShell Core
SUT
Execute
Test Suites
https://github.com/Microsoft/WindowsProtocolTestSuites/wiki/Remotely-Trigger-Test-Suites
SUT Control Adapter
• Used to control SUT status during testing.
• Currently support:
• PowerShell
• CMD
• Interactive
Example: Failover Cluster
Node 2 Node 1 Cluster Test Suite Storage Domain Controller
Node 1 Node 2 Cluster Test Suite Storage Domain Controller
Example: Failover Cluster