RSpec – Objetos Mock com comportamento de Objetos Reais

Posted by Herminio on agosto 25, 2009

Objetos Mock com comportamento de Objetos Reais

RSpec permite que você adicione o comportamento de objetos reais para objetos fictícios, para que possa definir as expectativas de mensagens ocultas e método em qualquer objeto em seu sistema.

Uma utilização comum deste apoio é isolar exemplos do ActiveRecord e, portanto, o banco de dados em exemplos no Ruby on Rails.

    MyModel.should_receive(:find).with(id).and_return(@mock_model_instance)

Controlar o comportamento dos métodos da classe de nível (por exemplo, tendo-lhes que devolver um objeto fictício, em vez de uma instância real da classe modelo) permite-lhe descrever seus controllers e views de forma isolada a partir da lógica de ocorrência de classes do seu model. Isso significa que você pode mudar as regras de validação de um modelo, por exemplo, e de unidade que nos exemplos modelos sem afetar o tratamento e exemplos de exibição.

Isso também ajuda a manter o contexto do seu exemplo completamente em exibição (sem ter de olhar para fixtures/xyz.yml e ter que entender o que está acontecendo).


Se você gostou desse post, me recomende:

Recommend Me

Trackbacks

Use this link to trackback from your own site.

blog comments powered by Disqus