FrameworkDemoiselle.gov.brCommunity Documentation

Demoiselle Behave

Behavior Driven Development (BDD) é uma técnica desenvolvida por Dan North, em 2003, com o objetivo de facilitar a colaboração entre desenvolvedores, setores de qualidade e o cliente, em um projeto de software. Parte do princípio de que especificando histórias de usuários, em um formato adequado, elas poderiam ser utilizadas como requisito e como artefato de entrada para testes automatizados. Ela faz uso de uma linguagem ubíqua, a qual permite que os testes de aceitação sejam escritos em linguagem mais próxima da de negócio.

Os testes descritos são interpretados por ferramentas especializadas, que exercitam o código do sistema, para demonstrar se o comportamento esperado foi alcançado. As práticas do BDD incluem:

  1. Envolver os stakeholders do projeto (Wikipedia)

  2. Usar derivação por exemplos para descrever o comportamento de uma aplicação ou de unidades de código

  3. Automatizar os exemplos para prover feedback rápido e testes de regressão;

  4. Usar mocks para auxiliar na colaboração entre módulos e códigos que ainda não foram escritos

O Demoisele-Behave, comumente chamado de dbehave, é um framework que permite aos usuários automatizar testes utilizando recursos de BDD.

A aplicação apresenta quatro módulos principais: Core, Parser, Runner e Integration. O Core é responsável pelas principais interfaces do framework, sendo a classe Controller responsável pela orquestração das informações entre os outros 3 módulos.

Arquitetura da ferramenta Demoiselle-Behave.

O Parser é responsável pela abstração do componente que transformará a história em código Java, para enviar ao Runner por meio de sentenças padrões ou específicas de cada projeto.

Modelo de Funcionamento do Parser.

O Runner é responsável pela abstração do componente que fará as manipulações de tela, como o Selenium ou até mesmo diretamente o JUnit. O módulo Integration é responsável pela abstração do componente que irá fazer as integrações entre a solução e as ferramentas externas da empresa como o ALM (RQM). O framework faz com que histórias escritas em TXT sejam enviadas ao módulo Parser e, posteriormente, para o Runner, responsável por interagir com um navegador Web ou uma tela Desktop, utilizando o framework Selenium ou Fest, respectivamente.

Funcionamento do Demoiselle-Behave

A ferramenta deve permitir que projetistas de testes escrevam histórias que possam ser lidas e acionar scripts de testes automatizados, criados por desenvolvedores de teste.

Modelo de Uso do Demoiselle-Behave