Bir .cmd dosyası aracılığıyla bir test paketiyle yaptığım bir programı otomatikleştirmeye çalışıyorum..cmd ve .bat dosya dönüş kodunu bir hata iletisine dönüştürüyor
Geri dönüş kodunun çalıştırdığı programı% errorlevel% aracılığıyla alabilirim.
Programımın her hata türü için belirli dönüş kodları vardır.
Örneğin:
1 - vasıta filanca bir nedenden
2 için başarısız oldu - vasıta başka bir nedenle
için başarısız ...
BAŞARISIZ echo: Test durumda başarısız Hata seviyesi:% errorlevel% >> TestSuite1Log.txt
Bunun yerine bir şekilde söylemek istiyorum:
.210BAŞARISIZ echo: Test durumda, hata nedeni başarısız oldu: lookupError (% errorlevel%) >> TestSuite1Log.txt
bu bir .bat dosyası ile mümkün mü? Ya da python/perl gibi bir betik diline geçmek zorunda mıyım?
Bunun basitliğinden hoşlanıyorum, cevabım, DOS günlerinde daha uzun süre öncesine dayanıyor. ENABLEDELAYEDEXPANSION seçeneği ne zaman eklendi? –
Oh, dikkat edilecek bir şey, yukarıda gösterilen "setlocal" komutu, ERRORLEVEL'in üzerine yazacaktır. Hata kümesini ayarlayan komuttan önce setlocal'ın çağrıldığından emin olun (yığın dosyası üzerinde bunun üstesinden gelir). –
Maalesef eklendiğinde hiçbir fikrim yok. Bu platformlarda çalışan komut dosyaları yazdığım gibi XP ve 2003 Server'da mevcut olduğunu biliyorum. Windows'un hangi önceki sürümlerinde çalıştığından emin değil. –