Esiste una versione di quickcheck che funzioni per Javascript e che sia ben gestita? Ne ho trovati diversi come check.js e claire, ma nessuno di essi sembra supportare il restringimento dei casi di test falliti, che mi ha sempre colpito come la parte più utile dell'intero problema.QuickCheck per Javascript
risposta
Sono il creatore di jsverify. Cercherò costantemente di migliorarlo, segnalazioni di bug e richieste di funzionalità sono benvenute.
Ci sono anche un elenco di altre librerie di test generativi javascript in un file readme. Finora non ho trovato nessuna altra buona alternativa al jsverify.
Ho scritto quick_check.js, che ha una bella libreria di generatori. Il restringimento non c'è ancora, ma è pianificato.
Sembra che ci sia una carenza di buoni strumenti di test di tipo quickcheck in javascript. Tuttavia, devono essere meglio supportati nelle lingue digitate, e in effetti puoi scrivere i tuoi test in una di quelle lingue, se lo desideri.
per evitare di trattare con interoperabilità runtime, io consiglierei di andare con un linguaggio che viene compilato in JS e gira su node.js (ad es: Purescript with purescript-quickcheck), o di un linguaggio basato su Java utilizzando il motore di Nashorn fornito in Java 8, ad esempio ScalaCheck. Potresti anche usare ghcjs e il sapore originale della libreria quickcheck!
In questi giorni sto usando elm, poiché il mio interesse per JavaScript è al 100% circa nelle operazioni del browser. Per il codice backend utilizzo Erlang –
Stavo per includere Elm e https://github.com/TheSeamau5/QuickCheck nella mia risposta, ma PureScript si integra meglio con javascript (almeno fino a Elm 0.16 ..) – jazmit
- 1. Quickcheck per test non booleani
- 2. QuickCheck 2 elaborazione batch
- 3. proprietà condizionale QuickCheck
- 4. Haskell Cabal QuickCheck Integration
- 5. verboseCheck in QuickCheck 2?
- 6. Utilizzo di quickCheck
- 7. Novità di QuickCheck 2?
- 8. Haskell QuickCheck minimo contatore esempio
- 9. QuickCheck: come combinare due generatori?
- 10. Utilizzo di QuickCheck per testare condizioni di errore intenzionali
- 11. Trova il valore che non è riuscito per quickcheck
- 12. Haskell - Test Parsec con l'aiuto di QuickCheck
- 13. Come utilizzare "oneof" in quickCheck (Haskell)
- 14. Utilizzare i test quickCheck con Cabal?
- 15. QuickCheck Gen non è una monade
- 16. Test delle azioni IO con Monadic QuickCheck
- 17. Haskell: Come testare un FSM (reattivo) con quickcheck?
- 18. Test delle proprietà di QuickCheck contro più tipi?
- 19. Come posso evitare che QuickCheck rilevi tutte le eccezioni?
- 20. Come si ottiene una riduzione (piccola) buona di QuickCheck?
- 21. Come utilizzare modificatori con QuickCheck (positivo nel mio caso)
- 22. Come posso testare una funzione di ordine superiore usando QuickCheck?
- 23. Come posso utilizzare l'input multi-linea con QuickCheck in doctest?
- 24. Come dire a QuickCheck di generare solo indici di lista validi per un parametro?
- 25. QuickCheck: Come utilizzare checker esaustività per prevenire costruttori dimenticate di tipo somma
- 26. Errore di clang durante l'installazione di QuickCheck per GHC 7.8.3 su OS X Yosemite 10.10 (14A389)
- 27. UML per javascript?
- 28. JavaScript Raggruppa per Array
- 29. Motori 2D per Javascript
- 30. verificare) domanda per javascript
Ehi, in jsverify dice "Scrivi proprietà sulla tua funzione che dovrebbe essere valida per tutti gli input". In che modo testate le funzioni con le decisioni if / else? Cosa succede se per esempio voglio testare che quando una stringa contiene "pippo", che la funzione fa qualcosa? –