Condividi tramite


Suggerimenti per i test dei driver durante lo sviluppo

Quando è necessario avviare il test? Non appena si hanno i requisiti per il driver, è possibile iniziare a progettare test case per verificare che siano stati implementati i requisiti critici. Gli studi mostrano che la ricerca e la correzione dei difetti nel codice diventano più costosi, più i difetti rimangono nel codice. La ricerca e la correzione dei difetti all'inizio del ciclo di sviluppo sono meno costose e dispendiose rispetto alla ricerca di difetti dopo il rilascio e la distribuzione del codice. La creazione anticipata dei test case consente anche di individuare problemi nella progettazione.

Suggerimenti per i test durante lo sviluppo

Usare i suggerimenti seguenti per testare il codice driver e il pacchetto driver.

Per facilitare la ricerca di bug in fase di compilazione:

  • Dichiarare le funzioni di callback fornite dal driver e inviare routine usando i tipi di ruolo funzione. Ciò consente di migliorare l'accuratezza degli strumenti di analisi e verifica del codice e dell'efficacia del tempo di test. Per altre informazioni su come dichiarare le funzioni fornite dal driver, vedere Using Function Role Type Declarations.For more information about how to declare your driver-supplied functions, see Using Function Role Type Declarations.

  • Compilare il codice usando l'opzione Avvisi di livello4 (/W4). La correzione degli avvisi rilevati dal compilatore aumenterà la qualità del codice del driver e contribuirà a eliminare eventuali difetti aggiuntivi prima del ciclo di sviluppo.

  • Annotare il codice usando il linguaggio di annotazione del codice sorgente Microsoft (SAL) 2.0. Le annotazioni descrivono come una funzione usa i relativi parametri, ovvero i presupposti che fa su di essi e le garanzie che crea al termine. Le annotazioni migliorano anche l'accuratezza degli strumenti di analisi del codice. Per altre informazioni sulle annotazioni specifiche del driver, vedere Annotazioni SAL 2.0 per i driver.

  • Usare gli strumenti per verificare i driver durante lo sviluppo del driver. Per indicazioni su quando usare strumenti di verifica specifici, vedere Analisi di un driver tramite strumenti di analisi del codice e verifica.

Per testare il pacchetto driver:

  • Creare il file INF e il pacchetto driver all'inizio del processo di sviluppo e usarlo durante i test.

  • Usare lo strumento InfVerif per verificare la struttura e la sintassi del file INF e per diagnosticare il file INF e altri problemi correlati all'installazione.

  • Usare lo strumento Inf2Cat (con l'opzione /nocat ) per eseguire una verifica aggiuntiva dei file INF. Inf2Cat può verificare che i file a cui fa riferimento l'INF siano presenti e inseriti nella directory del pacchetto, perché l'INF prevede che siano.

  • Firmare i driver per facilitare l'installazione e il test dei driver, come descritto in Firma dei driver durante lo sviluppo e il test.

  • Eseguire il test DriverInstall incluso come parte dei test Di base del dispositivo forniti in WDK. Vedere Come testare un driver in fase di esecuzione usando Visual Studio e Come selezionare e configurare i test fondamentali del dispositivo. Il test DriverInstall può essere eseguito dopo la distribuzione del driver nel computer di test. È possibile aggiungere il test DriverInstall a un gruppo di test driver. Il test DriverInstall viene visualizzato nelle categorie test driver in Tutti i test\Basic\Device Fundamentals\DriverInstall.

  • Risolvere i problemi di installazione dei dispositivi usando Gestione dispositivi per visualizzare le informazioni di sistema sui driver e i dispositivi e consultando il log SetupAPI. Il log SetupAPI contiene informazioni sulla sequenza di operazioni che si sono verificate durante l'installazione di un dispositivo o di un driver.

    Usando Visual Studio e WDK, è possibile testare e risolvere i problemi di installazione del pacchetto driver quando si distribuisce il driver in un computer di test, vedere Distribuzione di un driver in un computer di test. Selezionare l'opzione Installa e verifica nelle proprietà di distribuzione per i progetti di pacchetto driver. Quando si seleziona questa opzione e si specifica l'attività di installazione del pacchetto driver predefinito (possibile riavvio) o l'attività di installazione del pacchetto driver stampante predefinita (possibile riavvio), il test legge il file INF del driver e installa il driver. Il test verifica quindi che il driver sia attivo e in esecuzione. Al termine, il test fornisce informazioni dettagliate sull'esito positivo o negativo dell'attività di installazione. I risultati sono visualizzati in Esplora gruppi di test driver, in Driver Test Groups > Driver Installation. Il nome dell'attività è Default Driver Package Installation Task.The task is Default Driver Package Installation Task.

Per testare il driver in fase di esecuzione: