~/talk

Changing Tyres In A Moving Car-Making Functional Test Automation Effective

Talkat Selenium Conf 2022 · 2022-07-29..07-30· [testing]
slides:none on file

Lists eight concrete anti‑patterns (code that is deeply nested, hundreds of thread.sleep calls, swallowed exceptions, abusive data providers, test-order dependencies, brittle TestNG XMLs, automatic retrying of failures, deep page‑object inheritance) and gives actionable fixes: use IDE linters, stop using thread.sleep, don't mix implicit and explicit waits, throw rich exceptions and keep assertions out of page objects, map explicit journeys instead of blind data providers, tag tests and separate config (use Gradle), and prefer composition over inheritance so tests run independently.

AI-written summary · about

  1. 0:00Intro
  2. 1:34Raise your hand if you disagree
  3. 4:43What is an anti-pattern?
  4. 7:07Cognitive complexity
  5. 8:05Code Analysis
  6. 10:15Thread.sleep
  7. 11:17Mixing Implicit & Explicit Waits
  8. 12:02STOP SLEEPING
  9. 12:38Understand Waits
  10. 14:24Assertions all over the place!
  11. 16:04No assertions in PageObjects
  12. 16:37Custom exceptions help in RCA
  13. 19:17Identify & automate unique journey
  14. 20:31Criteria for Test Data
  15. 21:09Test Data for Automation
  16. 22:34Dependencies in Tests
  17. 24:55Independent Tests
  18. 25:30Optimised Test Execution
  19. 27:14testng.xml
  20. 29:07Tag your tests
  21. 31:56Configurable Test Execution
  22. 33:08Flaky Tests
  23. 33:50DO NOT USE Retry Listener
  24. 34:05DO NOT Force actions
  25. 38:24Do 'proper' RCA for failing & flaky to
  26. 38:57Test Class Design
  27. 40:04Poor use of Inheritance
  28. 40:32Identifying Page Objects
  29. 41:43Do not use PageFactory
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.