[Gelistirici] Test surecleri

Erkan Tekman tekman at pardus.org.tr
5 Eki 2008 Paz 22:14:33 EEST


Serbülent'in yazdıkları yerine Doruk'un tespit ve önerileri üzerinden gitmek 
daha manalı geldi...

5 Ekim 2008 Pazar 10:46:23 tarihinde Doruk Fisek şunları yazmıştı:
> Test sureci ile ilgili ciddi birkac problem var :
>
> 1) Test sureci duzenli islemiyor. Guncellenen bir paketin ne kadar
> surecek bir surecte "test edilecek" diye askida kalacagi, testin ne
> kadar zamanda tamamlanacagi -- hatta teste ne zaman baslanacagi bile
> belli degil.

Doğru. Ama bu test sürecinin işlemesindeki sıkıntılar kadar güncelleme 
sürecinin tanımlanmaması, ya da yeterince iyi tanımlanmamasından da 
kaynaklanıyor. Yanılmıyorsam test deposuna epeyce bir zaman öncesinde girmiş 
ama ACK almamış pek çok paketimiz mevcut. Oysa test deposu hayli sınırlı bir 
bekleme odası olarak tasarlanmalı. Belki de buradaki testi geçemeyen paket 
depodan çıkarılmalı, devel'e dönmeli ve ancak testi geçememesine neden olan 
sorunlar hallolunca yeniden test deposuna girebilmeli. 

> 2) Gercekten test edilmesi gereken kritik paketler "guvenlik
> guncellemesi" diye test edilmeden depoya giriyor.

Bu test sürecinin bir sıkıntısı, belli bir süre garantisi ile test süreci 
işletemiyoruz henüz. Nedenler muhtelif... Değişmesi gerekli... Ama durum bu.

> 3) Aslinda kirilmasi pek mumkun olmayan, bagimliligi az olan, basit
> uygulamalar "test edilmeden aslaa olmaaaaz" diye depoya cok gec giriyor.

Eğer Pardus belli bir kalite algısına sahip bir dağıtım olacaksa "test 
edilmesine gerek olmayan paketler" gibi bir kategori olmamalı. Bir 
nevi "tahsisli hat"ta hızlı test yapılması düşünülebilir, ama kanımca contrib 
dahil her "resmi" depomuzda bir test süreci (paket sorumlusu haricinde 
yapılacak bir testten söz ettiğim açık sanırsam) tanımlı ve işliyor olmalı. 
2007 ve 2008 depolarımızda şu anda bu süreç Serbülent koordinasyonunda ve 
camia katkısı ile yürüyor. 

> Cozum ne?
>
> 1) Test surecinin "ciddi" yapilmasi. Ornegin her hafta Pazartesi gunu
> test surecinin yeni gelen paketler icin tekrar baslanmasi gerekiyor.
> Boyle bir insan gucumuz yok deniyorsa -- bunun adi konur, sadece belli
> kritik paketlere test sureci uygulanabilir, kalanlar test edilmeden
> depoya alinabilir.

Benim önerim, yeniden, test sürecinin sürekli işlemesi ve testten geçemeyen 
paketlerin test deposundan kaldırılması. Bu şekilde:

1. Doruk'un bahsettiği "kolay test edilebilir" paketler Pazartesi ya da 
Perşembe beklemeden hızla test edilip "ACK/NACK'e hazır" hale gelecektir. 

2. Test deposu ile kararlı depo arasındaki makas gereksiz yere açılmayacak, 
test deposunu kullanan sistemlerde derlenen ya da tanımlanan paketler 
saçmalığı büyük ölçüde ortadan kalkacaktır.

3. Test deposu bir nevi devel olmaktan kurtulacak, test deposunu öntanımlı 
kullanarak test işlemlerine gerçek hayat senaryoları ile katkıda bulunmak 
isteyen (benim gibi) kullanıcıların testleri gerçekten manalı olacaktır.

Test deposundan bazı paketlerin "kaldırılması" işinin pisi açısından sorunlu 
bir tanımlama olduğunun farkındayım. Yaratıcı fikirleri bekliyorum :-)

> Test edilmeden Pardus deposuna hic paket giremez deniyorsa,
> insangucunun yetmedigi kalan paketler contrib deposuna alinmali. En
> azindan adam gibi guncellenirler.

Yukarıda da yazdım, contrib deposunun da bir test süreci olmalı ve işletilmeli 
diye düşünüyorum. Bu süreç "paket sorumlusu test eder, gerisi allah kerim" 
olmamalı kanısındayım. Gerek sürüm depoları ve gerekse contrib için insan 
gücünün yetmemesi durumunda yapmamız gereken bu insan gücünü artırmaya 
çalışmak, UEKAE istihdamı ya da camia katkısı ile.

> Ama bunun adi mutlaka konmali. Su anda "ne guzel de test yapiyoruz" diye
> dusunenler kendilerini kandiriyorlar bence.

Böyle düşünen olduğunu sanmıyorum. En azından UEKAE ekibinde... Gerek sürüm ve 
gerekse projeler için üzerinde en fazla tartışılan ve uğraşılan konulardan 
biri test. Bu konuya kabul edilebilir bir çözüm bulamamış olmamız Pardus'un 
en önemli zayıf yanlarından birisi. Küresel ölçekte rekabet edebilir bir 
dağıtım olacaksak (ki hedefimiz bu, ve bunun mümkün olduğunu da görüyoruz) 
dünya çapında bir test süreci ve takımına sahip olmamız gerekli. Nokta!

Benim kuruşlarım bunlar...

ET



Gelistirici mesaj listesiyle ilgili daha fazla bilgi