Sobes.tech
Middle

Веб-сайтта 20 ар түрдүү төлөм варианттарын кантип сынайсыз?

sobes.tech AI

AIден жооп

Сиз тесттик стратегияны иштеп чыгасыз, ал төмөнкү кадамдарды камтыйт:

  1. Талаптар жана документацияны талдоо: Ар бир төлөм ыкмасы үчүн жеткиликтүү материалдарды изилдейсиз (интеграциялык спецификациялар, колдонуучу сценарийлери, API документациясы).
  2. Тест дизайны: Ар бир төлөм ыкмасы үчүн тест учурларын түзөсүз, алар төмөнкүлөрдү камтыйт:
    • Позитивдүү сценарийлер ( ийгиликтүү төлөм ).
    • Негативдүү сценарийлер (жараксыз маалыматтар, каражаттын жетишсиздиги, транзакцияны жокко чыгаруу).
    • Чекене учурлар (жогорку/төмөн суммалар, атайын белгилер).
    • Төрттүрдүү транзакция статусу менен сценарийлер (күтүүдө, ката, кайтарылган).
    • Ар кандай түзмөктөрдө жана браузерлерде тестирлөө.
  3. Тесттерди приоритизациялоо: Алгач эң көп колдонулган жана критикалык маанидеги төлөм ыкмаларын сынайсыз.
  4. Тест маалыматтарын даярдоо: Ар кандай колдонуучу сценарийлерин жана чекене учурларды имитация кылган реалистик тест маалыматтарын түзөсүз. Мүмкүн, төлөм системаларында тест аккаунттары же тест карталары керек болот.
  5. Тесттерди аткаруу: Кол менен жана автоматташтырылган тесттерди жүргүзөсүз.
  6. Автоматташтыруу: Көп колдонулган жана маанилүү сценарийлер үчүн автоматташтырылган тесттерди ишке ашырасыз, мисалы, негизги төлөм системалары менен ийгиликтүү төлөмдөр.
  7. Интеграциялык тестирлөө: Төлөм системалары менен веб-сайттын арткы бөлүмүнүн өз ара аракеттенүүсүн жана төлөмдөн кийин заказдардын статусун текшересиз.
  8. Коопсуздук тестирлөө: OWASP Top 10 боюнча негизги текшерүүлөрдү жүргүзөсүз, өзгөчө төлөм маалыматтарын иштетүүдө (Sensitive Data Exposure, Injection).
  9. Регрессиялык тестирлөө: Жаңы өзгөртүүлөрдүн учурдагы функцияларга таасир этпегенин текшересиз.
  10. Лог жүргүзүү жана мониторинг: Тестирлөө учурунда транзакциялардын жана каталардын логдорун көзөмөлдөсүз.
  11. Натыйжаларды документтештирүү: Тест натыйжаларын, табылган кемчиликтерди жана алардын репродукция кадамдарын жазасыз.

Тест учурларынын структурасы:

Test Case ID Төлөм ыкмасы Тасвиртоо Кадамдар Күтүлгөн натыйжа Чын натыйжа Статус
PAY-001 Visa Ийгиликтүү төлөм 1. Товардын себетке кошуу. <br> 2. Төлөм барагына өтүү. <br> 3. Visa тандоо. <br> 4. Карта маалыматтарын туура киргизүү. <br> 5. Төлөмдү ырастоо. Тапшырык ийгиликтүү түзүлдү. <br> "Төлөнгөн" статусу. <br> Төлөм жөнүндө билдирүү алынды.
PAY-002 Visa Ката номері ... Төлөм ката. Ката билдирүүсү.
PAY-003 PayPal Ийгиликтүү төлөм ... (PayPal үчүн сценарий) Тапшырык ийгиликтүү түзүлдү. <br> "Төлөнгөн" статусу. <br> Төлөм жөнүндө билдирүү алынды.

Автоматташтырылган тесттин мисалы (Python жана Selenium WebDriver колдонуу):

# 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()  # же башка браузер
    driver.get("http://your-website.com/checkout")

    # Товардын кошулушу жана төлөм барагына өтүү коду

    # Visa төлөм ыкмасын тандоо
    visa_option = driver.find_element(By.ID, "visa-payment-method")
    visa_option.click()

    # Карта маалыматтарын киргизүү (тест маалыматтарды колдонуу)
    card_number_field = driver.find_element(By.ID, "card_number")
    card_number_field.send_keys("4111111111111111")

    # Башка маалыматтарды киргизүү

    # Төлөм баскычын басуу
    pay_button = driver.find_element(By.ID, "pay_button")
    pay_button.click()

    # Төлөм ийгиликтүү аяктагандан кийин күтүү
    WebDriverWait(driver, 10).until(
        EC.url_contains("/order_success")
    )

    driver.quit()

# Башка төлөм ыкмалары үчүн окшош тесттерди кошуңуз