Aracılığıyla paylaş


DevFund Testlerini komut satırı aracılığıyla çalıştırma

Genel bakış

DevFund ve SysFund testlerini komut satırı aracılığıyla çalıştırmanın çeşitli yolları vardır. Bu sayfadaki yönergeler, Visual Studio ve Windows Driver Kit (WDK) ile komut satırı üzerinden test çalıştırmaya yöneliktir, ancak test sistemini Visual Studio aracılığıyla sağlamadan çalıştırılır.

DevFund ve SysFund testlerini çalıştırmak için diğer yöntemler şunlardır:

Kurulum

WDTF yüklemesi sisteme sürücüleri yüklediğinden aşağıdaki komutların yükseltilmiş/yönetici komut isteminden yürütülmesi gerektiğini unutmayın. Aşağıdaki yönergelerde sistem mimarisinin x64 olduğu varsayılır. Aşağıdaki adımların diğer mimariler için ayarlanması gerekebilir.

1. Adım : Visual Studio ve Windows Sürücü Seti'ni (WDK) yükleme

2. Adım : Testler TAEF hizmetini kullanır.

TAEF hizmetini (Te.service) yüklemek için %PROGRAMFILES(X86)%\Windows Kits\10\Testing\Runtimes\TAEF\x64 adresine gidip aşağıdaki komutları çalıştırarak hizmeti başlatın:

  1. wex.services.exe /install:te.service (te.service'in başarıyla yüklendiğini doğrulayın)

  2. sc start te.service ('STATE' öğesinin 'START_PENDING' olduğunu doğrulayın)

  3. sc query te.service ('STATE' öğesinin 'RUNNING' olduğunu doğrulayın)

  4. sc qc te.service ('START_TYPE' öğesinin 'AUTO_START' olduğunu doğrulayın)

Bu dizini sistem PATH ortam değişkenine ekleyin ve yükseltilmiş komut istemini yeniden başlatın.

3. Adım : WDTF MSI'sinin (%PROGRAMFILES(X86)%\Windows Kits\10\Testing\Runtimes\) konumuna gidip istenen mimari için paketi yükleyerek WDTF'yi yükleyin. Bu örnekte \Desktop\WDTFInstall.log%USERPROFILE% yükleme günlüğü dosyası için bir konum ve ad belirtin:

cd %PROGRAMFILES(X86)%\Windows Kits\10\Testing\Runtimes\
msiexec /i "Windows Driver Testing Framework (WDTF) Runtime Libraries-x64\_en-us.msi" /l\* "%USERPROFILE%\Desktop\WDTFInstall.log"

Bu örnekte 64 bit WDTF MSI kullanıldığından, WDTF MSI%PROGRAMFILES (X86) %altında olsa bile, WDTF %PROGRAMFILES%\Windows Kits\10\Testing\Runtimes\WDTF konumuna yüklenir.

4. Adım : Makineyi test için yapılandırın:

  • Makineyi tam dökümleri toplayacak veya bir çekirdek hata ayıklayıcısı ekecek şekilde yapılandırın.

  • Testler makineyi yeniden başlatabileceğinden ve uyku döngülerini denetlemesi gerektiğinden, makineyi hiç uyumayacak, ekranı hiçbir zaman kapatamayacak ve bir test hesabına otomatik oturum açabilecek şekilde yapılandırın (netplwiz.exe). Otomatik oturum açma işleminin dikkatli bir şekilde kullanılması gerektiğini unutmayın.

5. Adım : Testi çalıştırın. DevFund testleri %PROGRAMFILES(X86)%\Windows Kits\10\Testing\Tests\Additional Tests\x64\DevFund konumunda bulunur.

DevFund testi çalıştırmaya yönelik temel komut şu biçimdedir:

Te.exe Devfund_<testname>.dll /name:"<test case name>" /p:"DQ=DeviceID='<Device Instance Path of device under test from Device Manager>'" /RebootStateFile:state.xml

Burada <test çalışması adı> , test ikili dosyasındaki testin adıdır.

/ name anahtarı isteğe bağlıdır. Bazı test ikili dosyaları birden çok test içerdiğinden, / name anahtarı hangi testlerin çalıştırılması gerektiğini belirtir. Belirtilmezse, test ikilisinde bulunan tüm testler sırayla yürütülür. Test ikilisindeki testlerin listesi aşağıdaki komut çalıştırılarak elde edilebilir:

Te.exe Devfund\<testname>.dll /list

Örneğin, Devfund_PnPDTest.dll PnP ile ilgili testlerin çoğunu içerir:

Te.exe Devfund_PnPDTest_WLK_Functional.dll /list

Test Authoring and Execution Framework v10.21 for x64

    Devfund_PnPDTest_WLK_Functional.dll

        PNPDTest

            PNPDTest::PNPDisableAndEnableDevice

            PNPDTest::PNPRemoveAndRestartDevice

            PNPDTest::PNPCancelRemoveDevice

            PNPDTest::PNPCancelStopDevice

            PNPDTest::PNPTryStopAndRestartDevice

            PNPDTest::PNPTryStopDeviceRequestNewResourcesAndRestartDevice

            PNPDTest::PNPTryStopDeviceAndFailRestart

            PNPDTest::PNPSurpriseRemoveAndRestartDevice

            PNPDTest::PNPDIFRemoveAndRescanParentDevice

            PNPDTest::DisableEnhancedDeviceTestingSupport

Bu test ikilisinden tek bir test çalıştırma komutu aşağıdaki gibi görünebilir:

c:\temp\Te.exe Devfund_PnPDTest_WLK_Functional.dll /name:PNPDTest::PNPSurpriseRemoveAndRestartDevice* /p:"DQ=DeviceID='my\device\id'" /RebootStateFile:state.xml