async
/ await
$ npm install --save-dev uvu
¡Consulte
/examples
para obtener una lista de demostraciones funcionales!
// tests/demo.js
import { test } from 'uvu' ;
import * as assert from 'uvu/assert' ;
test ( 'Math.sqrt()' , ( ) => {
assert . is ( Math . sqrt ( 4 ) , 2 ) ;
assert . is ( Math . sqrt ( 144 ) , 12 ) ;
assert . is ( Math . sqrt ( 2 ) , Math . SQRT2 ) ;
} ) ;
test ( 'JSON' , ( ) => {
const input = {
foo : 'hello' ,
bar : 'world'
} ;
const output = JSON . stringify ( input ) ;
assert . snapshot ( output , `{"foo":"hello","bar":"world"}` ) ;
assert . equal ( JSON . parse ( output ) , input , 'matches original' ) ;
} ) ;
test . run ( ) ;
Luego ejecute este archivo de prueba:
# via `uvu` cli, for all `/tests/**` files
$ uvu -r esm tests
# via `node` directly, for file isolation
$ node -r esm tests/demo.js
Nota:
-r esm
es para versiones heredadas de Node.js. Más información
Ver la documentación de la CLI
uvu
El módulo uvu/assert
es completamente opcional.
De hecho, puede utilizar cualquier biblioteca de aserciones, incluido el módulo assert
nativo de Node. Esto funciona porque uvu
se basa en errores arrojados para detectar fallas. Implícitamente, esto también significa que cualquier excepción no detectada y/o rechazo Promise
no controlado resultará en una falla, ¡que es lo que desea!
uvu
Ver la documentación de la API
uvu
La entrada principal desde la que importará los métodos test
o suite
.
uvu/assert
Ver la documentación de la API
uvu/assert
Una colección de métodos de aserción para usar en sus pruebas. Tenga en cuenta que:
a través del directorio
/bench
con Node v10.21.0
A continuación encontrará cada corredor de prueba con dos valores de tiempo:
took ___
es el tiempo total de ejecución del proceso, desde el inicio hasta la finalización(___)
) es el tiempo de ejecución autoinformado, si se conoce stdout
de cada corredor de prueba se imprime en la consola para verificar que se aprueben todas las afirmaciones.
Dicho resultado se excluye a continuación por motivos de brevedad.
~> "ava" took 594ms ( ??? )
~> "jest" took 962ms (356 ms)
~> "mocha" took 209ms ( 4 ms)
~> "tape" took 122ms ( ??? )
~> "uvu" took 72ms ( 1.3ms)
MIT © Lucas Edwards