Sono nuovo nel mondo delle rotaie e nello sviluppo di test driven. Per TDD, sto usando RSpec e Capybara. Attualmente, sto lavorando su un tutorial per imparare di più su Rails e l'autore sta usando sintassi seguenti:TDD con Capybara (Rails); differenza tra page.should e expect (page) .to?
page.should have_title('All users')
expect(page).to have_selector('li', text: user.name)
Poiché sembra che entrambi sono intercambiabili Mi chiedo quando usare quale la sintassi? Perché, per il caso descritto sopra, potrei anche scrivere:
page.should have_title('All users')
page.should have_selector('li', text: user.name)
Che sostanzialmente fa lo stesso, giusto?
Inoltre, quando è necessario utilizzare "specificare" anziché "esso"?
it { should have_link('Sign out', href: signout_path) }
specify { expect(user.reload.name).to eq new_name }
In questo caso, potrei anche scrivere:
it { should have_link('Sign out', href: signout_path) }
it { expect(user.reload.name).to eq new_name }
Credo che la decisione di cui uno da utilizzare si basa su ciò che voglio esprimere. Forse, puoi aiutarmi qui ?!
Grazie!
Grazie per la tua risposta! Credo di essermi abituato a tutta la cosa tdd e anche alla sintassi per avere un'idea di quale alias usare. btw: la "--format documentation" è molto carina. – milchschaum