Eu sou um fã de recursos desde que voltei da história do Cucumber e do Rspec e entrei nos testes padrão do Rails. Tenho usado cada vez mais recursos desde então.
Coisas como FactoryGirl são muito legais, mas o gerenciamento de luminárias no início de cada caso de teste ou suíte de teste realmente me chateado. A simplicidade de apenas apresentar de 1 a 5 recursos padrão por modelo para diferentes estados ou diferentes tipos de validação é realmente muito mais simples.
Outra vantagem. As luminárias são ótimas para colaboração.
Não apenas todos podem ver claramente a aparência de um determinado aparelho ao executar ou consertar testes corrompidos. A melhor coisa sobre os acessórios até agora foi este comando:
rake db:fixtures:load
Isso carregará todos os acessórios em meu banco de dados de desenvolvimento instantaneamente. Você obtém dados de teste compartilhados gratuitamente!
Você não precisa manter um determinado dump SQL em seu repo ou servidor de equipe para colaborar em dados reais ao vivo. Você pode simplesmente dizer a alguém: ei, o acessório “product_abcd” não parece tão bom na página de detalhes do produto fulano de tal. Corrija isso!
Os designers podem facilmente modificar ou adicionar um acessório que os desenvolvedores podem carregar em suas páginas ou vice-versa.
É muito mais fácil comunicar que os usuários do fixture (: john) não funcionam do que FactoryGirl.create algum estado com um monte de linhas de código Ruby por trás dele.
Os jogos são um paraíso de colaboração para todas as equipes.