Witaj w świecie testów automatycznych. Masz już dość klikania w te same guziki? Dobrze trafiłeś. Zaczniemy od podstaw, ale z pazurem – bez lukru i zbędnych wstępów.
Po co te całe „opcje”?
Selenium pozwala automatyzować przeglądarki. Ale zanim browser w ogóle się podniesie – możemy rzucić mu kilka argumentów. Dosłownie.
options = webdriver.ChromeOptions()
options.add_argument('--headless')
driver = webdriver.Chrome(options=options)
To jak pierwsza kawa dla Twojej przeglądarki – decydujesz, w jakim nastroju ma wstać.
Przegląd opcji – po co i kiedy?
--headless
: Bez GUI. Brak okienka, maksymalna wydajność. Idealne na CI/CD.--disable-gpu
: Nie baw się z akceleracją – oszczędzisz problemy.--window-size=1920,1080
: Kontroluj rozmiar – przydatne przy testach responsywności.--no-sandbox
: Czasem potrzebne w kontenerach, ale z głową.--disable-dev-shm-usage
: Gdy/dev/shm
się zapycha – na Dockerze jak znalazł.--ignore-certificate-errors
: SSL leży? A test musi przejść. Uważaj w produkcji.--disable-extensions
: Żegnajcie, adblocki i inne dziwactwa.
Czy potrzebujesz wszystkich?
Nie. Używaj tylko tego, co Ci realnie potrzebne. Nadmiar opcji to jak nadmiar przypraw – nie wszystko razem smakuje lepiej.
TL;DR
--headless
: domyślny wybór dla CI.--window-size
: konieczność przy testach layoutów.--no-sandbox
,--disable-dev-shm-usage
: must-have w Dockerze.
W kolejnej części pogadamy o fixture’ach w Pyteście – czyli jak nie powtarzać tego samego setupu w kółko.
Do przeczytania. 🚀