Los entornos de prueba rápidos de Solana evitan los ciclos completos de solana-test-validator. LiteSVM 0.6.x ejecuta una SVM en proceso para pruebas de Rust. Mollusk ejecuta instrucciones individuales contra un ELF de programa con fixtures. solana-bankrun (Bankrun) incrusta un entorno similar a un validador para pruebas de integración de TypeScript. Elige según el lenguaje y las necesidades de fidelidad en la semántica de Agave 4.1.1.
// Carga tu programa .so en pruebas de LiteSVM// svm.add_program(program_id, "target/deploy/my_program.so");// Compara los logs de CU con `mollusk` para la optimización de instrucciones clave
Pruebas sin artefacto BPF desplegado - fallos de ID de programa vacío. Solución:anchor build antes de las pruebas; enlaza la ruta en CI.
Desviación de características de mainnet - la disponibilidad de syscall difiere según la versión. Solución: fija LiteSVM 0.6.x con la cadena de herramientas Agave 4.1.1.
Ruta de programa de Bankrun incorrecta en monorepos - .so obsoleto. Solución: copia el artefacto en el script de configuración de pruebas.
Simulación excesiva de cuentas en Mollusk - pasa las pruebas, falla en mainnet. Solución: añade casos de integración de LiteSVM.
Omitir completamente las pruebas del validador - se pierden errores de serialización de RPC. Solución: mantén un conjunto delgado de solana-test-validator.
Versiones de la pila: Esta página fue escrita para Agave 4.1.1, Solana CLI 3.0.10, Anchor 0.32.1, anchor-lang 0.32.1, Rust 1.91.1, @solana/kit 7.0.0, Surfpool 0.12.0, y LiteSVM 0.6.x.
Revisado por Chris St. John·Última actualización: 16 jul 2026