Rails uygulamasında, uygulamamın çeşitli sayfalarını test eden bir dizi salatalık kabul testine sahibim. Salatalık ile, @javascript
ile belirli bir sınama (senaryo) etiketleme, senaryosunun JavaScript'i desteklemeyen daha basit bir sürücü yerine bir JavaScript sürücüsü kullanarak çalışmasına neden olur.Capybara ile, şu anda kullanılan sürücünün JavaScript'i destekleyip desteklemediğini nasıl anlarım?
Testlerimin, şu anda JavaScript'i destekleyen bir sürücüyle mi çalıştırılmadığını mı yoksa bir tanesinin bulunup bulunmadığını belirlemek için kolay bir yolu var mı? Bunu sağlamak istiyorum, böylece JavaScript'im etkin olarak çalıştırılırsa testlerimin biraz farklı davranmasını sağlayabilirim. Bir senaryo değerinin kontrol ederek adım tanımlarında etiketli olması halinde
Before('@javascript') do
@javascript = true
end
Sonra test edebilirsiniz: Bunu yapmanın en kolay yolu, bir Before
kanca içinde bir örnek değişkeni ayarlamaktır gibi
İyi fikir - kabul edilen cevap bu olmalı ... –
Tamam o zaman. Bu sorunun cevabını hem bu soruya hem de bu cevabı gönderen kişiden beri sıralamaktan çekiniyordum. Ama sen de bu cevabı beğenmiş gibisin, devam edip kabul ediyorum. – Ajedi32
javascript_driver öğesinin poltergeist olması dışında, ancak sizin özel örneğiniz aslında selenyum kullanıyorsa – steve