Cosa viene utilizzato per BDD e TDD con node.js?BDD e TDD per node.js?
Sono abituato a usare Cucumber + RSpec. Qual è una buona combinazione per node.js?
grazie
Cosa viene utilizzato per BDD e TDD con node.js?BDD e TDD per node.js?
Sono abituato a usare Cucumber + RSpec. Qual è una buona combinazione per node.js?
grazie
Aggiornamento
Mocha ottiene il mio voto ora!
Si potrebbe avere uno sguardo alla testing modules section dalla pagina moduli Node.JS. Ad esempio Vows è un framework BDD piuttosto popolare.
Vows è un framework di sviluppo guidato dal comportamento per Node.js.
C'è il progetto "Vows" per BDD sul nodo http://vowsjs.org, sembra molto carino. È un po 'diverso da RSpec/Cucumber, ma è piuttosto divertente
Se sei abituato a rspec, Jasmine è molto carino. Non l'ho usato su Node.js, ma l'ho usato per testare un'app backbone. La sintassi è molto simile a rspec. Tratto dal sito di cui sopra:
describe("Jasmine", function() {
it("makes testing JavaScript awesome!", function() {
expect(yourCode).toBeLotsBetter();
});
});
E 'elencato nel link fornito da Alfred sopra, ma dal momento che folks Voti elencati come esempio, ho pensato di dare Jasmine un urto, soprattutto perché è sintatticamente simile a RSpec;)
Questo sarebbe jasmine-node https://github.com/ mhevery/jasmine-node –
Forse un po 'più tardi, ma quello che stai cercando è Kyuri: https://github.com/nodejitsu/kyuri
"Kyuri è un'implementazione cetriolo node.js con alcune parole chiave in più asincroni supporta 160 + lingue e le esportazioni verso VowsJS. mozzi "
Inoltre, nodejitsu sembra aver creato un'app Web per la gestione di un progetto con le specifiche della funzione Kyuri in modo collaborativo, si chiama "prenup", vorrei dargli un'occhiata.
Inoltre mocha-cakes, il mio tentativo per la sintassi Cetriolo su moka.
Grazie per aver menzionato le torte di moka! Molto bello :) –
Perché * dovrei * Uso la sintassi cetriolo con moka _now_? – hellboy
Check out Buster.JS. Creato da Christian Johansen, che ha letteralmente scritto the book on javascript testing.
Buster supporta sia TDD che BDD. Esegue i test del browser con l'automazione del browser (si pensi a JsTestDriver), il test della pagina HTML statico in stile QUnit, il test nei browser senza testa (PhantomJS, jsdom) e altro.
pacchetto un (BDD e scherno) https://npmjs.org/package/a
sintassi molto compatto, contesto separato da atti, atti chainable. Correttore di linea Easy Cmd che ricerca in modo ricorsivo.
Si potrebbe anche provare yadda.Si collega ad altre librerie di test incluso mocha, gelsomino, casper &, ma consente anche di scrivere file di funzioni appropriati invece di limitarsi ad annotare i test in loco. Un test tipico potrebbe sembrare ...
var Yadda = require('yadda');
Yadda.plugins.mocha();
feature('./features/bottles.feature', function(feature) {
var library = require('./bottles-library');
var yadda = new Yadda.Yadda(library);
scenarios(feature.scenarios, function(scenario, done) {
yadda.yadda(scenario.steps, done);
});
});
e il file di funzione ...
Feature: Mocha Asynchronous Example
Scenario: A bottle falls from the wall
Given 100 green bottles are standing on the wall
when 1 green bottle accidentally falls
then there are 99 green bottles standing on the wall
E uscita ...
Mocha Asynchronous Example
✓ A bottle falls from the wall
1 passing (12ms)
Stavo attraversando lo stesso problema il mese scorso.
Per BDD:
Anche se Mocha si offrono stile BDD dai loro descrivere e IT dichiarazioni.
Per gli stili come il cetriolo, si può provare:
Hanno tutti i loro stili. Mi dispiace di non poter fornire frammenti di lavoro adesso, fammi sapere @Donald quale scegli. Vorrei sapere la tua opinione.
Anch'io stavo cercando una buona implementazione di Gherkin, ho trovato mocha-cakes/mocha-cakes-2 che erano belle ma non molto complete. Così costruisco il mio con mocha come base, che ha la parità con la lingua del cetriolino, inclusi i contorni degli scenari. Rende anche facile riferimento ai dati nel test. È diverso da cucumber.js come tutti i file non in linea non separati. Potete trovare il progetto qui:
'interfaccia bdd' di Mocha diventa piuttosto vicino al RSpec, ma manca ancora il pigro' let'/'sottigliezze subject'. Ho creato un'interfaccia separata per la moka chiamata 'lazy-bdd' che ha queste aggiunte: https://www.npmjs.com/package/mocha-lazy-bdd – ghempton