"Bu komutu çalıştır ve bu dizinin konsol çıkışında bir yer varsa, aksi takdirde başarısız" gibi basit bir şeye ihtiyacım var. Böyle bir araç var mı?Windows toplu iş dosyaları için birim sınama çerçevesi var mı?
cevap
Farkında olduğumdan değil, başka bir toplu iş komut dosyasına kolayca yazabilirsiniz. Dize bulunmazsa ve dize yoksa sıfırdan% sıfır değerini% 0 olarak sıfırlayacak ve . Bunu IF ERRORLEVEL 1 goto :fail
ile test edebilir ve :fail
etiketinden sonra istediğiniz kodu çalıştırabilirsiniz.
Bu tür dizelerin kompakt değerlendirmesini istiyorsanız, || sözdizimi:
call TestBatchScript.cmd > console_output.txt
findstr /C:"teststring1" console_output.txt || goto :fail
findstr /C:"teststring2" console_output.txt || goto :fail
findstr /C:"teststring3" console_output.txt || goto :fail
findstr /C:"teststring4" console_output.txt || goto :fail
goto :eof
:fail
echo You Suck!
goto :eof
Veya, daha da ileri gidip bir dosyaya ben windows toplu birim test için bir kütüphane oluşturduk
call TestBatchScript.cmd > console_output.txt
set success=1
for /f "tokens=*" %%a in (teststrings.txt) do findstr /C:"%%a" console_output.txt || call :fail %%a
if %success% NEQ 1 echo You Suck!
goto :eof
:fail
echo Didn't find string "%*"
set success=0
goto :eof
dizelerin listesini okuyabilir. Şu anda emekleme döneminde, ama çalışıyor ve ben onu kullanıyorum.
O cmdUnit denir ve bitbucket proje sitesinden indirilebilir: https://bitbucket.org/percipio/cmdunit
Ben filter tip komutlar için aşağıdaki kullanın: toplu dosya foo.cmd
için
oluşturmak aşağıdaki dosyaları:
foo.in.txt
:
hello
foo.expected.txt
:
foo.test.cmd
merhaba dünya:
@echo off
echo Testing foo.cmd ^< foo.in.txt ^> foo.out.txt
call foo.cmd <foo.in.txt> foo.out.txt || exit /b 1
:: fc compares the output and the expected output files:
call fc foo.out.txt foo.expected.txt || exit /b 1
exit /b 0
Sonra da foo.test.cmd
- 1. Birden çok iş parçacığıyla sınama yapabilen .NET birim sınama çerçevesi
- 2. birim sınama dosyaları oluştur
- 3. .NET arabirim uygulamaları için varsayılan birim sınama kitaplığı var mı?
- 4. Birim Sınama Azure İşlevleri ve .csx Dosyaları
- 5. Windows toplu iş dosyası - Alt dizinlerdeki tüm dosyaları birleştir
- 6. Birim sınama - SqlDataReader'ın izlenmesi
- 7. İş kullanıcıları için arabirim içeren Web hizmeti sınama çerçevesi
- 8. C# Birim Test çerçevesi?
- 9. Windows toplu iş dosyasındaki dizeler nasıl birleştirilir?
- 10. Hangi C birimi sınama çerçevesi?
- 11. .bak uzantılı dosyaları silmek için toplu iş dosyası
- 12. Vala için birim test çerçevesi
- 13. Windows toplu iş dosyasının içine VBScript'i gömün
- 14. Windows FTP toplu iş dosyası, mget komutu
- 15. Dosyaları başka bir klasöre taşımak için toplu iş dosyası
- 16. Küçük bir sınama çerçevesi için derleme zamanında
- 17. Döngüs için toplu iş akışı
- 18. SAS'ta Birim Sınama Çerçeveleri: FUTS ve SASUnit
- 19. C için bir wxWidgets çerçevesi var mı?
- 20. Virüs tarafından gizlenen dosyaları göstermek için Windows toplu iş komut dosyası
- 21. Windows toplu iş kümesinde bir FOR komutunu yeniden yönlendirmek için
- 22. Windows Installers'ı sınama
- 23. Bir giriş dosyasıyla birim sınama
- 24. C# birim sınama kullanarak sınamalar
- 25. Y bir Windows toplu iş dosyasından Y alt klasörlerinden X türünün N dosyaları nasıl silinir?
- 26. Birim Sınama Önyükleme Modal Yönlendirmesi
- 27. C# birim sınama, saklı yordam yordamı
- 28. Bir toplu iş dosyasını PowerShell
- 29. Windows toplu dosya tarayıcısı
- 30. Windows toplu iş dosyasındaki 'call'ed rutin' içinden nasıl sonlanır?
See çalıştırmak http://stackoverflow.com/questions/940497/how-to-do-tdd- ve birimi test-içinde-powershell – TrueWill