Web Testing with Logic Programming
summary
Logic programming is used to write declarative, snapshot-style web tests that assert and infer facts about pages using core.logic, with browser automation via clj-webdriver + webdriver-logic backed by Selenium WebDriver. Examples include finding GitHub’s login anchor and verifying a menu item gains class "active" after click; logic queries return all solutions (run) and support deterministic checks via s/s+ macros or non‑deterministic success. Large DOM searches are slow because Selenium uses HTTP RPC, so a raw namespace with enlive* parses page source for huge speed gains; it works but demands careful scoping and some developer/QA skill.
AI-written summary · about
chapters (12)
- 0:00Introduction
- 1:53Core Logic
- 4:46Logic Engine
- 6:25Verification
- 8:37Web Testing
- 11:38Query Platforms
- 16:21Verify
- 20:35Exploring Logic Programming
- 25:38Fun and Games
- 25:48Risks
- 26:32Performance
- 30:43Conclusion
related talks
45mLow Code Visual Testing of an Enterprise Scenario
43mBrowser Testing using Grammars and a Consensus Oracle
19mWorking Well: The Future of Web Testing
55mModern Web Testing: Going Beyond Selenium
37mAutomated Performance Testing With WebDriver
43mWebDriver: Controlling your Web Browser
30mModern Web Testing: Going Beyond Selenium
38mIntroduction to Logic Programming with Clojure
