Sobes.tech
Middle

Bir web sitesinde 20 farklı ödeme seçeneğini nasıl test ederdiniz?

sobes.tech yapay zeka

AI'dan gelen yanıt

Aşağıdaki adımları içeren bir test stratejisi geliştirirdim:

  1. Gereksinim ve dokümantasyon analizi: Her ödeme yöntemi için mevcut tüm materyalleri (entegrasyon spesifikasyonları, kullanıcı senaryoları, API dokümantasyonu) incelerdim.
  2. Test tasarımı: Her ödeme yöntemi için şu kapsamlarda test vakaları oluştururdum:
    • Pozitif senaryolar (başarılı ödeme).
    • Negatif senaryolar (yanlış veriler, yetersiz bakiye, işlem iptali).
    • Sınır durumları (büyük/küçük tutarlar, özel karakterler).
    • Farklı işlem durumlarına sahip senaryolar (beklemede, başarısız, iade edilmiş).
    • Farklı cihazlar ve tarayıcılarda testler.
  3. Test önceliklendirmesi: En sık kullanılan ve kritik olan ödeme yöntemlerini önce test ederdim.
  4. Test verisi hazırlama: Kullanıcı senaryolarını ve sınır durumlarını simüle eden gerçekçi test verileri üretirdim. Test hesapları veya kartlar gerekebilir.
  5. Testlerin yürütülmesi: Manuel ve otomatik testler gerçekleştirirdim.
  6. Test otomasyonu: Sık tekrar eden veya kritik senaryolar için otomatik testler uygularım, örneğin temel ödeme sistemleriyle başarılı ödemeler.
  7. Entegrasyon testleri: Ödeme sistemlerinin web sitesinin backend'iyle etkileşimini ve ödeme sonrası sipariş durumlarının doğruluğunu kontrol ederdim.
  8. Güvenlik testleri: OWASP Top 10'e göre temel kontroller yapardım, özellikle ödeme verilerinin işlenmesi sırasında (Hassas Veri Açığı, Enjeksiyon).
  9. Regresyon testleri: Yeni değişikliklerin mevcut ödeme yöntemlerinin fonksiyonelliğini bozmadığından emin olurdum.
  10. Kayıt ve izleme: Testler sırasında işlem ve hata loglarını izlerdim.
  11. Sonuçların dokümantasyonu: Test sonuçlarını, bulunan hataları ve tekrar adımlarını kaydederdim.

Örnek test vakası yapısı:

Test Case ID Ödeme Yöntemi Açıklama Adımlar Beklenen Sonuç Gerçek Sonuç Durum
PAY-001 Visa Başarılı ödeme 1. Ürünü sepete ek. 2. Ödemeye geç. 3. Visa'yı seç. 4. Kart bilgilerini gir. 5. Ödemeyi onayla. Sipariş başarıyla tamamlandı. Sipariş durumu "Ödendi". Ödeme bildirimi alındı.
PAY-002 Visa Yanlış kart numarasıyla ödeme ... Ödeme hatası. Yanlış veri mesajı.
PAY-003 PayPal Başarılı ödeme ... (PayPal senaryosu) Sipariş başarıyla tamamlandı. Sipariş durumu "Ödendi". Ödeme bildirimi alındı.

Otomatik test örneği (Python ve Selenium WebDriver kullanılarak):

# test_payment.py
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

def test_visa_payment_success():
    driver = webdriver.Chrome()  # veya başka bir tarayıcı
    driver.get("http://siteniz.com/ödeme") # ödeme sayfası URL'si

    # Ürünü sepete ekleme ve ödeme sayfasına geçiş kodu

    # Visa ödeme seçeneğini seç
    visa_option = driver.find_element(By.ID, "visa-ödeme-yöntemi")
    visa_option.click()

    # Kart bilgilerini gir (test verileri kullanın!)
    kart_numarası = driver.find_element(By.ID, "kart_numarası")
    kart_numarası.send_keys("4111111111111111") # Test Visa kart numarası

    # Diğer kart bilgilerini gir (son kullanma tarihi, CVC, isim)

    # Ödeme butonuna tıkla
    odeme_butonu = driver.find_element(By.ID, "odeme_butonu")
    odeme_butonu.click()

    # Başarılı ödeme tamamlanmasını bekle
    WebDriverWait(driver, 10).until(
        EC.url_contains("/sipariş_basarili") # Başarılı sipariş sayfası URL'si
    )

    # Ek kontroller (sipariş durumu, başarı mesajı)

    driver.quit()

# Diğer ödeme yöntemleri için benzer testler ekleyin