Middle
Sürüm veya ortamlar arasında geçiş yaparken testlerle ne oluyor?
sobes.tech yapay zeka
AI'dan gelen yanıt
Değişikliklere uyum sağlamak için testlerin güncellenmesi gerekmektedir.
Ana aktiviteler:
- Değişikliklerin analizi: Yenilikleri, düzeltmeleri ve kaldırılan fonksiyonları anlamak için Release Notes, dokümantasyon ve spesifikasyonların incelenmesi.
- Regresyon testi: Değişmeyen temel fonksiyonların stabilitesini kontrol etmek için mevcut testlerin çalıştırılması.
- Testlerin güncellenmesi:
- Test vakaları: Yeni mantığa uygun hale getirmek için adımlar, beklenen sonuçlar, ön koşulların güncellenmesi. Yeni fonksiyonları kapsamak için yeni test vakaları eklenmesi. Eski olanların kaldırılması.
- Otomatik testler:
- UI yapısı değiştiyse element lokasyonlarının güncellenmesi.
- İş mantığına uygun hale getirmek için testlerin mantığının değiştirilmesi.
- Yeni otomatik testlerin eklenmesi.
- Artık kullanılmayan testlerin arşivlenmesi veya silinmesi.
- Test verileri: Yeni sürüm veya ortam gereksinimlerine uygun yeni veri üretimi veya güncellenmesi.
- Test ortamının yapılandırılması: Yeni sürüm gereksinimlerine göre ortamın (sunucular, veritabanları, üçüncü taraf entegrasyonlar) yapılandırılması.
- Testlerin çalıştırılması: Güncellenmiş test setinin yeni sürüm veya ortamda çalıştırılması.
- Sonuçların analizi: Başarısız olan testlerin incelenmesi, kök nedenin belirlenmesi, hataların kaydedilmesi.
- Raporlama: Test sonuçları, test vakalarının durumu ve hatalar hakkında rapor hazırlanması.
Ortamlar (Dev -> Stage -> Prod) arasında geçişte, ana odak noktası stabilite, performans ve entegrasyonların, mümkün olan en yakın üretim ortamında test edilmesidir. Testler ortamdan bağımsız olmalıdır, mümkün olduğunca.
Versiyonlar (v1.0 -> v1.1) arasında geçişte, odak yeni fonksiyonların test edilmesi, düzeltmelerin ve regresyonların doğrulanmasıdır; böylece değişikliklerin mevcut fonksiyonları bozmadığından emin olunur.
Otomatik test uyarlama örneği:
# Eski kod (v1.0)
# Ürün listesi sayfasına gitmek
driver.find_element(By.CSS_SELECTOR, ".products-link").click()
# Yeni kod (v1.1) - lokasyon değişti ve kategori filtresi eklendi
# Ürün sayfasına git ve filtre uygula
driver.find_element(By.XPATH, "//nav/a[text()='Каталог']").click()
driver.find_element(By.ID, "category-filter").send_keys("Электроника")