Kayıtlar

testing etiketine sahip yayınlar gösteriliyor

Testing #2: Testleri etiketleme ve fixture kullanimi

Resim
Scala-test bizlere testleri taglama ve daha sonra bu taglara gore filtreleyerek calistirma imkani sunuyor. Ornek olarak bazi testler yavas seklinde etiketlenebilir ve gerektigi zamanlarda bu testler calistirilmayabilir. Testi gozardi etme Default olarak tanimlanmis bir tag ise ignore . Bunu direk kullanmaya baslayabilirsiniz ve o test gozardi edilecektir.  ignore should "soyledir boyledir" in {     // baya bi testler ama ignore edilecek } sbt test ile calistirdigimizda bu testin yesil yerine sari olarak gectigini ve yaninda IGNORED yazdigini gorecegiz.  Kendi tagimizi uretiyoruz Tag tanimlamak icin Tag traitini extend eden bir object yaratmamiz yeterli. Daha sonra bunu teste eklerken her style trait (yani kullandigimiz test stili) kendi yontemini sunar. import org.scalatest.Tag object DatabaseTesti extends Tag("com.mycompany.tags.DbTest") Daha sonra ornegin FlatSpec'te bu tagi bir teste eklemek istersek: "Acayip database" should "degisik olaylar

Testing #1: Test stili ve assert

Resim
Bu dizide genel olarak scala ve spark projelerini nasil test ederiz buna deginecegiz.  Scala Test Gunumuzde scala projelerinde defacto testing kutuphanesi olarak  scala-test kutuphensini  kullaniliyor. Birkac noktaya burada deginelim: - Scala-test birden fazla testing stiline izin vermektedir. Ancak bir proje icerisinde bunlari karisik olarak kullanmak onerilmez. Proje baslangicinda secilen bir stil tum unit testlerde uygulanmasi daha verimli olur.  - Farkli test kategorileri icin (ornek olarak unit testing ve acceptance testing) farkli test stilleri kullanilabilir. Hatta bu sayede developer teste baktigi zaman bunun hangi tip test oldugunu daha iyi anlayabilir.  - Assertion, matcher, mixin ve trait gibi mekanikler tum test stillerinde ayni sekilde calismaktadir. Yani testin icini degistirmeye gerek yoktur.  - Scala-test'in dokumantasyonda onerdigi yontem unit ve intergration testing icin FlatSpec ve de acceptance test icin ise FeatureSpec seklinde. Bu testing stillerine bir goz at