Veb saytında 20 müxtəlif ödəniş üsulunu necə sınaqdan keçirərdiniz?
sobes.tech Süni İntellekt
AI-dan cavab
Test etmək üçün 20 ödəniş üsulunu mən əl ilə və avtomatlaşdırılmış testləri, həmçinin məlumatlar üzərində testləri əhatə edən kompleks yanaşma tətbiq edərdim.
Əsas mərhələlər:
-
Tələblərin anlaşılması. Hər bir ödəniş üsulu üçün bütün spesifikasiyaların öyrənilməsi: valyutalar, məhdudiyyətlər, komissiyalar, emal axınları (redirectlər, iframe və s.), uğurlu və uğursuz ödəniş ssenariləri.
-
Prioritetləşdirmə. Hər bir ödəniş sisteminin istifadə tezliyi, biznes üçün əhəmiyyəti, inteqrasiya çətinliyi və risklər əsasında test prioritetinin müəyyənləşdirilməsi. Əvvəlcə ən vacib və geniş yayılmış üsullar test edilir.
-
Test ssenarilərinin planlaşdırılması. Hər bir ödəniş üsulu üçün test halları yaradılır, bunlar:
- Uğurlu əməliyyatlar (fərqli məbləğlər, valyutalar, kart/hesab növləri).
- Uğursuz əməliyyatlar (yanlış məlumatlar, vəsait çatışmazlığı, bank və ya sistemin rədd etməsi).
- Xəta və xəta mesajlarının işlənməsi.
- Müxtəlif brauzerlərdə və cihazlarda testlər (kross-brauzer, kross-platforma).
- Performans testləri (ödəmə səhifəsinin yükləmə vaxtı, emal sürəti).
- Təhlükəsizlik testləri (məlumatların qorunması, zəifliklər).
- Digər sistemlərlə inteqrasiya testləri (CRM, mühasibatlıq).
- Geri dönüş ssenariləri (əgər tətbiq olunursa).
-
Test məlumatlarının hazırlanması. Hər bir ödəniş üsulu üçün real və test məlumatlarından istifadə. Bəzi sistemlər üçün test kartları və ya hesablar tələb olunur, bunlar ödəniş keçidindən təmin edilir.
-
Əl ilə testlərin həyata keçirilməsi.
- Hər bir ödəniş üçün istifadəçi interfeysi və istifadə rahatlığını test etmək.
- Hər bir ödəniş prosesinin bütün mərhələlərini əl ilə yoxlayaraq qeyri-ənəvi davranış və ya göstərilmə xətalarını aşkar etmək.
- Avtomatlaşdırılması çətin ssenariləri test etmək (məsələn, iki faktorlu autentifikasiya ilə redirectlər).
-
Avtomatlaşdırılmış testlərin hazırlanması.
- Hər bir əsas üsul üçün ən çox rast gəlinən və kritik ssenarilərin avtomatlaşdırılması.
- Ödənişdən sonra sifariş statusunun avtomatlaşdırılması.
- Frameworklardan istifadə (məsələn, Selenium WebDriver, UI üçün Cypress, API üçün Postman/Rest Assured) və proqramlaşdırma dillərindən (Java, Python, JavaScript).
- Testlərin paralel icrası ilə vaxtın azaldılması.
// Avtomatlaşdırılmış ödəniş test nümunəsi (pseudo-kod) @Test public void testSuccessfulPaymentWithCreditCard() { // Sifariş səhifəsinə keçid orderPage.open(); // Məhsulları səbətə əlavə et orderPage.addItems("item1", 2); // Ödəniş səhifəsinə keç orderPage.goToPaymentPage(); // "Kredit kartı" ödəniş metodunu seç paymentPage.selectPaymentMethod("Credit Card"); // Test kart məlumatlarını daxil et paymentPage.enterCardDetails("1111222233334444", "12/25", "123"); // "Ödə" düyməsini kliklə paymentPage.clickPayButton(); // Ödənişin uğurlu olub-olmadığını yoxla (məsələn, URL və ya mesaj vasitəsilə) assertTrue(confirmationPage.isOrderSuccessful()); // Sifariş statusunu admin paneldə yoxla (opsional API ilə) String orderId = confirmationPage.getOrderId(); Order order = api.getOrderDetails(orderId); assertEquals("Paid", order.getStatus()); } -
API vasitəsilə test. Əgər mümkünsə, API vasitəsilə ödəniş sistemləri ilə inteqrasiyanı test etmək, test sorğuları göndərmək, statusu yoxlama və s. Bu, backend loqikası üçün UI testindən daha sürətli və stabil olur.
# API ilə ödəniş yaradılması üçün nümunə test (pseudo-kod requests ilə) import requests def test_create_payment_with_paypal(): url = "https://api.example.com/payments" payload = { "amount": 100, "currency": "USD", "payment_method": "paypal", "order_id": "ORD12345" } headers = {"Authorization": "Bearer <token>"} response = requests.post(url, json=payload, headers=headers) assert response.status_code == 201 # Uğurlu yaradılma yoxlanması data = response.json() assert "payment_id" in data assert data["status"] == "pending" # və ya gözlənilən status # Əlavə status yoxlaması GET sorğusu ilə # status_response = requests.get(f"{url}/{data['payment_id']}", headers=headers) # assert status_response.status_code == 200 # assert status_response.json()["status"] == "successful" # emal edildikdən sonra -
Regressiya testləri. Ödəniş testlərinin regresiya dəstinə daxil edilməsi, yeni versiyalar çıxarıldıqda bütün inteqrasiya olunmuş ödəniş sistemlərinin işləkliyinin müntəzəm yoxlanması.
-
İzləmə. İstehsal mühitində monitorinqin qurulması, ödəniş sistemlərində problemlərin tez aşkarlanması üçün.
-
Hesabat. Tapılan xətaların və test prosesinin aydın sənədləşdirilməsi.
20 ödəniş üsulu üçün test planı nümunəsi:
| Ödəniş üsulu | Əl ilə əhatə | Avtomatlaşdırma əhatəsi | Test ssenariləri | Test məlumatları | Status |
|---|---|---|---|---|---|
| Visa | Tam | Uğur, CVV ilə rədd | 10+ | Test kartlar | İşdədir |
| Mastercard | Tam | Uğur, müddət rədd | 10+ | Test kartlar | İşdədir |
| PayPal | Tam | Uğur | 8+ | Test hesabları | İşdədir |
| Apple Pay | Tam | Məhdudlaşdırılıb | 5+ | Real cihazlar | İşdədir |
| Google Pay | Tam | Məhdudlaşdırılıb | 5+ | Real cihazlar | İşdədir |
| ... (digər 15 üsul) | Qismən / Tam | Kritikliyə görə seçilir | 3-10+ hər biri | Müxtəlif | İşdədir |
Beləliklə, mən ətraflı əl ilə araşdırma ilə ən kritik və təkrarlanan ssenarilərin avtomatlaşdırılmasını birləşdirərdim ki, çox sayda ödəniş metodunu effektiv şəkildə test edə bilim.