2015-06-05 8 views
5

Ora che abbiamo un'espressione lambda dovrebbe essere possibile avere una libreria di test dell'unità Java che offre una sintassi simile a quella di (diciamo) RSpec. Immagino qualcosa del tipo:Una libreria di test BDD (RSpec-like) per Java

describe("some behavior",() -> { 
    beforeEach(() -> { 
     // do some initialization... 
    }); 
    describe("sub behavior 1",() -> { 
     // some assertions ... 
    }); 
    describe("sub behavior 2",() -> { 
     // some assertions .... 
    }); 
    }); 

C'è qualche biblioteca come quella là fuori?

+0

'Cetriolo-JVM' ... – Reimeus

+0

cetriolo è BDD, ma è un animale molto diverso rispetto RSpec. –

+1

? https://code.google.com/p/spock/? – Jayan

risposta

6

Afaik, Oleaster è una lib che lo fa.

Oleaster consente di scrivere test JUnit come se si scrivessero i test Jasmine .

Un Oleaster JUnit prova si presenta così:

@RunWith(OleasterRunner.class) 
public class OleasterIntroductionTest {{ 
    describe("A suite",() -> { 
     it("contains a spec with an expectation",() -> { 
      expect(40 + 2).toEqual(42); 
     }); 
    }); 
}} 
3

Si prega di considerare spock, è stato ispirato da RSpec e altri.

Ha appena raggiunto la 1.0.

Dalla pagina ...

nel comportamento Driven Development, caratteristiche customer-facing (chiamati storie) sono descritti in una data-quando-poi formato. Spock direttamente supporta questo stile di specifica con il dato: etichetta:

> given: "an empty bank account" // ... 
> 
> when: "the account is credited $10" // ... 
> 
> then: "the account's balance is $10" // ... As noted 
+0

Forse è interessante il fatto che 'spock' usi groovy –