Biasanya Python debuggers / IDEs menganggap skrip Python berjalan dalam proses yang sama seperti itu sehingga debugging skrip yang berjalan di ArcMap.exe benar - Anda perlu mendapatkan cukup lingkungan skrip GP yang di-boot dalam skrip Python yang Anda bisa untuk debug dengan.
Metode yang bekerja sangat baik bagi saya selama beberapa tahun terakhir adalah menulis skrip sederhana yang hanya memanggil alat dan menggunakannya sebagai skrip utama saya di Python IDE (Wing atau Pythonwin) dan mengatur breakpoints saya di .py tool .py file juga terbuka di sesi IDE yang sama.
Jadi pada dasarnya saya melakukan ini:
- Dapatkan set input yang tidak berfungsi di alat skrip saya
- Buka file .py sederhana di folder yang sama dengan .tbx yang memanggil alat
- Buka skrip pemanggil dan file skrip alat .py di IDE
- Atur breakpoint dalam file alat skrip
- Jalankan skrip penelepon
Dan skrip penelepon saya biasanya cukup sederhana:
import os
import arcpy
arcpy.ImportToolbox(os.path.join(os.path.dirname(__file__), 'my.tbx'))
arcpy.MyToolThatIsFailing_myalias("inputs", "that", "don't" "work")
Saya sudah mencoba winpdb untuk men-debug skrip yang berjalan di ArcMap tetapi saya tidak pernah beruntung. Jika Anda ingin mencobanya dan Anda membuatnya bekerja dengan baik, silakan bagikan temuan Anda.