Framework JBee Behavior-driven development Lançado

18 respostas
euprogramador

Lançado o novo framework JBee para desenvolvimento orientado a comportamento, entre as features estão:

[list]Facilidade de desenvolvimento[/list]
[list]Facilidade na adaptação para a internacionalização[/list]
[list]Prover a documentação executável[/list]

Acesse o site do projeto em:

http://sites.google.com/site/jbeetest/

18 Respostas

Felagund

Vou poder testar interfaces tbm com esse cara?

euprogramador

Geralmente quem utiliza BDD desenvolve primeiro a interface, você pode fazer uso do JBee e do Selenium para esta tarefa, onde você teria o JBee desenvolvendo a “história” ou cenário e o selenium fazendo a parte do teste de interface.

peerless

Por quê eu usaria ele ao invés do JBehave, que já está consolidado ?

Felagund

Estou falando de interfaces desktops não web :slight_smile:

euprogramador

Estou falando de interfaces desktops não web :)

Sim claro, se você for ver ele é um teste do junit, portanto pode sim testar a interface do usuário, basta escrever um teste correto para isso.

euprogramador

Antes de desenvolver o framework, testei o Jbehave, mas o mesmo me deixou muito achateado, visto que muitas coisas ne achei dificil, se você ver o código do framework, o mesmo é muito facil de ser adaptado.

Estou aberto a sugestões e melhorias.

peerless

Antes de desenvolver o framework, testei o Jbehave, mas o mesmo me deixou muito achateado, visto que muitas coisas ne achei dificil, se você ver o código do framework, o mesmo é muito facil de ser adaptado.

Estou aberto a sugestões e melhorias.

Apenas por curiosidade, o que tu achou difícil no JBehave?

euprogramador

Não gosto do fato de ter que estender classes do behave para criar os testes, achei também complicado dar suporte a outros idiomas, no JBee este suporte é fácil e feito atravês de anotações, facilitando muito.

Alem disso o JBee é um projeto brasileiro.

Teste ele, conforme dito, estou aberto a sugestões e melhorias.

lelodois

Não gosto do fato de ter que estender classes do behave para criar os testes, achei também complicado dar suporte a outros idiomas, no JBee este suporte é fácil e feito atravês de anotações, facilitando muito.

Alem disso o JBee é um projeto brasileiro.

Teste ele, conforme dito, estou aberto a sugestões e melhorias.

Se é um projeto brasileiro porque está tudo em inglês?

Felagund

Não gosto do fato de ter que estender classes do behave para criar os testes, achei também complicado dar suporte a outros idiomas, no JBee este suporte é fácil e feito atravês de anotações, facilitando muito.

Alem disso o JBee é um projeto brasileiro.

Teste ele, conforme dito, estou aberto a sugestões e melhorias.

Se é um projeto brasileiro porque está tudo em inglês?

Para chegar em mercados maiores que o nosso, muito simples isso.

euprogramador

Não gosto do fato de ter que estender classes do behave para criar os testes, achei também complicado dar suporte a outros idiomas, no JBee este suporte é fácil e feito atravês de anotações, facilitando muito.

Alem disso o JBee é um projeto brasileiro.

Teste ele, conforme dito, estou aberto a sugestões e melhorias.

Se é um projeto brasileiro porque está tudo em inglês?

Para chegar em mercados maiores que o nosso, muito simples isso.

É exatamente por isso que está em inglês, mas ele é tão simples e tem suporte para histórias em português.

lelodois

Não gosto do fato de ter que estender classes do behave para criar os testes, achei também complicado dar suporte a outros idiomas, no JBee este suporte é fácil e feito atravês de anotações, facilitando muito.

Alem disso o JBee é um projeto brasileiro.

Teste ele, conforme dito, estou aberto a sugestões e melhorias.

Se é um projeto brasileiro porque está tudo em inglês?

Para chegar em mercados maiores que o nosso, muito simples isso.

Está certo, de qualquer forma irei testar, parabéns a equipe pela iniciativa!

diegosantiviago

A galera gosta de encher o saco hein?

Parabéns pela iniciativa!

Ahhh se o pessoal parasse um pouco de reclamar por besteiras e ajudasse mais …

T

Muito bom o seu framework! Gostei muito.
Ja utilizo o JBehave em projetos pessoais e na minha empresa trabalhamos com TDD e estou querendo introduzir BDD na equipe.
Embora possa ser um processo árduo vejo que para a gerencia da empresa seria melhor ter testes onde eles pudessem entender e ver melhor o que se está testando.

Esse eu projeto conseguiu ser ainda mais simples do que o jBehave. Embora ainda não o tenha testado em casos reais.

Gostei da iniciativa. Parabéns

M
@RunWith(JBeeRunner.class)
@History(value="registryClient.history")
public class TestRegistryClient {

    @Step("Given I'm on-screen list of clients")
    public void enterScreenListForClients() {
        //code your test
    }

    @Step("When you fill in the name of  #{name} and save")
    public void fillNameAndSave(String name) {
        //note is possible passing parameters
        Assert.assertEquals("Carlos Alberto", name);
    }

    @Step("Then the system displays the new client in the client list")
    public void testIsDiplayClientInList() {
        //code your test
    }

    @Step("When you fill the information without the name and try to save")
    public void fillInformationNoNameAndTrySave() {
        //code your test
    }

    @Step(Then the system displays an error message")
    public void verifyIsDiplayMessage(){
        //code your test
    }
 
    @Step("When I select the client and choose delete")
    public void selectClientAndDelete(){
        //code your test
    }
   
    @Step("Then the client is deleted")
    public void testClientIsDeleted(){
        //code your test
    }

}

Voce esperam que um não-programador entenda isso?

euprogramador

O desenvolvimento é guiado pela história, o teste do Junit é apenas para ligar a história com o teste, o foco do framework é a simplicidade, é mas simples adicionar uma anotação e criar o arquivo de testes do que criar uma classe que extende scenario para criar os passos e posteriormente configurar de acordo com a história, o teste é uma classe comum, e você não adiciona nenhum comportado indesejado, que é o problema que temos com a herança.

O que sugeriria para melhorar o framework?

Norxs

E a integração com o Maven? … seria só adicionar a dependência dele que já saira funcionando ou teria que adiconar algum plugin?

peerless
mochuara:
@RunWith(JBeeRunner.class)
@History(value="registryClient.history")
public class TestRegistryClient {

    @Step("Given I'm on-screen list of clients")
    public void enterScreenListForClients() {
        //code your test
    }

    @Step("When you fill in the name of  #{name} and save")
    public void fillNameAndSave(String name) {
        //note is possible passing parameters
        Assert.assertEquals("Carlos Alberto", name);
    }

    @Step("Then the system displays the new client in the client list")
    public void testIsDiplayClientInList() {
        //code your test
    }

    @Step("When you fill the information without the name and try to save")
    public void fillInformationNoNameAndTrySave() {
        //code your test
    }

    @Step(Then the system displays an error message")
    public void verifyIsDiplayMessage(){
        //code your test
    }
 
    @Step("When I select the client and choose delete")
    public void selectClientAndDelete(){
        //code your test
    }
   
    @Step("Then the client is deleted")
    public void testClientIsDeleted(){
        //code your test
    }

}

Voce esperam que um não-programador entenda isso?

Teoricamente o "não programador" não deve e nem precisa entender isso. Ele deveria entender apenas o arquivo que contém a história, neste caso o "hegistryClient.history"

Em tempo, não estou defendendo o framework, pois acredito que antes de criar um framework, poderia ter pensando em contribuir com um já existente, que trata exatamente do mesmo assunto e -quase- da mesma forma (porem, um pouco mais avançado e com mais funcionalidades) que é o JBehave.

[]s

Criado 14 de janeiro de 2010
Ultima resposta 16 de jan. de 2010
Respostas 18
Participantes 8