Git Product home page Git Product logo

windowsprotocoltestsuites's Introduction

Windows Protocol Test Suites

Windows Protocol Test Suites provide interoperability testing against the implementation of Windows open specifications including File Services, Identity Management, Remote Desktop and etc.

Originally developed for in-house testing of the Microsoft Open Specifications, Microsoft Protocol Test Suites have been used extensively during Plugfests and interoperability labs to test against partner implementations. A Test Suite evaluates whether a protocol or protocol family implementation meets certain interoperability requirements. Test Suites do not cover every protocol requirement and in no way certify an implementation, even if all tests pass. However, each test suite provides users with a useful indication of interoperability.

  • File Server Family Test Suite. It is designed to test implementations of file server protocol family including [MS-SMB2], [MS-DFSC], [MS-SWN], [MS-FSRVP], [MS-FSA], [MS-FSCC], [MS-RSVD] and [MS-SQOS].
  • RDP Client Family Test Suite. It provides interoperability testing for client implementation of RDP family protocols including [MS-RDPBCGR], [MS-RDPEDISP], [MS-RDPEDYC], [MS-RDPEGFX], [MS-RDPEGT], [MS-RDPEI], [MS-RDPEMT], [MS-RDPEUDP], [MS-RDPEUSB], [MS-RDPEVOR] and [MS-RDPRFX].
  • RDP Server Family Test Suite. It provides interoperability testing for server implementation of RDP family protocols including [MS-RDPBCGR], [MS-RDPEDYC], [MS-RDPEMT] and [MS-RDPELE].
  • Kerberos Server Test Suite. It is designed to test server implementations of Kerberos protocols including [MS-KILE], [MS-KKDCP] and [MS-PAC].
  • SMBD Server Test Suite. It is designed to test the implementations of SMB2&3 direct (RDMA) protocol, as specified in [MS-SMBD] and [MS-SMB2].
  • Branch Cache Test Suite. It is designed to test the implementations of [MS-PCCRTP], [MS-PCCRR], [MS-PCHC] and [MS-PCCRC] protocol.
  • AZOD Test Suite. It is designed to test the implementations of [MS-AZOD] protocol.
  • ADFamily Test Suite. It is designed to test the implementations of the Active Directory protocols including [MS-ADA1], [MS-ADA2], [MS-ADA3], [MS-ADLS], [MS-ADSC], [MS-ADTS], [MS-APDS], [MS-DRSR], [MS-FRS2], [MS-LSAD], [MS-LSAT], [MS-SAMR] and [MS-NRPC].
  • ADFSPIP Client Test Suite. It is designed to test the implementations of ADFS Proxy and Web Application Proxy integration, as described in [MS-ADFSPIP].
  • ADOD Test Suite. It is designed to test the implementations of [MS-ADOD] protocol.

Components

Windows Protocol Test Suites contain below components:

  • CommonScripts. Common scripts used by each test suite. Normally they're used to deploy the environment.
  • ProtoSDK. The protocol library used by each test suite. It provides the data structures of the protocol messages, the methods to encode and decode the messages, the methods to send and receive messages and etc.
  • TestSuites. All Test Suites code and documents are saved here and categorized by folder representing each test suite.
  • ProtocolTestManager. A tool to help you configure and run test suites.

Prerequisites

Windows Protocol Test Suites are based on .NET so they can be developed and run across different platforms. You should install the software listed below based on your testing purpose, including their own dependencies.

  1. .NET and related components

    a. For Windows, Linux and macOS, install .NET 6.0 SDK to build or run test suites.

    b. For those who work on Windows and prefer IDE, install Visual Studio 2022 or higher (Visual Studio 2022 Community recommended), together with these individual components from the installer:

    Section Individual Component in Visual Studio 2022 Run Windows Protocol Test Suites Build Windows Protocol Test Suites from source code
    .NET .NET SDK Required Required
    Compilers, build tools, and runtime C# and Visual Basic Roslyn compilers Required
    Compilers, build tools, and runtime MSVC v143 - VS 2022 C++ x64/x86 build tools (Latest) Required1
    Compilers, build tools, and runtime C++/CLI support for v143 build tools (Latest) Required1
    Compilers, build tools, and runtime C++ 2022 Redistributable Update Required1 Required1
    Development Activities C++ core features Required1
    SDKs, libraries, and frameworks Windows 10 SDK (10.0.19041.0) Required1

    Note:

[1]: This individual component is required by ADFamily and MS-SMBD which have C++ code.

  1. Protocol Test Framework v2.3 (build 2.3.0)

    Protocol Test Framework is referenced by projects of ProtoSDK and TestSuites as NuGet packages.

  2. Network Direct DDK

    From NetworkDirect_DDK.zip extract ndspi.h and ndstatus.h into project path ProtoSDK\RDMA\include. This is to build SMBD test suite.

  3. PowerShell Core

    This is required only when user want to use PowerShell Core Remoting over SSH.

  4. Win32-OpenSSH

    This is required only when user want to use PowerShell Core Remoting over SSH for Windows platform.

  5. WMF 5.1

    This is required only when user want to use PowerShell implementation on Windows Server 2012R2 for ISutCommonControlAdapter in CommonTestSuite.ptfconfig.

    a. If you choose PowerShell implementation for ISutCommonControlAdapter in a domain environment where the DC runs Windows Server 2012R2, in order to get SID from the DC, you need to install WMF 5.1 on the DC, for other Windows Server versions newer than Windows Server 2012R2, you do not need to install WMF 5.1 on the DC.

    b. If you choose PowerShell implementation for ISutCommonControlAdapter on Windows platforms (including Windows Server 2012R2 and newer versions) in workgroup environment, you do not need to install WMF 5.1 on the SUT.

    c. If you choose managed implementation for ISutCommonControlAdapter on Windows platforms (including Windows Server 2012R2 and newer versions), it will use LDAP queries to get SID and only supports domain environment.

If your work on Windows, you can use the script in InstallPrerequisites folder to automatically download and install these software.

Tips when using the script in InstallPrerequisites folder:

  • To run the script, open Windows PowerShell, and execute the commands below in the PowerShell Window:
cd WindowsProtocolTestSuites\InstallPrerequisites
.\InstallPrerequisites.ps1
  • If you meet errors about Execution Policy, make sure you run Windows PowerShell as Administrator, and type the following and enter:
Set-ExecutionPolicy RemoteSigned

You could run the command below to verify if the Execution Policy is correctly set:

Get-ExecutionPolicy

Then rerun the script.

Build

After you clone a copy of this repo, you can run build.ps1 in PowerShell or build.sh in shell for each test suite separately after you have installed all the softwares required for build listed in Prerequisites.

For example, if you want to build FileServer test suite:

cd WindowsProtocolTestSuites\TestSuites\FileServer\src
build.ps1

After the build succeeds, the common folder structure should be generated in the folder WindowsProtocolTestSuite\drop\TestSuites\[TestSuiteName]\.

  • Bin: all the built binaries including ProtoSDK, adapters and test suites.
  • Batch: batch files (.ps1, .sh) which can be used to launch tests.
  • Scripts: scripts which can be used to configure test environment.
  • Utils: some utilities which can be used in tests.

Run

Before running a test suite, you need do either of below:

  • Download the test suite archive you want to run from Releases, and extract it to some path you have access.
  • Build the test suite according to Build a test suite.

On macOS, the FileServer test suite uses AesCcm and AesGcm classes which require OpenSSL, so if there is not OpenSSL 1.1 on your macOS please install OpenSSL 1.1 and set the environment variable as following before you run the FileServer test suite on macOS,

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

Note:

  1. If brew is not installed on your macOS, you can install it according to brew.
  2. If you get the error "algorithm 'aesgcm' is not supported on this platform", that means dotnet cannot load AesGcm class from libcrypto.1.1.dylib on your macOS, then you need to check whether its location is in your DYLD_LIBRARY_PATH environment variable or not. Once you install OpenSSL 1.1 on your macOS the crypto library location is /usr/local/Cellar/[email protected]/1.1.1m/lib/libcrypto.1.1.dylib and /usr/local/opt/openssl links to the /usr/local/Cellar/[email protected]/1.1.1m directory by default.

Run test suite by batch

In the Batch folder under root path of the test suite, there are several scripts you can use to launch tests.

  1. Run all test cases

    Execute RunAllTestCases.ps1 in PowerShell, or RunAllTestCases.sh in shell directly.

  2. Run test cases by filters

    Execute RunTestCasesByFilter.ps1 -Filter [your filter expression] in PowerShell, or RunTestCasesByFilter.sh [your filter expression] in shell directly.

    For example, you can run below command if you want to run test cases with test category BVT and SMB311:

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

    For more information about how to construct the filter expression, you can refer to Filter option details.

  3. Dry run

    If you want to list the test cases before running them actually, you could add -DryRun switch to .ps1 scripts or pass a non-empty string as the last argument to .sh scripts.

    For example, you can run below command if you want to list test cases with test category BVT and SMB311:

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

Configure and run test suite by Protocol Test Manager

Take File Server test suite as an example, you can learn how to configure and run test suite by Protocol Test Manager referring to this tutorial.

Documents

You could set up the test environment and configure the test suite according to its User Guide. Each test suite has its own User Guide in the WindowsProtocolTestSuites\TestSuites\[TestSuiteName]\docs folder. There are two more kinds of documents in the same folder:

  • Technical Documents. The Open Specifications documentation for protocols, published by Microsoft. It's the basis of developing Test Suites.
  • Test Design Specs. It provides information about the test scope and test suite design.

Contribute

You can find contributing guide here.

License

Windows Protocol Test Suites are under the MIT license.

Contact

The following resources are for Windows protocol test suite news, discussion, and support:

Microsoft Open Source Code of Conduct

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact [email protected] with any additional questions or comments.

windowsprotocoltestsuites's People

Contributors

459680 avatar abiodun-aremu avatar caoyihua avatar chenlu0616 avatar dependabot[bot] avatar dingshouqing avatar dongruiqing avatar fenhan avatar grace-essien avatar hsuanyatsai avatar hxdhttk avatar hydrophobicminghao avatar jessief avatar jiajunw avatar jomitiron avatar ligurio avatar maggiewang0 avatar ms-hujia avatar ms-zhenhua avatar mzndako avatar obaro avatar rayyuepro avatar salajede avatar sweeetday avatar viviantian avatar wdls222 avatar xianbin-zhang avatar xinzhengli avatar yazeng avatar youssef1313 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

windowsprotocoltestsuites's Issues

Improvements to PTM CLI

Hi,
Following improvements are needed for PTM cli in order make it more usable for tests automation:

  • Ability to run specific test category
    -c | -category Run specific tests category
  • Return error when mandatory input arguments are not provided
    For example if profile is not provided the error output is not clear:

PS C:\Program Files (x86)\Protocol Test Manager\bin> .\PtmCli.exe -s -r result.txt
ERROR:
Value cannot be null.
Parameter name: path

FileServer : cannot run test suites for some categories

Hello.

I found that I could not run test for some categories of FileServer.
Please check the following list.

[ LeasingV1 0 0 0 0 fail to run TC
LeasingV2 0 0 0 0 fail to run TC
FSRVP 0 0 0 0 fail to run TC
SWN 0 0 0 0 fail to run TC
RsvdVersion1 0 0 0 0 fail to run TC
RsvdVersion2 0 0 0 0 fail to run TC
SQOS 0 0 0 0 fail to run TC
Auth 0 0 0 0 fail to run TC
KerberosAuthentication 0 0 0 0 fail to run TC
FileAccessCheck 0 0 0 0 fail to run TC
FolderAccessCheck 0 0 0 0 fail to run TC
ShareAccessCheck 0 0 0 0 fail to run TC
CBAC 0 0 0 0 fail to run TC
Cluster 0 0 0 0 fail to run TC ]

Other TCs run well. Could you share what the problem could be?
Error log and test enviroment are as follows:

** Error log
C:\MicrosoftProtocolTests\FileServer\Server-Endpoint\2.0.66.0\Batch..\Bin\MS-DFSC_ServerTestSuite.dll C:\MicrosoftProtocolTests\FileServer\Server-Endpoint\2.0.
66.0\Batch..\Bin\MS-SMB2_ServerTestSuite.dll C:\MicrosoftProtocolTests\FileServer\Server-Endpoint\2.0.66.0\Batch..\Bin\MS-SMB2Model_ServerTestSuite.dll C:\Mic
rosoftProtocolTests\FileServer\Server-Endpoint\2.0.66.0\Batch..\Bin\MS-FSA_ServerTestSuite.dll에서 테스트를 사용할 수 없습니다. 테스트 Discoverer와 Executor가
등록되었고 플랫폼 및 프레임워크 버전 설정이 적절한지 확인한 후 다시 시도하세요.
** This means "No test is available in ~~.dll. Make sure that test discoverer & executors are registered and platform & framework version settings are appropriate and try again."
/TestAdapterPath 명령을 사용하여 테스트 어댑터 경로도 지정할 수 있습니다. 예: /TestAdapterPath:.

** Environment
Windows 7 Ultimate K
WindowsProtocolTestSuites-2.0.66.0
VS community 2017
VS test agent 2017

PersistentHandleReconnectTestCaseS0

Hi,

Test PersistentHandleReconnectTestCaseS0 fails on validating
comment: This step would have covered "[MS-SMB2] 3.3.5.9.12: Handling the SMB2_CREATE_DURABLE_HANDLE_RECONNECT_V2 Create Context", "[MS-SMB2] The server MUST look up an existing open in the GlobalOpenTable by doing a lookup with the FileId.Persistent portion of the create context.", "[TestInfo] Open does not exist.", "[MS-SMB2] If the lookup fails, the server SHOULD<276> fail the request with STATUS_OBJECT_NAME_NOT_FOUND and proceed as specified in "Failed Open Handling" in section 3.3.5.9.", "[TestTag] InvalidIdentifier", "[TestInfo] The SUT platform is WindowsServer2008." 2. event parameters do not match comment: checking step 'event OpenResponse(STATUS_OBJECT_NAME_NOT_FOUND,durableHandleResponseContext,leaseResponseContext,c1)' assert failed: expected 'STATUS_OBJECT_NAME_NOT_FOUND', actual 'STATUS_SUCCESS' (status of OpenResponse, state S50)

As seen in capture persistent part of FileID on reconnect request is the same as returned by server earlier, so validation mentioned above is supposed to pass.

There are another 3 cases with the same flow:
PersistentHandleReconnectTestCaseS285
PersistentHandleReconnectTestCaseS555
PersistentHandleReconnectTestCaseS588

Attached log and capture (.pcapng as .png).

PersistentHandleReconnectTestCaseS0.txt
persistenthandlereconnecttestcases0

Thanks,
Lilia

DifferentShareFromSMBBasic

Hi,

Running AppInstanceIdTestCaseS130 test and some others I get

Assert.Inconclusive is inconclusive. The value of DifferentShareFromSMBBasic is empty.

But I can't find DifferentShareFromSMBBasic field in Configure Test Cases, where is it?

Thanks,
Lilia

Error: RPC Server is unavailable

When I'm running the .\Config-Client.ps1, I'm getting the following error message.

**Get-WmiObject : The RPC server is unavailable. (Exception from HRESULT: 0x800706BA)
At C:\MicrosoftProtocolTests\MS-SMB\Server-Endpoint\1.0.5142.0\Scripts\Config-Client.ps1:167 char:19

  • ... Version = (Get-WmiObject -comp "SUT01" -Credential $Credential -clas ...
  •             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    
    • CategoryInfo : InvalidOperation: (:) [Get-WmiObject], COMException
    • FullyQualifiedErrorId : GetWMICOMException,Microsoft.PowerShell.Commands.GetWmiObjectCommand

You cannot call a method on a null-valued expression.
At C:\MicrosoftProtocolTests\MS-SMB\Server-Endpoint\1.0.5142.0\Scripts\Config-Client.ps1:168 char:1

  • $FirstDotIndex = $SUTOSVersion.IndexOf('.')
  •   + CategoryInfo          : InvalidOperation: (:) [], RuntimeException
      + FullyQualifiedErrorId : InvokeMethodOnNull
    
    

You cannot call a method on a null-valued expression.
At C:\MicrosoftProtocolTests\MS-SMB\Server-Endpoint\1.0.5142.0\Scripts\Config-Client.ps1:169 char:1

  • $SecondDotIndex = $SUTOSVersion.IndexOf('.', $FirstDotIndex+1)
  •   + CategoryInfo          : InvalidOperation: (:) [], RuntimeException
      + FullyQualifiedErrorId : InvokeMethodOnNull
    
    

You cannot call a method on a null-valued expression.
At C:\MicrosoftProtocolTests\MS-SMB\Server-Endpoint\1.0.5142.0\Scripts\Config-Client.ps1:176 char:2

  • $SUTOsVersion = $SUTOsVersion.substring(0,$SecondDotIndex)
    
  • ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    
    • CategoryInfo : InvalidOperation: (:) [], RuntimeException
    • FullyQualifiedErrorId : InvokeMethodOnNull**

I have disabled the firewall on both the SUT and driver computer already.

test case "CreditMgmtTestCaseS776" payload does not equal to the current payload

I have the test capture and the log file is not match to what is written in the file log error.(the test fails)

The log file has the following text:
2017-01-16 16:45:18.450 [Debug] *****customizedMId = 5

2017-01-16 16:45:18.451 [Debug] *****customizedCreditCharge = 2

2017-01-16 16:45:18.451 [Debug] *****customizedCreditRequest = 0

But i can't see this info in the capture.

I am attaching the logs and the file capture.
Out_16_1_17_CreditMgmtTestCaseS776.zip

CAShareName is not verified during test run

Hi,

Seems that once CAShareName is set to a valid share name it's capability of continuous availability is never verified during the test run.
For example test RequestPersistentHandleTestCaseS74 run against Server2012R2 share which is not CA, but it's name is set in CAShareName . According to spec persistent handle should not be granted, but test expects it, since no actual check for CS share capability is done.

RequestPersistentHandleTestCaseS74.txt

please rename gif to pcap:
requestpersistenthandletestcases74

Thanks,
Lilia

WiX build failure

Hitting this same build failure with this project:
microsoft/ProtocolTestFramework#18

Tried loading the 'msi' files from the most recent published Release, but it seems out of date (Build 1.0.5000 from May 26).
Installed the ProtocolTestManager.msi, MS-SMB-Testsuite-ServerEP.msi, and FileServer-TestSuite-ServerEP.msi

After installing the Protocol Test Manager I get an error in the Select Test Suite of the Wizard:

errormessage

ADFamily LDAP does not honour isWindows

The isWindows flag is not consistently honoured in the LDAP test suite of ADFamily, specifically in the cleanup code of the LDAP model adaptor (AD_LDAPModelAdapter.cs)

This is used to check error codes - LDAP error codes are supplemented by a windows error code in the error string on windows, and the test is asserting this in all cases.

The InstallPrerequisites script should include cases for ADFamily etc

It would be very helpful if the InstallPrerequisites script included cases for all the testsuites included in the releases page, not just those that are currently open source.

This will help in automatically installing all the test suites, because this script knows the simple download locations and silent install scripts.

conflict tests send create with lease and fail

Conflict tests send create with lease and fail even my server does not support leasing.
The test name is as follow:
ConflictTestCaseS24
ConflictTestCaseS30
ConflictTestCaseS51
ConflictTestCaseS66
ConflictTestCaseS66
ConflictTestCaseS72
ConflictTestCaseS81
ConflictTestCaseS126
ConflictTestCaseS138
ConflictTestCaseS153

Pleas advise.
ConflictTestCaseS126_lease.zip

questions on MS-SMBD test suite

Hi,

I am trying to install the MS-SMBD test suite on a win2012r2 machine with RNIC (as the driver machine), and then trying to run the BVT test cases against another win2012r2 machine with RNIC (as the SUT). After installing the prerequisites, I tried the following two ways:

  1. I tried to install the released SMBD test suite (.msi file), and then modified the .ptfconfig files to point to the SUT machine. I then double-clicked on the "Run MS-SMBD Server-BVTTestCases" icon. The test ran a while, and then failed at the end, with the error messages like:
    "Failed BVT_SmbdNegotiate_Basic
    Error Message:
    Assert.AreEqual failed. Expected: <STATUS_SUCCESS (Microsoft.Protocols.TestTo
    ols.StackSdk.NtStatus)>, Actual: <STATUS_NOT_SUPPORTED (Microsoft.Protocols.Test
    Tools.StackSdk.NtStatus)>. Status of SMBD connection is STATUS_NOT_SUPPORTED
    ===== Stack Trace =====
    at Microsoft.Protocol.TestSuites.Smbd.TestSuite.SmbdNegotiate.BasicNegotiate(
    UInt16 creditsRequested, UInt32 preferredSendSize, UInt32 maxReceiveSize, UInt32
    maxFragmentedSize, SmbdNegotiateResponse& response) in e:\Jenkins\workspace\Cod
    eSign-TestSuites\TestSuite\TestSuites\MS-SMBD\src\TestSuite\SMBD\SmbdNegotiate.c
    s:line 558
    at Microsoft.Protocol.TestSuites.Smbd.TestSuite.SmbdNegotiate.BVT_SmbdNegotia
    te_Basic() in e:\Jenkins\workspace\CodeSign-TestSuites\TestSuite\TestSuites\MS-S
    MBD\src\TestSuite\SMBD\SmbdNegotiate.cs:line 71
    === End of Stack Trace ==="

I could see some SMB traffics over TCP in the Message Analyzer, but I didn't see any SMB traffics over RDMA in the above case.


  1. I also tried to build the SMBD test suite. (I am following the steps on https://github.com/Microsoft/WindowsProtocolTestSuites.) However, it gave me a building error as:
    "PS C:\WindowsProtocolTestSuites\TestSuites\MS-SMBD\src> .\build.cmd
    ==========================================
    Start to build MS-SMBD test suite
    ==========================================

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\ProtocolTestFramework
PTFVersion REG_SZ 1.0.5500.0

Error: WindowsProtocolTestSuites\ProtoSDK\RDMA\include\ndspi.h does not exist, it can be extracted from NetworkDirect_DD
K.zip in HPC Pack 2008 R2 SDK @ http://www.microsoft.com/en-us/download/details.aspx?id=12218"

Am I supposed to manually copy \include\ndspi.h from NetworkDirect_DDK.zip to be under WindowsProtocolTestSuites\ProtoSDK\RDMA? After I tried so, it gave me many other build errors.


Any ideas on what went wrong for the above two cases? Did I miss any steps? Thanks for any pointers.

build all fails on windows 8

Hi All,

Windows Protocol Test Suite buildall.cmd fails on windows 8.1.

I got below error messages after running buildall.cmd , attached complete log with this.
also please let me know if there is any additional step required to install/compile it on windows 8.1 .

C:\Windows\Microsoft.NET\Framework\v4.0.30319\Csc.exe /noconfig /nowarn:1701,1702 /nostdlib+ /errorreport:prompt /warn:4 /define:DEBUG;TRACE /highentropyva- /reference:D:\PrimaryData\Setups\software-microsoftinstaller\WindowsProtocolTestSuites\TestSuites\FileServer\src\Common\Adapter\bin\Debug\CommonAdapter.dll /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework.NETFramework\v4.0\Microsoft.CSharp.dll" /reference:"C:\Program Files (x86)\Protocol Test Framework\bin\Microsoft.Protocols.TestTools.dll" /reference:D:\PrimaryData\Setups\software-microsoftinstaller\WindowsProtocolTestSuites\ProtoSDK\Common\bin\Debug\Microsoft.Protocols.TestTools.StackSdk.dll /reference:D:\PrimaryData\Setups\software-microsoftinstaller\WindowsProtocolTestSuites\ProtoSDK\MS-DFSC\bin\Debug\Microsoft.Protocols.TestTools.StackSdk.FileAccessService.Dfsc.dll /reference:D:\PrimaryData\Setups\software-microsoftinstaller\WindowsProtocolTestSuites\ProtoSDK\FileAccessService\bin\Debug\Microsoft.Protocols.TestTools.StackSdk.FileAccessService.dll /reference:D:\PrimaryData\Setups\software-microsoftinstaller\WindowsProtocolTestSuites\ProtoSDK\MS-FSRVP\bin\Debug\Microsoft.Protocols.TestTools.StackSdk.FileAccessService.Fsrvp.dll /reference:D:\PrimaryData\Setups\software-microsoftinstaller\WindowsProtocolTestSuites\ProtoSDK\MS-SMB\bin\Debug\Microsoft.Protocols.TestTools.StackSdk.FileAccessService.Smb.dll /reference:D:\PrimaryData\Setups\software-microsoftinstaller\WindowsProtocolTestSuites\ProtoSDK\MS-SMB2\bin\Debug\Microsoft.Protocols.TestTools.StackSdk.FileAccessService.Smb2.dll /reference:D:\PrimaryData\Setups\software-microsoftinstaller\WindowsProtocolTestSuites\ProtoSDK\MS-RPCE\bin\Debug\Microsoft.Protocols.TestTools.StackSdk.Networking.Rpce.dll /reference:D:\PrimaryData\Setups\software-microsoftinstaller\WindowsProtocolTestSuites\ProtoSDK\MS-NLMP\bin\Debug\Microsoft.Protocols.TestTools.StackSdk.Security.Nlmp.dll /reference:D:\PrimaryData\Setups\software-microsoftinstaller\WindowsProtocolTestSuites\ProtoSDK\Sspi\bin\Debug\Microsoft.Protocols.TestTools.StackSdk.Security.Sspi.dll /reference:D:\PrimaryData\Setups\software-microsoftinstaller\WindowsProtocolTestSuites\ProtoSDK\MS-SWN\bin\Debug\Microsoft.Protocols.TestTools.StackSdk.Swn.dll /reference:"C:\Program Files (x86)\Protocol Test Framework\bin\Microsoft.Protocols.TestTools.VSTS.dll" /reference:"C:\Program Files (x86)\Common Files\microsoft shared\Spec Explorer 2010\2.2.0.0\Microsoft.SpecExplorer.Runtime.dll" /reference:"C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\ReferenceAssemblies\v4.0\Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll" /reference:"C:\Program Files (x86)\Common Files\microsoft shared\Spec Explorer 2010\2.2.0.0\Microsoft.Xrt.Runtime.dll" /reference:D:\PrimaryData\Setups\software-microsoftinstaller\WindowsProtocolTestSuites\TestSuites\FileServer\src\SMB2Model\Adapter\bin\Debug\MS-SMB2Model_ServerAdapter.dll /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework.NETFramework\v4.0\mscorlib.dll" /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework.NETFramework\v4.0\System.Core.dll" /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework.NETFramework\v4.0\System.Data.DataSetExtensions.dll" /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework.NETFramework\v4.0\System.Data.dll" /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework.NETFramework\v4.0\System.dll" /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework.NETFramework\v4.0\System.Xml.dll" /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework.NETFramework\v4.0\System.Xml.Linq.dll" /debug+ /debug:full /filealign:512 /optimize- /out:obj\Debug\MS-SMB2Model_ServerTestSuite.dll /target:library /utf8output AppInstanceIdTestCase.cs BreakReadHandleLeaseV1TestCase.cs BreakReadHandleLeaseV2TestCase.cs BreakReadLeaseV1TestCase.cs BreakReadLeaseV2TestCase.cs BreakReadWriteHandleLeaseV1TestCase.cs BreakReadWriteHandleLeaseV2TestCase.cs BreakReadWriteLeaseV1TestCase.cs BreakReadWriteLeaseV2TestCase.cs ConflictTestCase.cs CreateCloseTestCase.cs CreditMgmtTestCase.cs DurableHandleV1PreparedWithBatchOplockReconnectTestCase.cs DurableHandleV1PreparedWithLeaseV1ReconnectTestCase.cs DurableHandleV2PreparedWithBatchOplockReconnectTestCase.cs DurableHandleV2PreparedWithLeaseV1ReconnectTestCase.cs DurableHandleV2PreparedWithLeaseV2ReconnectTestCase.cs EncryptionTestCase.cs LeaseOplockTestCase.cs NegotiateTestCase.cs OplockLeaseTestCase.cs OplockOnShareWithForceLevel2AndSOFSTestCase.cs OplockOnShareWithForceLevel2WithoutSOFSTestCase.cs OplockOnShareWithoutForceLevel2OrSOFSTestCase.cs OplockOnShareWithoutForceLevel2WithSOFSTestCase.cs PersistentHandleReconnectTestCase.cs ReplayCreateDurableHandleV1TestCase.cs ReplayCreateDurableHandleV2PersistentTestCase.cs ReplayCreateDurableHandleV2TestCase.cs ReplayCreateNormalHandleTestCase.cs ReplayCreateWithoutHandleTestCase.cs ReplayFileOperationTestCase.cs RequestDurableHandleV1BatchOplockTestCase.cs RequestDurableHandleV1LeaseV1TestCase.cs RequestDurableHandleV2BatchOplockTestCase.cs RequestDurableHandleV2LeaseV1TestCase.cs RequestDurableHandleV2LeaseV2TestCase.cs RequestPersistentHandleTestCase.cs ResilientHandleBasicTestCase.cs ResilientHandleDurableTestCase.cs SessionMgmtBindSessionAfterDisconnectionScenarioTestCase.cs SessionMgmtBindSessionAfterLogOffScenarioTestCase.cs SessionMgmtBindSessionScenarioTestCase.cs SessionMgmtNewSessionScenarioTestCase.cs SessionMgmtReconnectSessionScenarioTestCase.cs SigningTestCase.cs TreeMgmtTestCase.cs ValidateNegotiateInfoTestCase.cs "C:\Users\mangesh.pardhi\AppData\Local\Temp.NETFramework,Version=v4.0.AssemblyAttributes.cs"
AppInstanceIdTestCase.cs(25,50): error CS0246: The type or namespace name 'PtfTestClassBase' could not be found (are you missing a using directive or an assembly reference?) [D:\PrimaryData\Setups\software-microsoftinstaller\WindowsProtocolTestSuites\TestSuites\FileServer\src\SMB2Model\TestSuite\MS-SMB2Model_ServerTestSuite.csproj]
BreakReadHandleLeaseV1TestCase.cs(25,59): error CS0246: The type or namespace name 'PtfTestClassBase' could not be found (are you missing a using directive or an assembly reference?) [D:\PrimaryData\Setups\software-microsoftinstaller\WindowsProtocolTestSuites\TestSuites\FileServer\src\SMB2Model\TestSuite\MS-SMB2Model_ServerTestSuite.csproj]
BreakReadHandleLeaseV2TestCase.cs(25,59): error CS0246: The type or namespace name 'PtfTestClassBase' could not be found (are you missing a using directive or an assembly reference?) [D:\PrimaryData\Setups\software-microsoftinstaller\WindowsProtocolTestSuites\TestSuites\FileServer\src\SMB2Model\TestSuite\MS-SMB2Model_ServerTestSuite.csproj]
BreakReadLeaseV1TestCase.cs(25,53): error CS0246: The type or namespace name 'PtfTestClassBase' could not be found (are you missing a using directive or an assembly reference?) [D:\PrimaryData\Setups\software-microsoftinstaller\WindowsProtocolTestSuites\TestSuites\FileServer\src\SMB2Model\TestSuite\MS-SMB2Model_ServerTestSuite.csproj]
BreakReadLeaseV2TestCase.cs(25,53): error CS0246: The type or namespace name 'PtfTestClassBase' could not be found (are you missing a using directive or an assembly reference?) [D:\PrimaryData\Setups\software-microsoftinstaller\WindowsProtocolTestSuites\TestSuites\FileServer\src\SMB2Model\TestSuite\MS-SMB2Model_ServerTestSuite.csproj]
BreakReadWriteHandleLeaseV1TestCase.cs(25,64): error CS0246: The type or namespace name 'PtfTestClassBase' could not be found (are you missing a using directive or an assembly reference?) [D:\PrimaryData\Setups\software-microsoftinstaller\WindowsProtocolTestSuites\TestSuites\FileServer\src\SMB2Model\TestSuite\MS-SMB2Model_ServerTestSuite.csproj]
BreakReadWriteHandleLeaseV2TestCase.cs(25,64): error CS0246: The type or namespace name 'PtfTestClassBase' could not be found (are you missing a using directive or an assembly reference?) [D:\PrimaryData\Setups\software-microsoftinstaller\WindowsProtocolTestSuites\TestSuites\FileServer\src\SMB2Model\TestSuite\MS-SMB2Model_ServerTestSuite.csproj]
BreakReadWriteLeaseV1TestCase.cs(25,58): error CS0246: The type or namespace name 'PtfTestClassBase' could not be found (are you missing a using directive or an assembly reference?) [D:\PrimaryData\Setups\software-microsoftinstaller\WindowsProtocolTestSuites\TestSuites\FileServer\src\SMB2Model\TestSuite\MS-SMB2Model_ServerTestSuite.csproj]
BreakReadWriteLeaseV2TestCase.cs(25,58): error CS0246: The type or namespace name 'PtfTestClassBase' could not be found (are you missing a using directive or an assembly reference?) [D:\PrimaryData\Setups\software-microsoftinstaller\WindowsProtocolTestSuites\TestSuites\FileServer\src\SMB2Model\TestSuite\MS-SMB2Model_ServerTestSuite.csproj]
ConflictTestCase.cs(25,45): error CS0246: The type or namespace name 'PtfTestClassBase' could not be found (are you missing a using directive or an assembly reference?) [D:\PrimaryData\Setups\software-microsoftinstaller\WindowsProtocolTestSuites\TestSuites\FileServer\src\SMB2Model\TestSuite\MS-SMB2Model_ServerTestSuite.csproj]
CreateCloseTestCase.cs(25,48): error CS0246: The type or namespace name 'PtfTestClassBase' could not be found (are you missing a using directive or an assembly reference?) [D:\PrimaryData\Setups\software-microsoftinstaller\WindowsProtocolTestSuites\TestSuites\FileServer\src\SMB2Model\TestSuite\MS-SMB2Model_ServerTestSuite.csproj]
CreditMgmtTestCase.cs(25,47): error CS0246: The type or namespace name 'PtfTestClassBase' could not be found (are you missing a using directive or an assembly reference?) [D:\PrimaryData\Setups\software-microsoftinstaller\WindowsProtocolTestSuites\TestSuites\FileServer\src\SMB2Model\TestSuite\MS-SMB2Model_ServerTestSuite.csproj]
DurableHandleV1PreparedWithBatchOplockReconnectTestCase.cs(25,84): error CS0246: The type or namespace name 'PtfTestClassBase' could not be found (are you missing a using directive or an assembly reference?) [D:\PrimaryData\Setups\software-microsoftinstaller\WindowsProtocolTestSuites\TestSuites\FileServer\src\SMB2Model\TestSuite\MS-SMB2Model_ServerTestSuite.csproj]
DurableHandleV1PreparedWithLeaseV1ReconnectTestCase.cs(25,80): error CS0246: The type or namespace name 'PtfTestClassBase' could not be found (are you missing a using directive or an assembly reference?) [D:\PrimaryData\Setups\software-microsoftinstaller\WindowsProtocolTestSuites\TestSuites\FileServer\src\SMB2Model\TestSuite\MS-SMB2Model_ServerTestSuite.csproj]
DurableHandleV2PreparedWithBatchOplockReconnectTestCase.cs(25,84): error CS0246: The type or namespace name 'PtfTestClassBase' could not be found (are you missing a using directive or an assembly reference?) [D:\PrimaryData\Setups\software-microsoftinstaller\WindowsProtocolTestSuites\TestSuites\FileServer\src\SMB2Model\TestSuite\MS-SMB2Model_ServerTestSuite.csproj]
DurableHandleV2PreparedWithLeaseV1ReconnectTestCase.cs(25,80): error CS0246: The type or namespace name 'PtfTestClassBase' could not be found (are you missing a using directive or an assembly reference?) [D:\PrimaryData\Setups\software-microsoftinstaller\WindowsProtocolTestSuites\TestSuites\FileServer\src\SMB2Model\TestSuite\MS-SMB2Model_ServerTestSuite.csproj]
DurableHandleV2PreparedWithLeaseV2ReconnectTestCase.cs(25,80): error CS0246: The type or namespace name 'PtfTestClassBase' could not be found (are you missing a using directive or an assembly reference?) [D:\PrimaryData\Setups\software-microsoftinstaller\WindowsProtocolTestSuites\TestSuites\FileServer\src\SMB2Model\TestSuite\MS-SMB2Model_ServerTestSuite.csproj]
EncryptionTestCase.cs(25,47): error CS0246: The type or namespace name 'PtfTestClassBase' could not be found (are you missing a using directive or an assembly reference?) [D:\PrimaryData\Setups\software-microsoftinstaller\WindowsProtocolTestSuites\TestSuites\FileServer\src\SMB2Model\TestSuite\MS-SMB2Model_ServerTestSuite.csproj]
LeaseOplockTestCase.cs(25,48): error CS0246: The type or namespace name 'PtfTestClassBase' could not be found (are you missing a using directive or an assembly reference?) [D:\PrimaryData\Setups\software-microsoftinstaller\WindowsProtocolTestSuites\TestSuites\FileServer\src\SMB2Model\TestSuite\MS-SMB2Model_ServerTestSuite.csproj]
NegotiateTestCase.cs(25,46): error CS0246
out.zip

File Server Family Test Suite fails with error “QTAgent.exe has stopped working”

Hi,
I tried to run File Server Family Test Suite against Windows Server 2016 and it failed with error “QTAgent.exe has stopped working”. I used the following configuration –

- Client01
OS Name: Microsoft Windows 10 Enterprise Evaluation
OS Version: 10.0.14393 N/A Build 14393
OS Manufacturer: Microsoft Corporation
OS Configuration: Member Workstation
OS Build Type: Multiprocessor Free

Client01 Software:
VisualStudio 2012 Premium Update 5
Spec Explorer (version 3.5.3146.0)
Protocol Test Framework (version 1.0.5000.0)
File Server Test Suite (version 1.0.5142.0)
Protocol Test Manager (version 1.0.5142.0)

- DC01, Node01, Node02, Storage01
OS Name: Microsoft Windows Server 2016 Standard Evaluation
OS Version: 10.0.14393 N/A Build 14393
OS Manufacturer: Microsoft Corporation
OS Configuration: Member Server
OS Build Type: Multiprocessor Free

// The VM configuration applies to all VMs
Machine type: VM
Hypervisor: ESXi 6.0 U2
vCPU: 2
RAM: 2GB
Disk: 64GB

Please find the attached screenshots of the error.
Also, please let me know if you require more information regarding the error.

protocoltestmanager crash
qtagent crash

/Shishir

FileServer does not run

Hello.

I am developing a SMB2 server implemetation and want to test its compatibility with WindowsProtocolTestSuites.
Actullay I got some error messages when I try to run FileServer test after installing all prerequsites.
I could find no meaningful solution for this problem by googling and MSDN search so I request you to check the log.
Any opinion will be appreciated.

Regards,
Taeyang Mok


C:\MicrosoftProtocolTests\FileServer\Server-Endpoint\2.0.66.0\Batch>Domain_RunAllTestCases.cmd
Define the command to run file sharing test suite
Microsoft (R) Test Execution Command Line Tool Version 14.0.23107.0
Copyright (c) Microsoft Corporation. All rights reserved.

테스트 실행을 시작하는 중입니다. 잠시 기다려 주십시오...
경고: 다음 이유로 인해 TIP를 인스턴스화할 수 없으므로 TestTypes\13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b을(를) 로드할 수 없습니다. System.IO.FileNotFoundException:
파일이나 어셈블리 'Microsoft.VisualStudio.QualityTools.Tips.UnitTest.Tip, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' 또는 여기에 종속되
어 있는 파일이나 어셈블리 중 하나를 로드할 수 없습니다. 지정된 파일을 찾을 수 없습니다.
@ It seems that Microsoft.VisualStudio.QualityTools.Tips.UnitTest.Tip is not found.
파일 이름: 'Microsoft.VisualStudio.QualityTools.Tips.UnitTest.Tip, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'
위치: System.RuntimeTypeHandle.GetTypeByName(String name, Boolean throwOnError, Boolean ignoreCase, Boolean reflectionOnly, StackCrawlMarkHandle stackMark, I
ntPtr pPrivHostBinder, Boolean loadTypeFromPartialName, ObjectHandleOnStack type)
위치: System.RuntimeTypeHandle.GetTypeByName(String name, Boolean throwOnError, Boolean ignoreCase, Boolean reflectionOnly, StackCrawlMark& stackMark, IntPtr
pPrivHostBinder, Boolean loadTypeFromPartialName)
위치: System.RuntimeType.GetType(String typeName, Boolean throwOnError, Boolean ignoreCase, Boolean reflectionOnly, StackCrawlMark& stackMark)
위치: System.Type.GetType(String typeName, Boolean throwOnError)
위치: Microsoft.VisualStudio.TestTools.TestManagement.TipDelayLoader.LoadTip()

=== 미리 바인딩된 상태 정보 ===
로그: DisplayName = Microsoft.VisualStudio.QualityTools.Tips.UnitTest.Tip, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
(Fully-specified)
로그: Appbase = file:///C:/Program Files (x86)/Microsoft Visual Studio 14.0/Common7/IDE/CommonExtensions/Microsoft/TestWindow/
로그: 초기 PrivatePath = NULL
호출 어셈블리: (Unknown).

로그: 이 바인딩은 default 로드 컨텍스트에서 시작됩니다.
로그: 응용 프로그램 구성 파일 C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow\vstest.console.exe.Config을(
를) 사용합니다.
로그: 호스트 구성 파일 을(를) 사용합니다.
로그: C:\Windows\Microsoft.NET\Framework\v4.0.30319\config\machine.config에서 컴퓨터 구성 파일을 사용합니다.
로그: 사후 정책 참조: Microsoft.VisualStudio.QualityTools.Tips.UnitTest.Tip, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
로그: 새 URL file:///C:/Program Files (x86)/Microsoft Visual Studio 14.0/Common7/IDE/CommonExtensions/Microsoft/TestWindow/Microsoft.VisualStudio.QualityTools.T
ips.UnitTest.Tip.DLL을(를) 다운로드합니다.
로그: 새 URL file:///C:/Program Files (x86)/Microsoft Visual Studio 14.0/Common7/IDE/CommonExtensions/Microsoft/TestWindow/Microsoft.VisualStudio.QualityTools.T
ips.UnitTest.Tip/Microsoft.VisualStudio.QualityTools.Tips.UnitTest.Tip.DLL을(를) 다운로드합니다.
로그: 새 URL file:///C:/Program Files (x86)/Microsoft Visual Studio 14.0/Common7/IDE/CommonExtensions/Microsoft/TestWindow/Extensions/Microsoft.VisualStudio.Qua
lityTools.Tips.UnitTest.Tip.DLL을(를) 다운로드합니다.
로그: 새 URL file:///C:/Program Files (x86)/Microsoft Visual Studio 14.0/Common7/IDE/CommonExtensions/Microsoft/TestWindow/Extensions/Microsoft.VisualStudio.Qua
lityTools.Tips.UnitTest.Tip/Microsoft.VisualStudio.QualityTools.Tips.UnitTest.Tip.DLL을(를) 다운로드합니다.
로그: 새 URL file:///C:/Program Files (x86)/Microsoft Visual Studio 14.0/Common7/IDE/CommonExtensions/Microsoft/TestWindow/Microsoft.VisualStudio.QualityTools.T
ips.UnitTest.Tip.EXE을(를) 다운로드합니다.
로그: 새 URL file:///C:/Program Files (x86)/Microsoft Visual Studio 14.0/Common7/IDE/CommonExtensions/Microsoft/TestWindow/Microsoft.VisualStudio.QualityTools.T
ips.UnitTest.Tip/Microsoft.VisualStudio.QualityTools.Tips.UnitTest.Tip.EXE을(를) 다운로드합니다.
로그: 새 URL file:///C:/Program Files (x86)/Microsoft Visual Studio 14.0/Common7/IDE/CommonExtensions/Microsoft/TestWindow/Extensions/Microsoft.VisualStudio.Qua
lityTools.Tips.UnitTest.Tip.EXE을(를) 다운로드합니다.
로그: 새 URL file:///C:/Program Files (x86)/Microsoft Visual Studio 14.0/Common7/IDE/CommonExtensions/Microsoft/TestWindow/Extensions/Microsoft.VisualStudio.Qua
lityTools.Tips.UnitTest.Tip/Microsoft.VisualStudio.QualityTools.Tips.UnitTest.Tip.EXE을(를) 다운로드합니다.

경고: ..\Bin\MS-DFSC_ServerTestSuite.dll ..\Bin\MS-SMB2_ServerTestSuite.dll ..\Bin\MS-SMB2Model_ServerTestSuite.dll ..\Bin\MS-FSA_ServerTestSuite.dll에서 테스트
를 사용할 수 없습니다. 설치된 테스트 Discoverer와 Executor, 플랫폼 및 프레임워크 버전 설정이 적절한지 확인한 후에 다시 시도하세요.
@ It indicates that version configurations of test Discoverer, Executor, platform and framework need to be checked.

정보: 또한 테스트 Discoverer 및 Executor가 vsix 확장과 같은 컴퓨터에 설치되어 있으며 설치에서 vsix 확장을 지원하는 경우에는 '/UseVsixExtensions' 명령을 지정할
수 있습니다(예: vstest.console.exe myTests.dll /UseVsixExtensions:true).

How to get File Server Test Suite VMs

The issue is filed for one of our partners.
The question is:
In the past, we have got MSFT test suite enabled on VMs that have been handed to us. I was wondering if you have something of that sort that we could use for this purpose.

ResilientHandleDurable Tests

Hi,

I've got several tests that i don't understand why thy are failing.
ResilientHandleDurableTestCaseS725
ResilientHandleDurableTestCaseS948
ResilientHandleDurableTestCaseS996
ResilientHandleDurableTestCaseS1625
ResilientHandleDurableTestCaseS1694
ResilientHandleDurableTestCaseS1768
ResilientHandleDurableTestCaseS1793
ResilientHandleDurableTestCaseS1227
ResilientHandleDurableTestCaseS1148

The scenario sequence:
create(durable)
resilient
RST
create(reconnect)

The test expect to fail with "STATUS_OBJECT_NOT_FOUND" and our server return "SUCCESS"

Can you explain why the test suppose to fail?

Best Regards,
Eliad Cohen
Visuality Systems Ltd.

Unable to load the test container

When I try running the RunAllTestCases in MS-SMB Testsuite, I'm getting the following error.

**C:\MicrosoftProtocolTests\MS-SMB\Server-Endpoint\1.0.5142.0\Batch>"C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\Tools..\IDE\mstest" /category:"Traditional|Win7_Win2K8R2" /testcontainer:..\Bin\MS-SMB_ServerTestSuite.dll /runconfig:..\Bin\ServerLocalTestRun.testrunconfig
Microsoft (R) Test Execution Command Line Tool Version 11.0.50727.1
Copyright (c) Microsoft Corporation. All rights reserved.

Loading ..\Bin\ServerLocalTestRun.testrunconfig...
Loading ..\Bin\MS-SMB_ServerTestSuite.dll...
..\Bin\MS-SMB_ServerTestSuite.dll
Unable to load the test container '..\Bin\MS-SMB_ServerTestSuite.dll' or one of its dependencies. Error details: System.TypeLoadException: Could not load type 'Microsoft.Protocols.TestTools.PtfTestClassBase' from assembly 'Microsoft.Protocols.TestTools.VSTS, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'.**

How to get log files when using PtmCli? [Question]

Hi,

When the tests are run using PtmCli, how can we get the test results log? The only option I see is to get the report which only shows whether the test passed or failed etc. If a test is failed, I see ErrorStackTrace, ErrorMessage and StandardOut in GUI for the failed test case and StandardOut console log for passed test cases. Is there a way to get this when run thru PtmCli??

Thank you,
Raja

EncryptionTestCase* cases fail against Windows2012r2 with "No crypto info could be found for this session"

Numerous encryption tests fail against Windows2012r2 with common failure:
System.InvalidOperationException: No crypto info could be found for this session.

All these tests expect Session Setup to fail, but still continue to TreeConnect and fail since no session established.

Suite version: 1.0.5142.0
IsGlobalEncryptDataEnabled: True
IsGlobalRejectUnencryptedAccessEnabled: True

Here is the stack:
Microsoft.Protocols.TestTools.StackSdk.FileAccessService.Smb2.Smb2Client.EnableSessionSigningAndEncryption(UInt64 sessionId, Boolean enableSigning, Boolean enableEncryption) in c:\WindowsProtocolTestSuites-staging\ProtoSDK\MS-SMB2\Client\Smb2Client.cs:line 869 at Microsoft.Protocols.TestSuites.FileSharing.Common.Adapter.Smb2FunctionalClient.EnableSessionSigningAndEncryption(Boolean enableSigning, Boolean enableEncryption) in c:\WindowsProtocolTestSuites-staging\TestSuites\FileServer\src\Common\Adapter\Smb2FunctionalClient.cs:line 401 at Microsoft.Protocols.TestSuites.FileSharing.SMB2Model.Adapter.Encryption.EncryptionAdapter.TreeConnectRequest(ConnectToShareType connectToShareType, ModelRequestType modelRequestType) in c:\WindowsProtocolTestSuites-staging\TestSuites\FileServer\src\SMB2Model\Adapter\Encryption\EncryptionAdapter.cs:line 143

PTM config saved incorrectly and PtmCli doesn't run all tests and shows no errors

Hi,

I’m trying to run Windows Protocol test Suites and am able to run them successfully using GUI interface of PTM. But when I try to load the saved config, the SMB Dialects are not selected as seen in the attached Screenshot. How do I save the profile so that it will load the SMB dialects and all the test cases?? I’m using this profile to run using PtmCli and I see none of the SMB2 tests run and I think this is probably because the test suites are not selected. Am attaching the screen output below. Can you please help me out so that I can run the tests thru CLI? (I’ve modified IP/FQDN/passwd in .ptm file)

Pl. let me know if you need any details.

Test setup details:

Windows 2012
Protocol Test Manager version 3.18.3.0 ( as seen in attached screenshot)
Protocol Test Suites downloaded from https://github.com/Microsoft/WindowsProtocolTestSuites/releases

[pl. rename t1.txt to t1.ptm]

Thank you for your time.

Thanks,
Raja

ptmcli
ptm
t1.txt

Negative tests labeled Positive

The following two tests seem to do something not allowed in the specification and then expect the RDP client to close the connection. This is the classic definition of a NegativeTest in the RDP suite. Yet they are labeled "PositiveTests":

RDPEGFX_SurfaceToScreen_PositiveTest_DeleteSurface
RDPEGFX_CacheManagement_PositiveTest_EvictCache_DeleteCacheSlot

Running test suites remotely (via WinRM)

I have been trying to setup and control the driver computer for the Kerberos test suites remotely using WinRM, but it appears that I can't run the tests in this way:

%vspath%"..\IDE\CommonExtensions\Microsoft\TestWindow\vstest.console.exe" "..\Bin\Kerberos_ServerTestSuite.dll" /Settings:..\Bin\ServerLocalTestRun.testrunconfig /Logger:trx

I assume it might be related to requiring some GUI components for instance (which might be worked around using the PsExec tool which I will probably try). I was wondering if there was any guidance in regards to running the tests in this way and what other methods I could try.

3 ChangeNotify testcases failing against Windows 10

I am trying to execute ChangeNotify testcases. My test controller is Windows 2008 and SUT is Windows 10.
3 of the testcases are always failing:

  • Change FileName
  • Change DirName
  • MaxTransactSizeCheck

Error message displayed is:

Test method Microsoft.Protocols.TestSuites.FileSharing.SMB2.TestSuite.SMB2Basic.BVT_SMB2Basic_ChangeNotify_ChangeFileName threw exception: 

System.TimeoutException: The operation has timed out

Where may I look for the issue ?

Can the .ptm files be modified manully? [question]

Hi,

Is there a way to modify .ptm file generated and use it with PtmCli?? I want to edit the exported .ptm config file and update host/domain/user details and use it with PtmCli? Right now, when I try to load the edited .ptm file or run using PtmCli, I get an error that the file is corrupted. Is there a way to do this?? The config file needs to be generated on run time based on user provided config details, so need a way to create/update .ptm file using CLI. Pl. let me know what are the options to do this.

Thank you,
Raja

Save a test profile

Hello,

How do I save a test profile? I noticed there is a way to upload a test profile, but don't see a "button" to save a profile.

Thank you,
Ahmed.

Importing of OPNs into Microsoft Message Analyzer fails

I copied all files from RDP/Client-Endpoint/3.18.3.0/Data/SuperLogViewer/OPNs to the User AppData Directory.
When i start the MMA i get following Error Message:
Error C:\Users\Administrator\AppData\Local\Microsoft\MessageAnalyzer\OPNAndConfiguration\Opns\Microsoft\Windows\RemoteDesktop\Protocol_Test_Suite.opn(96,36-96,53): undeclared 'DecodeEtwKeywords'

I do not know if i did something wrong, but i would appreciate if you could take a look why this happens.

RDP Client TestSuite Build 3.18.3.0
MMA: 1.4
PTF: commit f02506bc2f72dbd90df360a0702af6ac92c55f88

Thank you very much in advance

Warnings seen during build of ProtocolTestFramework

I tried building the ProtocolTestFramework on a 64 bit Windows 7 machine after installing all the prerequisites. I'm getting some 130 warnings as mentioned below.

C:\Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.Common.targets(1578,5): warning MSB3270: There was a mismatch
between the processor architecture of the project being built "MSIL" and the processor architecture of the reference "
C:\Windows\Microsoft.NET\Framework\v4.0.30319\mscorlib.dll", "x86". This mismatch may cause runtime failures.

However, when I tried building the same on a 32 bit Windows 8.1 machine, I got similar 149 warnings related to x64 architecture. Is it fine to ignore these warnings ?

After building the ProtocolTestFramework, I tried to build the MS-SMB TestSuite. Similar warnings were seen there as well. But at the end it was mentioned that it is built successfully. I also got the .msi file as mentioned in the readme.

Now I referred to the user guide(https://github.com/Microsoft/WindowsProtocolTestSuites/blob/staging/TestSuites/MS-SMB/docs/MS-SMB_ServerUserGuide.md) of MS-SMB TestSuite. After reading the user guide, I have the following doubts.

  • Is this test suite suitable to run on SUTs with only NTFS or FAT file systems ?
  • Should I assign the IPs of SUT, driver computer and DC exactly as mentioned in the user guide ?
  • Is it mandatory to have an isolated network ?
  • should the driver computer definitelyt be 32 bit Windows 8.1 ?
  • After running ./ConfigServer or /.ConfigClient, is there any way to reconfigure them ? (If I do it now, it says the script is already run)

BVT_Encryption_PerShareEncryptionEnabled fails against Windows2012r2

Hi,

I am using 2.0.0.0 version received at PlugFest.

Test
BVT_Encryption_PerShareEncryptionEnabled fails against Windows2012r2,
IsGlobalEncryptDataEnabled: True
IsGlobalRejectUnencryptedAccessEnabled: True

Test expects TreeConnect to succeed (why?), but server returns ACCESS_DENIED.

Maybe this test should appear as Inconclusive when IsGlobalEncryptDataEnabled and IsGlobalRejectUnencryptedAccessEnabled both are true?

I will attach full stack trace and capture.

BVT_Encryption_PerShareEncryptionEnabled.txt

Thanks,
Lilia

[RDP] Parsing RDP Version depends on date format

Hi,

I've discovered a problem running the Protocol Test Manager for RDP on my laptop. If the date and time format of the machine is set to "German (Germany)" all test cases fail with "Assert.Fail failed. RDP.Version in config file is invalid.". With the time format set to "English (United States)" everything works fine.

The cause of this issue seems to be the way of parsing the configured RDP version in TestSuites/RDP/src/TestSuite/RdpTestClassBase.cs line 129. The version string containing a dot is parsed with Double.Parse() to a double variable. But in german locales floating point numbers are represented with a comma instead of a dot. So parsing "10.0" e. g. fails.
Nevertheless it seems to me like no good idea using the double type when it comes to such things like a version number.

Regards,
Michael

RSVDv1 test - ReconnectSharedVHDWithoutDeviceContext failing

Hello,

I am running the RSVD Version 1 tests against our RSVDv1 implementation. Most of the tests are passing, however the following test is failing:
ReconnectSharedVHDWithoutDeviceContext

In my setup, I have the following setting:
SupportedSecurityPackage = Ntlm (To avoid using Kerberos)
IsRequiredMessageSigning = false (To disable signing of packets)

I am attaching a network wire trace, which shows the test stopped performing a "Session Setup", and performed a "Tree Disconnect".

ReconnectSharedVHDWithoutDeviceContext_FAIL.pcapng.zip

Can you please tell me what other test logs you need from the test run, and from which location (on the test client) I can get them.

Thank you,
Ahmed.

EncryptionTestCaseS2295 fails against Windows2012r2

Hi,

I am using 2.0.0.0 version received at PlugFest.

Test
EncryptionTestCaseS2295 fails against Windows2012r2,
IsGlobalEncryptDataEnabled: True
IsGlobalRejectUnencryptedAccessEnabled: False

See comment from stack trace:
comment: This step would have covered "[MS-SMB2] 3.3.5.2.9: If Connection.Dialect belongs to the SMB 3.x dialect family, Session.EncryptData is TRUE, and RejectUnencryptedAccess is TRUE

But according to settings of suite and server as well IsGlobalRejectUnencryptedAccessEnabled is false.

I will attach full stack trace and capture.

EncryptionTestCaseS2295.txt

encryptiontestcases2295
please rename to pcapng

Thanks,
Lilia

Protocol Test Manager not working

err

** Environment
Windows 7 Ultimate K
WindowsProtocolTestSuites-2.0.66.0
VS community 2017
VS test agent 2017

When I click Configure Wizard in Protocol Test Manager, an error window pop up.
Should I configure path of VS test agent?

Running test suite with /logger:html does not generate HTML files per test case

I am trying to run test suite with following command.

COMMAND: "C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow\vstest.console.exe" C:\MicrosoftProtocolTests\FileServer\Server-Endpoint\1.0.5000.0\Bin\MS-SMB2_ServerTestSuite.dll /TestCaseFilter:"TestCategory=smb21" /Settings:C\MsWinSMBProtocolTest20170111_091422042536\TestSuiteConfigs\ServerLocalTestRun.testrunconfig /Logger:html

test run went good, the results also getting generated but the html files for each test case does not.
./Html folder shows empty. Following is the directory structure getting generated for the results.

dbharti % ls -R
.:
Captures Html index.html js Txt

./Captures:

./Html:

./js:
functions.js

./Txt:
2017-01-11-04-46-06_Passed_BVT_Negotiate_Compatible_Wildcard.txt
2017-01-11-04-46-10_Passed_BVT_Negotiate_Compatible_2002.txt
2017-01-11-04-46-12_Passed_BVT_Negotiate_SigningEnabled.txt
2017-01-11-04-46-14_Passed_BVT_Negotiate_SMB2002.txt
2017-01-11-04-46-16_Passed_BVT_Negotiate_SMB21.txt
2017-01-11-04-46-18_Passed_BVT_Negotiate_SMB30.txt
2017-01-11-04-46-20_Passed_BVT_Negotiate_SMB302.txt
2017-01-11-04-46-22_Passed_BVT_Negotiate_SMB311.txt
2017-01-11-04-46-24_Inconclusive_BVT_Negotiate_SMB311_Preauthentication.txt
2017-01-11-04-46-26_Inconclusive_BVT_Negotiate_SMB311_Preauthentication_Encryption_CCM.txt
2017-01-11-04-46-28_Inconclusive_BVT_Negotiate_SMB311_Preauthentication_Encryption_GCM.txt
2017-01-11-04-46-30_Inconclusive_Negotiate_SMB311_WithoutAnyContexts.txt
2017-01-11-04-46-32_Inconclusive_Negotiate_SMB311_WithEncryptionContextWithoutIntegrityContext.txt
2017-01-11-04-46-34_Inconclusive_Negotiate_SMB311_InvalidHashAlgorithm.txt
2017-01-11-04-46-36_Inconclusive_Negotiate_SMB311_InvalidCipher.txt

please check the attached screen shot
capture

[Kerberos] Setting up a Samba AD DC

Hello,

I'm currently at the Samba IO Lab and created some scripts to provision and prepare DC01 for the Kerberos Testsuite using Samba AD.

I've created a repository where I will try to keep them up to date. You can find them here.

https://github.com/gladiac/Samba-WindowsProtocolTestsuites

Note that they are not complete yet and we will work on simplifying them. Should we add a note to the documentation?

I'm opening a bug so there is some record of the scripts at least.

Prerequisites installation order

For the records as discovered at an interop event, the order of prerequisites seems to be wrong.

Currently this is:

  • Protocol Test Framework
  • Visual Studio 2017

It must be:

  • Visual Studio 2017
  • Protocol Test Framework

Unable to run Protocol test Manager using CLI

We were looking at the Protocol Test Manager tool to run protocol compliance test suits MS-SMB2 specifically against our systems. I was able to run them successfully using GUI, but I wanted to know how can I run using CLI. I searched on web to find more about it and found the presentation on 'Enhanced User Experience' from Vivian Tian from plugfest 2016. It seems like ptmcli.exe is the command to do that. But when I run this command with the profile file it seems unable to parse the file correctly. I have generated profile file using the “Save Profile” option from the GUI. However it seems the profile file it is generating cannot be used directly /corrupted. I wanted to know if there is a solution by which I can generate clean profile file.
I tried to clean up the profile file manually by opening it in text editor but it seems like I might have deleted some extra data/or couldn’t find all the corrupted data.
Following are the few errors I get when I load the profile file:
“There is an error in XML document (0,0)”
After cleaning most of the control characters in the file I get “File contains corrupted data”

I am attaching a generated corrupted profile file for you to have a look at it.
Please let me know how else I can generate this file and run a subset of test cases using cli.

MS-SMB : Can you share an example MS-SMB_ServerTestSuite.deployment.ptfconfig file for SMB implementations for Linux?

Hello.

Can you share an example MS-SMB_ServerTestSuite.deployment.ptfconfig file for SMB implementations for Linux such as samba?

Actually I am trying to run MS-SMB testsuite with a Linux-kernel-embedded SMB implementation and have some configuration issues.
I configure my test environment after reading MS-SMB_ServerUserGuide.md, but still have problems.
If you provide Linux SUT configuration detail, It will be really helpful.

By the way, Please check attatched test result and let me know if you found anything strange.
USER_CLIENT01 2017-12-23 14_29_17.zip

Best Regards,
Taeyang Mok

"The imported project "C:\Microsoft.Cpp.Default.props" was not found" Error occurs while building MS_SMBD testsuite

I am trying to build the MS-SMBD testsuite

I have ran the installprerequisiters script and had installed SpecExplorer

When running the build.cmd i get the following errors

PS C:\Users\Administrator\Desktop\WindowsProtocolTestSuites-staging\TestSuites\MS-SMBD\src> .\build.cmd

C:\Users\Administrator\Desktop\WindowsProtocolTestSuites-staging\ProtoSDK\RDMA\Rdma.vcxproj(53,3): error MSB4019: The imported project "C:\Microsoft.Cpp.Default.props" was not found. Confirm that the path
in the declaration is correct, and that the file exists on disk.

Looks like "Microsoft.Cpp.Default.props" is missing in the msbuild folder

Version of .net framework needed.

Hello,

The prerequisite section states that one needs to install ".Net framework 3.5", however, there was some confusion at the Widows Plugfest if a higher version is good enough? Can you please confirm?

I will be running/extending the following protocol test sutie:
File Server Family Test Suite : [MS-SMB2], [MS-FSRVP], [MS-RSVD]

Thank you,
Ahmed.

MS-SMB: question about configuration

Hello,

I ran the FileServer Testsuites by modifying some deployment.ptfconfig files, because Protocol Test Management is not working with my environment(Win7, VS 2017, VS TA 2017, and the latest relesed binaries of WindowsProtocolTestSuites 2.0.66.0 and Protocol Test Framework 1.0.5500.0) and Configuration guide for SUT that is Not Windows-based is a little hard to follow.

This time, my question is if I could do the same thing with MS-SMB testsuites.
For example, I might change serverComputerName variable value from SUT01 to my linux-based smb server's ip address.

If I could set up my own configuration, which file do I need to modify?
In my opinion, All I have to modify are ParamConfig.xml and MS-SMB_ServerTestSuite.deployment.ptfconfig.

Best Regards,
Taeyang Mok

PTM crash

PTM crashed during execution of all tests of the FileServer test suite against Samba cluster.
Exception was: System.UnhandledExceptionEventArgs
image

WindowsProtocolTestSuites 2.0

Error generated from XML typo (easy fix).

When building the MS-SMB test suite per the instructions, an error message is generated:

"C:\Users\Administrator\WindowsProtocolTestSuites\TestSuites\MS-SMB\src\deploy\deploy.wixproj"
  (Clean;Rebuild target) (1) ->
    (Compile target) -> C:\Users\Administrator\WindowsProtocolTestSuites\TestSuites\MS-SMB\src\deploy\TestSuitePrivacyStatementLowMsiVersionDlg.wxs(19): error CNDL0104: Not a valid source file; detail: The 'Control' start tag on line 17 position 10 does not match the end tag of 'Text'. Line 19, position 6. [C:\Users\Administrator\WindowsProtocolTestSuites\TestSuites\MS-SMB\src\deploy\deploy.wixproj]

To fix, delete line 19 in file .../MS-SMB/src/Deploy/TestSuitePrivacyStatementLowMsiVersionDlg.wxs

That line contains a closing </Text> tag with no matching opening tag.

Where to find the test case steps

A question from one partner:

I am running windows protocol testsuite to verify my implementation of SMB.
I ran the Fileserver test and found many failures.

The problem now is, I cannot find test case steps.

Is there a way you can provide me the link or description of each of the test cases for file server SMB?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.