Test funzionale di Winsock Core
Questo test automatizzato esegue l'iterazione di alcune delle funzionalità principali di Winsock in un'interfaccia di loopback e verifica se l'interfaccia API Winsock è gestita correttamente.
Tutti i test riguardano i socket IPv4 e IPv6, tutti associati all'interfaccia di loopback. Le varianti sono le seguenti:
Catalogo socket. Enumera il catalogo Winsock, crea un socket per ogni struttura protocolinfo restituita (ogni tupla del protocollo) e la associa all'interfaccia di loopback.
I/O SOVRAPPOSTO. Crea socket di flusso TCP IPv4 e IPv6, stabilisce una connessione tramite loopback e invia i dati tra i socket tramite chiamate di ricezione di tipo blocco e sovrapposte. Tutti i dati vengono verificati come ricevuti.
Variante di TransmitFile. Verifica che TransmitFile invii correttamente i dati e implementi il flag di TF_DISCONNECT per il riutilizzo del socket per i socket IPv4 e IPv6. Crea un file temporaneo a 260 byte e trasmette tramite una connessione TCP tramite TransmitFile. Il socket di ascolto usa AcceptEx per verificare il riutilizzo della connessione e del socket.
ConditionalAccept. Verifica la semantica dell'accettazione condizionale sui socket di flusso TCP IPv4 e IPv6. Verifica cinque connessioni: senza un listener, restituendo CF_REJECT, restituendo CF_ACCEPT, restituendo CF_DEFER + CF_REJECT e restituendo CF_DEFER + CF_ACCEPT.
Flussi. Blocca l'invio/ricezione tramite socket di flusso TCP IPv4 e IPv6. Rinvia la chiamata all'accettazione con un backlog di ascolto zero fino al termine della connessione.
Datagrammi. Verifica l'invio e la ricezione di datagrammi su socket UDP IPv4 e IPv6. Testa l'invio di datagrammi tramite connect/send/receive e l'invio senza connessione da/ricezione.
Selezionare Verifica la notifica READFDS sui socket TCP IPv4 e IPv6 per indicare la creazione della connessione, la ricezione dei dati e la chiusura del socket.
Esegui il binding. Verifica la semantica di associazione per i socket TCP IPv4 e IPv6: binding di base, binding SO_REUSEADDR e binding SO_EXCLUSIVEADDRUSE .
ReadFile/WriteFile. Verifica se le funzioni ReadFile() e WriteFile() sovrapposte funzionano correttamente su socket TCP IPv4 e IPv6.
Arresto. Verifica la semantica shutdown() nei socket TCP IPv4 e IPv6 stabilendo una connessione, registrando una ricezione di blocco e verificando se l'arresto chiamante completa la ricezione con zero byte ricevuti.
Affrontare. Verifica la conversione di indirizzi IPv4 e IPv6 da stringhe h, decimal e ottali ai valori della struttura di indirizzi socket corrispondenti (WSAAddressToString e WSAStringToAddress).
Multicast. Per IPv4 e IPv6, verifica l'aggiunta a gruppi multicast tramite IP_ADD_MEMBERSHIP e IPV6_ADD_MEMBERSHIP, inviando e ricevendo dati al gruppo e lasciando il gruppo.
JoinLeaf. Per IPv4 e IPv6, verifica l'aggiunta a gruppi multicast tramite WSAJoinLeaf, l'invio e la ricezione di dati al gruppo e l'uscita dal gruppo.
AsyncSelect. Per i socket TCP IPv4 e IPv6, verifica che FD_CONNECT, FD_SEND e FD_READ messaggi di Windows vengano elaborati tramite WSAAsyncSelect. Verifica anche se FD_CONNECT viene elaborato quando un socket multicast completa WSAJoinLeaf.
IOCP. Per i socket TCP IPv4 e IPv6, effettua chiamate di ricezione sovrapposte in cui il socket è associato a una porta di completamento I/O. Verifica anche se i completamenti sovrapposti vengono elaborati e vengono ricevuti tutti i dati.
Socket RAW. Per IPv4 e IPv6, crea socket non elaborati, invio e ricezione di messaggi ICMP (Internet Control Message Protocol) tramite OVERLAPPED IO.
Pnp. Verifica se la notifica di modifica dell'indirizzo sovrapposta viene segnalata quando gli indirizzi IP non loopback vengono aggiunti e rimossi dal primo non loopback.
Per altre informazioni sull'API Winsock, vedere Windows Sockets 2.
Dettagli del test
Specifiche |
|
Piattaforme |
|
Versioni supportate |
|
Tempo di esecuzione previsto (in minuti) | 30 |
Categoria | Sviluppo |
Timeout (in minuti) | 1800 |
Richiede il riavvio | false |
Richiede una configurazione speciale | false |
Tipo | automatic |
Documentazione aggiuntiva
I test in questa area di funzionalità potrebbero avere documentazione aggiuntiva, inclusi i prerequisiti, la configurazione e le informazioni sulla risoluzione dei problemi, disponibili negli argomenti seguenti:
Esecuzione del test
Per altre informazioni sui requisiti, vedere Prerequisiti di test del file system.
Inoltre, questo test richiede il software seguente:
Driver di filtro da testare insieme a qualsiasi gruppo di applicazioni di supporto
Almeno un'interfaccia di rete connessa con un indirizzo IPv4 e IPv6 valido
Risoluzione dei problemi relativi
Per la risoluzione generica degli errori di test HLK, vedere Risoluzione dei problemi di test di Windows HLK.
Per informazioni sulla risoluzione dei problemi, vedere Risoluzione dei problemi relativi ai test del file system.
Tutti i test case restituiscono Pass o Fail. Per esaminare i dettagli dei test, esaminare il log di test da Windows HLK Studio.
Nota
Windows Firewall può aprire un messaggio che suggerisce che il firewall potrebbe bloccare alcune funzionalità del test. Tuttavia, il firewall non influisce sul test. È possibile ignorare tale errore.
Se questa procedura non fornisce un risultato di test riuscito, inviare il log di test con dettagli specifici del dispositivo o specifici del sistema all'alias di supporto di Windows Hardware Lab Kit (HLK).
Altre informazioni
Sintassi dei comandi
Opzione comando | Descrizione |
---|---|
Winsockfunctional -protocol ip -t "Winsock API\Current Protocols (IPv4/IPv6)\BVT" -wtt -r -dontdisable -ipsec -notrace |
È necessario specificare questo argomento di base. |
-lsponly |
È necessario aggiungere questo argomento quando viene installato un LSP. |
Nota
Per la Guida della riga di comando per questo file binario di test, digitare /h.
Elenco file
File | Posizione |
---|---|
WinsockFunctional.exe |
<[testbinroot]>\NTTest\NetTest\Winsock\common\ |
WinsockFunctional.wtl |
Log di output dettagliato contenente i risultati del test |
Wsbvt.log |
Log di output di riepilogo dei risultati del test |
Bvterr.log |
Log di output di riepilogo dei risultati del test |
Fnshell.ini |
File di .ini temporaneo generato e usato dal test |
Parametri
Nome parametro | Descrizione dei parametri |
---|---|
LLU_LocalAdmin | LLU per l'esecuzione |
LLU_NetAccessOnly | LLU per la copia |