0%
18-dars

Automation asoslari

Manual'dan keyingi qadam. Junior'ga oson โ€” Middle'ga shart. Bu darsdan keyin sizning maoshingiz 30-50% oshishi mumkin.

75 daqiqa
Boshlovchilar uchun
6 ta interaktiv

Automation nima?

Tasavvur qiling: TestShop saytida 50 ta sahifa bor. Har sahifa uchun 10 ta test. Jami โ€” 500 ta test. Ularni qo'lda bajarish kerak har release oldidan.

Manual qilsangiz: 2-3 kun. Automation qilsangiz: 30 daqiqa. Bu โ€” automation'ning sehri!

Asosiy atama

Test Automation โ€” kompyuter tomonidan qo'l harakatlarini takrorlash. Siz bir marta yozasiz, kompyuter har gal o'zi bajaradi.

Oddiy qilib: Robot โ€” sizning qo'l harakatlaringizni o'rgangan. Endi siz "Bosma!" deysiz, robot bajaradi. Charchamaydi, xatolashmaydi.

๐Ÿ’ก Sodda misol
Kir yuvish mashinasi
Ilgari kishilar kirni qo'lda yuvardi - 1 soat ish. Kir mashinasi paydo bo'ldi - tugmani bosasiz, hammasini o'zi qiladi. Automation ham xuddi shunday: bir marta sozlaysiz, keyin tugma bosib, kompyuter testlarni o'zi bajaradi.

Nega automation kerak?

Boshlovchilar uchun muhim

Automation โ€” bir kechada o'rganib bo'lmaydi. 3-6 oy doimiy amaliyot kerak. Lekin asoslarni bilish โ€” sizni boshqa Junior'lardan ajratadi!

Manual vs Automation

Bu tez-tez yaxshi tushunilmaydigan tushuncha. Automation Manual'ni almashtirmaydi โ€” to'ldiradi.

๐Ÿ‘ค Manual Testing

Qo'lda bajariladi

  • Tez yangilanadigan testlar
  • UX (foydalanuvchi tajribasi)
  • Murakkab vizual testlar
  • Yangi feature'lar (avval manual)
  • Exploratory testing

๐Ÿค– Automation Testing

Kompyuter bajaradi

  • Takrorlanuvchi testlar
  • Regression Testing
  • API testlar
  • Performance / Load testing
  • Critical funksiyalar (Login, To'lov)

Batafsil taqqoslash

XususiyatManualAutomation
Boshlash vaqtiDarholSkript yozish kerak (1-2 soat)
Bajarilish vaqti5-10 daqiqa/test5-10 sekund/test
1000 marta takrorImkonsizOson
UI o'zgartirilsaHech narsa qilmaSkript yangilash kerak
Foydalanuvchi tajribasiYaxshi sezadiSezmaydi
CharchaganlikBorYo'q
Yangi bug topishYaxshiFaqat yozilgan testlar
Asosiy qoida

Yangi feature โ†’ Manual (avval qo'lda sinab ko'rasiz). Eski feature โ†’ Automation (har release'da takrorlash uchun).

ROI โ€” qaytarim hisoblash

Automation arzon emas โ€” vaqt va kuch ketadi. Lekin uzoq muddatda juda foydali. Pastdagi kalkulyator orqali sinab ko'ring:

๐Ÿงฎ ROI Calculator

Automation sizga foydalimi?

Ma'lumotlarni kiriting va qancha vaqt tejashingizni ko'ring:

๐Ÿ“ˆ Natija
0
Manual jami (soat)
0
Auto jami (soat)
๐ŸŽฏ Classifier

Manual yoki Automation?

1-qadam: Holatni bosing. 2-qadam: Manual yoki Auto ekanini tanlang.

๐Ÿ‘† Endi pastdagi tugmalardan birini tanlang
Login funksiyasini har release oldidan tekshirish (50 marta)
Takrorlanuvchi va critical.
Yangi qo'shilgan "Sevimlilar" tugmasini tekshirish
Yangi feature, hali UI o'zgaradi.
Sayt 1000 ta foydalanuvchi yukini ko'tara oladimi?
Performance/Load testing.
Sayt dizaynini ko'rish - "chiroyli ko'rinadimi?"
UX/Vizual baholash.
100 ta API endpoint - har birida CRUD test
Ko'p, takrorlanuvchi.
Mobil ilovada animatsiyalar silliq ishlayaptimi?
Vizual va his bilan baholash.
๐Ÿ‘ค
Manual
๐Ÿค–
Automation
0 / 6 to'g'ri

Automation asboblari

Bozorda ko'p asboblar bor. Hammasi turli xil โ€” turli xil til, turli xil maqsad.

๐ŸŒ

Selenium

Eng mashhur, eski, kuchli. Hamma brauzerda ishlaydi.

2004 yil ยท Java/Python
๐ŸŽญ

Playwright

Microsoft. Zamonaviy, tez. Yangi loyihalar uchun #1.

2020 ยท JS/Python
โšก

Cypress

Frontend QA uchun. Brauzerda ko'rinadi, oson.

2017 ยท JavaScript
๐Ÿ“ฑ

Appium

Mobil ilovalar uchun. iOS va Android.

2014 ยท Java/Python

Qaysisini tanlash kerak?

Mening tavsiyam

Boshlovchilar uchun: Selenium IDE (kodsiz) yoki Playwright (zamonaviy). 19-darsda Selenium chuqur o'rganamiz!

๐ŸŽฏ Bog'lang

Asbob va xususiyatni bog'lang

Har asbob qanday vazifa uchun?

Asbob

๐ŸŒ Selenium
๐ŸŽญ Playwright
โšก Cypress
๐Ÿ“ฑ Appium
๐Ÿ“จ Postman

Xususiyat

API testing uchun
Eng eski va mashhur (2004)
Mobil ilovalar uchun (iOS/Android)
Frontend QA uchun, JS bilan
Microsoft yaratdi, zamonaviy va tez
0 / 5 juft

Test Automation Piramidasi

Automation asboblar har xil. Lekin strategiya bir xil โ€” Test Pyramid (5-darsdan eslang!).

UI / E2E 10% API / Integration 20% Unit Tests 70% Sekin Tez โ†• Kam Ko'p
UI / E2E (10%)
Selenium, Playwright. Sekin va qimmat. Faqat critical yo'llar.
API (20%)
Postman, Newman. O'rta tez. Backend funksiyalari.
Unit (70%)
JUnit, Jest, PyTest. Juda tez. Dasturchi yozadi.
Nega bunday tartib?
  • Unit tests โ€” eng tez (millisekund). Kichik bo'laklarni tekshiradi. Dasturchi yozadi.
  • API tests โ€” o'rta tez (sekund). Backend funksiyalarini tekshiradi. QA yoki Auto QA yozadi.
  • UI tests โ€” eng sekin (daqiqa). Foydalanuvchi yo'lini tekshiradi. Auto QA yozadi.

Ko'p Unit + bir oz API + kam UI = tez va ishonchli automation!

๐ŸŽฏ Tartibga qo'ying

Test Pyramid darajalarini tartibga qo'ying

1-qadam: Pastdagi qadamni bosing. 2-qadam: To'g'ri darajani tanlang.

๐Ÿ‘† Endi yuqoridagi joylardan birini tanlang
๐Ÿ”ผ Yuqori (10%)
Darajani qo'ying
โฌ†๏ธ O'rta (20%)
Darajani qo'ying
โฌ‡๏ธ Past (70%)
Darajani qo'ying
๐Ÿ“ก API tests (Postman)
๐ŸŒ UI/E2E tests (Selenium)
๐Ÿงฉ Unit tests (Jest)
0 / 3 to'g'ri

Birinchi automation skripti

Automation skripti yozish uchun avval elementlarni topish kerak. Sayt brauzer'da ko'rinadi, lekin kompyuter elementlarni qanday topadi?

Element nima?

HTML element โ€” sahifadagi har narsa: tugma, input, link, rasm. Har birining id, class yoki name bo'lishi mumkin.

Misol: Login tugmasi: <button id="login-btn">Kirish</button>

Element topishning 3 yo'li

1. CSS Selector (eng mashhur)

// ID bo'yicha (eng aniq) #login-btn // id="login-btn" elementni topadi // Class bo'yicha .btn-primary // class="btn-primary" elementni topadi // Tag bo'yicha button // barcha <button> elementlar // Aralash button.btn-primary // button + class

2. XPath (kuchli, lekin sekin)

// Matn bo'yicha izlash //button[text()="Kirish"] // Attribute bo'yicha //input[@name="email"] // Bola element //div[@id="form"]/button

3. Boshqa usullar

Selenium misoli (Python)
from selenium import webdriver driver = webdriver.Chrome() driver.get("https://testshop.uz/login") # Email maydoni topib, ma'lumot kiritish email = driver.find_element_by_id("email") email.send_keys("test@example.com") # Login tugmasini bosish login_btn = driver.find_element_by_css_selector(".btn-login") login_btn.click() driver.quit()

Bu skript: brauzer ochadi, login sahifasi, email kiritadi, tugma bosadi.

Selenium IDE (kodsiz)

JavaScript yoki Python bilmaslik xavotir solmasin. Selenium IDE brauzer extension - siz harakat qilasiz, u o'zi kod yozadi! Boshlovchilar uchun ideal.

๐ŸŽฏ Selector Builder

To'g'ri selectorni tanlang

Quyidagi HTML elementni qaysi selector bilan topish mumkin?

<button id="submit-btn" class="btn btn-primary" name="submit"> Yuborish </button>

Savol: Eng yaxshi (eng aniq, eng tez) selector qaysi?

#submit-btn CSS - ID
.btn.btn-primary CSS - Class
button CSS - Tag
//button[text()="Yuborish"] XPath - Text
๐ŸŽฌ Haqiqiy stsenariy
Click loyihasida 1-automation skript

Dushanba, 10:00. Click QA Lead sizga keldi: "Login funksiyasi har release oldidan 50 marta tekshiriladi. Manual'da har test 5 daqiqa - jami 250 daqiqa (4+ soat). Automate qilib bera olasizmi?"

Sizdagi vaqt: 1 hafta. JavaScript va Python yo'q.

Birinchi nima qilasiz?

Eng to'g'ri yondashuv?
โšก Tezkor tekshiruv
500 ta yangi mahsulot saytga qo'shildi. Har biri uchun "Savatga qo'shish" testi kerak. Manual yoki Auto?

Boshlovchilar uchun 1-skript

Selenium IDE bilan birinchi automation skriptingizni yarating. Kod yozish kerak emas!

๐ŸŒ

Selenium IDE Bepul

Chrome yoki Firefox extension. Kodsiz - record va play.

๐Ÿš€ Selenium IDE

Sizning vazifalaringiz:

1
Selenium IDE o'rnatish
Chrome Web Store yoki Firefox Add-ons'dan "Selenium IDE" extension'ini o'rnating. 1 daqiqa.
2
TestShop Login skript yarating
Selenium IDE'ni oching โ†’ "New Project" โ†’ URL: TestShop. Record bosing โ†’ Login qiling โ†’ Stop. Endi Play bosib, qayta-qayta bajaring.
3
3 ta skript yarating va saqlang
Login skripti, Mahsulot ko'rish skripti, Savatga qo'shish skripti. Hammasini .side faylga export qiling.
๐Ÿ’ก Portfolio uchun

3 ta Selenium skripti + ekran yozuvi (gif yoki video) โ€” Junior portfolioda zo'r dalil. Intervyu'da: "Mana mening 1-automation skriptlarim" โ€” deb ko'rsatasiz!

Intervyu savollari

Automation haqida intervyu'da albatta so'raladi. 7 ta professional javob.

๐Ÿ’ก Har savol ustiga bosing โ€” javobni ko'rasiz.

Q1Test automation nima va nega kerak?+

Javob: "Test automation โ€” testlarni kompyuterga bajartiring. Bir marta yozasiz, kompyuter har gal o'zi bajaradi."

Sabablari:

  • Tezlik (500 test 30 daqiqada vs 3 kun)
  • Aniqlik (kompyuter charchamaydi)
  • Takrorlash (har release'da qayta)
  • Tunda ham ishlaydi

Pro javob: "Automation Manual'ni almashtirmaydi - to'ldiradi. Yangi feature avval manual, keyin auto."

Q2Qachon automation kerak emas?+

Javob: "Automation hamma narsani test qilmaydi. Quyidagi holatlarda manual qoladi:"

  • Yangi feature โ€” UI tez-tez o'zgaradi, skript yangilash kerak bo'ladi
  • UX testing โ€” chiroyli ko'rinishini, hissiyotni baholash
  • Exploratory โ€” yangi yo'llarni topish
  • Bir martalik โ€” agar test 1-2 marta ishlaydi, automation qilish ortiqcha
  • Captcha, OTP โ€” texnik cheklov
Q3Test Pyramid qanday tuzilgan?+

Javob: "Test Pyramid โ€” automation testlar strategiyasi:"

  • Unit (70%) โ€” eng tez, dasturchi yozadi (JUnit, Jest, PyTest)
  • API (20%) โ€” o'rta tez, QA yoki Auto QA (Postman, REST Assured)
  • UI/E2E (10%) โ€” eng sekin, faqat critical (Selenium, Playwright)

Nega bunday? Ko'p kichik testlar tez ishlaydi va buglarni tezroq topadi. UI testlar qimmat va sekin.

Anti-pattern: "Ice Cream Cone" โ€” ko'p UI, kam Unit. Bu xato.

Q4Selenium va Playwright farqi?+

Javob:

  • Selenium โ€” 2004 yil, eski va eng mashhur. Java, Python, JS, C# - hammasi. WebDriver protokol.
  • Playwright โ€” 2020 yil, Microsoft. Tezroq, ishonchli, auto-wait. JavaScript, Python.

Qaysisini tanlash?

  • Eski loyiha + Java/Python jamoasi โ†’ Selenium
  • Yangi loyiha + JS jamoasi โ†’ Playwright
  • Mobil โ†’ Appium (Selenium asosida)

Pro javob: "Men ikkalasini ham bilaman. Yangi loyihada Playwright tavsiya qilaman - tezroq va kam flaky test."

Q5Element topish usullari (Locators)?+

Javob: "Selenium'da 8 ta locator bor, lekin asosan 4 tasini ishlataman:"

  • By ID โ€” eng tez, eng aniq. #login-btn
  • By Name โ€” input maydonlar uchun
  • By CSS Selector โ€” universal va tez. .btn-primary
  • By XPath โ€” kuchli, lekin sekin. Faqat boshqa imkonsiz bo'lganda

Tavsiya: ID โ†’ CSS โ†’ XPath tartibida ishlatish. ID eng yaxshi, XPath oxirgi chora.

Q6Automation ROI qanday hisoblanadi?+

Javob: "ROI - Return on Investment. Automation arzon emas, lekin ko'p marta takrorlansa - foyda."

Formula:

  • Manual: N ร— Manual_vaqti
  • Auto: Skript_yozish + (N ร— Auto_vaqti)
  • Foyda: Manual - Auto

Misol: 50 ta test, har biri 5 daqiqa manual. Skript yozish 4 soat, har test 30 sekund.

  • Manual: 50 ร— 5 = 250 daqiqa (4.2 soat)
  • Auto: 4 soat + (50 ร— 0.5/60) = 4.4 soat birinchi gal
  • 2-gal: 0.4 soat (har gal!)
  • 10 gal: 4 soat + 4 soat = 8 soat (manual: 42 soat)

Xulosa: 5+ marta takrorlanadigan testlarni automation qilish foydali.

Q7Automation tajribangiz bormi?+

Junior javobi: "Manual'ga e'tibor beraman" - yomon javob.

Yaxshi javob: "Automation o'rganayapman:"

  • Selenium IDE'da birinchi skriptlarimni yaratganman (kodsiz)
  • Postman Tests yozaman (API uchun)
  • Test Pyramid'ni tushunaman: Unit/API/UI strategiyasi
  • CSS Selectors va XPath asoslarini bilaman
  • ROI hisoblay olaman: qaysi testlarni automation qilish kerak
  • Selenium WebDriver yoki Playwright - keyingi qadam

Pro javob: "Hozir Manual+API testing'da kuchliman. Automation bilan ishlash uchun tayyorman, kompaniya yo'naltirishi bilan tezda o'rganaman."

3 ta asosiy fikr

Bu darsdan eslab qolishingiz kerak bo'lgan eng muhim g'oyalar

01
Manual + Auto
Automation Manual'ni almashtirmaydi. Yangi feature - manual, eski - auto. Ikkalasi birga kuch.
02
Test Pyramid
70% Unit, 20% API, 10% UI. Ko'p tez testlar va kam sekin testlar - eng yaxshi strategiya.
03
Selenium IDE - boshlash
Kodsiz, oson. Boshlovchilar uchun ideal. Keyin Selenium WebDriver yoki Playwright.
๐Ÿ† Darsni muvaffaqiyatli tugatdingiz!