Ben bir itin-quickcheck pratik yapıyorum.junit-quickcheck - derinlik sınırını koruyarak rasgele ağaçlar üretiyor
İkili bir ağacın üç çeşit bileşeni için jeneratörler hazırladım (Node
, Leaf
, Empty
).
Rastgele ağaçlar oluşturmak ve üzerlerinde özellikleri doğrulamak istiyorum.
Node
s için jeneratör, belirli olasılıklara dayanarak iki dalı için başka jeneratörler seçer. Bununla birlikte, her çalışma sırasında ağaçların büyümesini durdurmasını istiyorum. Nesil geliştikçe Node
olan bir alt ağaç oluşturma olasılığı düşmelidir.
Ağacın derinliğini GenerationStatus
kullanarak kontrol edebilmeyi umuyordum, ancak tam olarak nasıl göremiyorum.
Başka bir hipotez, generate()
'dan önceki sonraki jeneratörün configure()
yöntemini çağırmaktır, ancak bunu henüz yapmadım.
Tüm bunlara ulaşmak için doğru yol nedir?