Alat analisis untuk python yang mengaburkan garis antara sistem pengujian dan jenis.
Berita terbaru: Alat pengujian berbasis properti paling populer di Python, hipotesis, sekarang mendukung Running Crosshair sebagai backend opsional!
Jika Anda memiliki fungsi dengan anotasi tipe dan menambahkan kontrak dalam sintaks yang didukung, Crosshair akan berusaha menemukan contoh tandingan untuk Anda:

Crosshair bekerja dengan berulang kali memanggil fungsi Anda dengan input simbolik. Ini menggunakan solver SMT (semacam pepatah teorema) untuk menjelajahi jalur eksekusi yang layak dan menemukan contoh tandingan untuk Anda. Ini bukan ide baru; Pendekatan Python pertama kali dijelaskan dalam makalah ini. Namun, sepengetahuan saya, Crosshair adalah implementasi yang paling lengkap: dapat menggunakan penalaran simbolis untuk jenis bawaan, kelas yang ditentukan pengguna, dan banyak perpustakaan standar.
Coba Crosshair sekarang, di browser Anda, di crosshair-web.org!
Crosshair memiliki integrasi IDE untuk VS Code, Pycharm, dan banyak lagi.
Akhirnya, Crosshair dapat melakukan lebih dari sekadar memeriksa kontrak. Ini juga dapat menghasilkan tes unit dan menemukan perbedaan perilaku antar fungsi.
Ingin membantu? Daftar untuk pembaruan email atau RSS. Bintang ️ Repositori. Ada cara lain untuk membantu juga.