[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"me":3,"catalog:en:qa-test-automation\u002Fta-synchronization-flaky-tests":4,"config":148},null,{"field_key":5,"field_name":6,"seniority":7,"topic_key":8,"topic_name":9,"spec_key":7,"spec_name":7,"locale":10,"cell_total":11,"field_total":12,"seniorities":13,"topics":17,"specs":58,"samples":63},"qa-test-automation","QA \u002F Test Automation","","ta-synchronization-flaky-tests","Ta Synchronization Flaky Tests","en",75,1050,[14,15,16],"junior","mid","senior",[18,21,24,27,30,33,36,39,42,45,48,51,54,55],{"key":19,"name":20,"count":11},"qa-api-testing","Qa Api Testing",{"key":22,"name":23,"count":11},"qa-automation-fundamentals","Qa Automation Fundamentals",{"key":25,"name":26,"count":11},"qa-ci-cd-testing","Qa Ci Cd Testing",{"key":28,"name":29,"count":11},"qa-defect-management","Qa Defect Management",{"key":31,"name":32,"count":11},"qa-exploratory-manual-testing","Qa Exploratory Manual Testing",{"key":34,"name":35,"count":11},"qa-performance-testing","Qa Performance Testing",{"key":37,"name":38,"count":11},"qa-test-case-design","Qa Test Case Design",{"key":40,"name":41,"count":11},"qa-test-strategy","Qa Test Strategy",{"key":43,"name":44,"count":11},"ta-cross-browser-parallel-execution","Ta Cross Browser Parallel Execution",{"key":46,"name":47,"count":11},"ta-framework-architecture-patterns","Ta Framework Architecture Patterns",{"key":49,"name":50,"count":11},"ta-locators-selectors-strategy","Ta Locators Selectors Strategy",{"key":52,"name":53,"count":11},"ta-selenium-cypress-playwright-tradeoffs","Ta Selenium Cypress Playwright Tradeoffs",{"key":8,"name":9,"count":11},{"key":56,"name":57,"count":11},"ta-visual-regression-reporting","Ta Visual Regression Reporting",[59],{"key":60,"name":61,"count":62},"test-automation","Test Automation",450,[64,82,95,108,121,134],{"id":65,"topic":9,"difficulty":66,"body":67,"options":68,"correct_key":73,"explanation":81},"019faeb4-4b75-7002-a340-693809e1efc2",1,"In Selenium WebDriver, what is the main practical difference between an implicit wait and an explicit wait?",[69,72,75,78],{"key":70,"text":71},"a","Implicit wait only works with CSS selectors, explicit wait only works with XPath",{"key":73,"text":74},"b","Implicit wait sets one global timeout for all lookups; explicit wait polls one named condition on one element",{"key":76,"text":77},"c","Explicit wait pauses the entire test suite, implicit wait pauses only the current test method",{"key":79,"text":80},"d","Implicit wait is configured individually per element instance, explicit wait is configured once for the entire driver session","An implicit wait (driver.manage().timeouts().implicitlyWait(...)) sets a global polling timeout the driver applies to every findElement call, while an explicit wait (WebDriverWait combined with ExpectedConditions) waits for one specific, named condition on one specific element before continuing.",{"id":83,"topic":9,"difficulty":66,"body":84,"options":85,"correct_key":70,"explanation":94},"019faeb4-4b76-7c82-b8de-736ee5a3ec56","What is a \"flaky test\" in the context of test automation?",[86,88,90,92],{"key":70,"text":87},"A test that intermittently passes and fails though the code under test is unchanged",{"key":73,"text":89},"A test that always fails because the feature it covers was removed",{"key":76,"text":91},"A test that runs slower than the team's agreed performance budget",{"key":79,"text":93},"A test that is written in an interpreted scripting language instead of a statically compiled one","A flaky test passes and fails intermittently against the same code, usually because of timing, environment, or test-isolation issues rather than a real defect, which erodes trust in the suite.",{"id":96,"topic":9,"difficulty":66,"body":97,"options":98,"correct_key":76,"explanation":107},"019faeb4-4b7e-755a-bdda-ab857d290b07","Why is mixing implicit and explicit waits in the same Selenium WebDriver script generally discouraged?",[99,101,103,105],{"key":70,"text":100},"Selenium raises a compile-time error when both are configured at once",{"key":73,"text":102},"Explicit waits silently disable implicit waits for the rest of the session",{"key":76,"text":104},"Their combined timeouts can stack unpredictably, causing some calls to wait far longer than intended",{"key":79,"text":106},"Implicit waits only take effect after every explicit wait defined anywhere in the script has already completed","Because both mechanisms can be in effect simultaneously, a findElement call inside an explicit wait's polling loop can itself be subject to the implicit wait timeout, so the two can stack and produce unexpectedly long or inconsistent waits.",{"id":109,"topic":9,"difficulty":66,"body":110,"options":111,"correct_key":79,"explanation":120},"019faeb4-4b80-7567-a984-6e9cc64df99f","In Selenium (Java binding), which line correctly waits up to 10 seconds for an element to become clickable before clicking it?",[112,114,116,118],{"key":70,"text":113},"driver.findElement(By.id(\"submit\")).waitUntilClickable(10).click();",{"key":73,"text":115},"try { Thread.sleep(10000); } catch (InterruptedException e) { Thread.currentThread().interrupt(); } driver.findElement(By.id(\"submit\")).click();",{"key":76,"text":117},"driver.manage().timeouts().pageLoadTimeout(10, TimeUnit.SECONDS);",{"key":79,"text":119},"new WebDriverWait(driver, Duration.ofSeconds(10)).until(ExpectedConditions.elementToBeClickable(By.id(\"submit\"))).click();","WebDriverWait combined with ExpectedConditions.elementToBeClickable polls until the located element is both visible and enabled, then returns it so .click() can be chained; the other options either use a nonexistent method, a hardcoded sleep, or configure an unrelated page-load timeout.",{"id":122,"topic":9,"difficulty":66,"body":123,"options":124,"correct_key":70,"explanation":133},"019faeb4-4b82-757d-880c-5b28b4a31232","What is generally the biggest problem with using a fixed sleep (e.g. Thread.sleep(5000)) to solve a timing issue in a UI test?",[125,127,129,131],{"key":70,"text":126},"It wastes time when the page is fast, and still fails when the page is slower than expected",{"key":73,"text":128},"It is not supported by any modern automation framework",{"key":76,"text":130},"It causes the browser to close before the assertion executes",{"key":79,"text":132},"It only works with Cypress and never with Selenium","A fixed sleep guesses a duration: if the real wait is shorter, the test runs slower than necessary; if the real wait is even occasionally longer (slow network, animation, server load), the test still fails, which is why explicit condition-based waits are preferred.",{"id":135,"topic":9,"difficulty":136,"body":137,"options":138,"correct_key":76,"explanation":147},"019faeb4-4b83-727e-bbec-3effac570b45",2,"How does Cypress's built-in \"retry-ability\" mechanism handle a command like cy.get('.item').should('be.visible')?",[139,141,143,145],{"key":70,"text":140},"It executes the command exactly once and immediately reports pass or fail based on the current DOM state",{"key":73,"text":142},"It requires the developer to manually wrap the command in a custom retry loop written in JavaScript",{"key":76,"text":144},"It re-queries the DOM and re-checks the assertion repeatedly until it passes or the timeout expires",{"key":79,"text":146},"It pauses the whole test run and waits for a human to confirm the element is visible","Cypress commands and assertions like .should() are automatically retried against the current DOM state within a configurable timeout (default 4s for most commands) until the assertion passes or time runs out, which is what makes Cypress tests resilient to timing without explicit waits.",{"fields":149,"seniorities":334,"interview_shapes":335,"locales":340,"oauth":342,"question_count":345,"coach_enabled":346,"jd_match_enabled":346},[150,175,195,212,236,249,268,287,309,315,321,328],{"key":151,"name_tr":152,"name_en":152,"sort":66,"specializations":153},"backend","Backend",[154,157,160,163,166,169,172],{"key":155,"name":156,"field":151},"general","Genel",{"key":158,"name":159,"field":151},"go","Go",{"key":161,"name":162,"field":151},"python","Python",{"key":164,"name":165,"field":151},"java","Java",{"key":167,"name":168,"field":151},"csharp","C#\u002F.NET",{"key":170,"name":171,"field":151},"nodejs","Node.js",{"key":173,"name":174,"field":151},"php","PHP",{"key":176,"name_tr":177,"name_en":177,"sort":136,"specializations":178},"frontend","Frontend",[179,180,183,186,189,192],{"key":155,"name":156,"field":176},{"key":181,"name":182,"field":176},"javascript","JavaScript",{"key":184,"name":185,"field":176},"typescript","TypeScript",{"key":187,"name":188,"field":176},"react","React",{"key":190,"name":191,"field":176},"vue","Vue",{"key":193,"name":194,"field":176},"angular","Angular",{"key":196,"name_tr":197,"name_en":197,"sort":198,"specializations":199},"fullstack","Fullstack",3,[200,201,202,203,204,205,206,207,208,209,210,211],{"key":155,"name":156,"field":196},{"key":158,"name":159,"field":151},{"key":161,"name":162,"field":151},{"key":164,"name":165,"field":151},{"key":167,"name":168,"field":151},{"key":170,"name":171,"field":151},{"key":173,"name":174,"field":151},{"key":181,"name":182,"field":176},{"key":184,"name":185,"field":176},{"key":187,"name":188,"field":176},{"key":190,"name":191,"field":176},{"key":193,"name":194,"field":176},{"key":213,"name_tr":214,"name_en":214,"sort":215,"specializations":216},"devops-cloud","DevOps \u002F Cloud",4,[217,218,221,224,227,230,233],{"key":155,"name":156,"field":213},{"key":219,"name":220,"field":213},"aws","AWS",{"key":222,"name":223,"field":213},"gcp","GCP",{"key":225,"name":226,"field":213},"azure","Azure",{"key":228,"name":229,"field":213},"kubernetes","Kubernetes",{"key":231,"name":232,"field":213},"terraform","Terraform",{"key":234,"name":235,"field":213},"linux","Linux",{"key":237,"name_tr":238,"name_en":238,"sort":239,"specializations":240},"ai-engineer","AI Engineer",5,[241,242,243,246],{"key":155,"name":156,"field":237},{"key":161,"name":162,"field":237},{"key":244,"name":245,"field":237},"llm-rag","LLM\u002FRAG",{"key":247,"name":248,"field":237},"mlops","MLOps",{"key":250,"name_tr":251,"name_en":252,"sort":253,"specializations":254},"database","Veritabanı","Database",6,[255,256,259,262,265],{"key":155,"name":156,"field":250},{"key":257,"name":258,"field":250},"postgresql","PostgreSQL",{"key":260,"name":261,"field":250},"mysql","MySQL",{"key":263,"name":264,"field":250},"mongodb","MongoDB",{"key":266,"name":267,"field":250},"redis","Redis",{"key":269,"name_tr":270,"name_en":271,"sort":272,"specializations":273},"mobile","Mobil","Mobile",7,[274,275,278,281,284],{"key":155,"name":156,"field":269},{"key":276,"name":277,"field":269},"ios-swift","iOS (Swift)",{"key":279,"name":280,"field":269},"android-kotlin","Android (Kotlin)",{"key":282,"name":283,"field":269},"flutter","Flutter",{"key":285,"name":286,"field":269},"react-native","React Native",{"key":288,"name_tr":289,"name_en":290,"sort":291,"specializations":292},"security","Güvenlik","Security",8,[293,294,297,300,303,306],{"key":155,"name":156,"field":288},{"key":295,"name":296,"field":288},"appsec","AppSec",{"key":298,"name":299,"field":288},"offensive-pentest","Offensive \u002F Pentest",{"key":301,"name":302,"field":288},"cloud-security","Cloud Security",{"key":304,"name":305,"field":288},"devsecops","DevSecOps",{"key":307,"name":308,"field":288},"blue-team-incident","Blue Team \u002F Incident",{"key":5,"name_tr":310,"name_en":6,"sort":311,"specializations":312},"QA \u002F Test Otomasyonu",9,[313,314],{"key":155,"name":156,"field":5},{"key":60,"name":61,"field":5},{"key":316,"name_tr":317,"name_en":317,"sort":318,"specializations":319},"data-engineer","Data Engineer",10,[320],{"key":155,"name":156,"field":316},{"key":322,"name_tr":323,"name_en":324,"sort":325,"specializations":326},"game-dev","Oyun Geliştirme","Game Development",11,[327],{"key":155,"name":156,"field":322},{"key":329,"name_tr":330,"name_en":330,"sort":331,"specializations":332},"ml-engineer","ML Engineer",12,[333],{"key":155,"name":156,"field":329},[14,15,16],{"junior":336,"mid":338,"senior":339},{"questions":337,"median_sec":3},20,{"questions":337,"median_sec":3},{"questions":337,"median_sec":3},[341,10],"tr",[343,344],"google","github",22200,true]