Bazı testleri uygulamak için Behave kullanmaya başladım. Varolan bir süreliğimden bazılarını değiştirmek istiyorum (daha fazla özellik testi). Bunların bir kısmı, arka uç hizmetine yapılan belirli çağrıların yapmaları gereken hataları artırdığını kontrol etmek için assertRaises kullanır. Behave'de (veya belki de Gherkin'de) benzer bir şey olması mümkün mü?Python tanıtıcıyı destekleyebilir
Aşağıdaki onaysız servisler arka uç hizmetimi çağırır ve bir konuk olarak oturum açtıktan sonra yönetici görevini gerçekleştiremez (do_admin_task). Bir istisna oluşturmalı.
def test_mycall(self):
service = myservice('guest', 'pwd')
self.assertRaises(NoPermission, service.do_admin_task, some_param)
Özellik dosyamda, senaryonumu nasıl oluşturabilirim? Bunun gibi?
scenario: test guest can't do an admin task
given I log on to my service as guest/pwd
when I try to perform my admin task
then it should fail saying NoPermission
bu zaten adımda bir istisna olacak, bu yüzden bile sonra adıma almazsınız inanıyoruz.
Bunun hakkında düşünebileceğim potansiyel bir yol, bu adımların her ikisini de gerçekleştiren ve istisna işlemlerini gerçekleştiren belirli bir adım oluşturmaktır. Eğer daha düşük seviyedeki çağrılarda hatalarla uğraşmak istersem, bu adımların çoğunu tekrar yazmak zorunda kalırdım, ki bu da tam olarak Behave'a geçerek kaçınmayı umduğum şeydir.
Buna nasıl yaklaşmalıyım?
Teşekkürler, bu açık bir özlü yanıttır. – Baire