[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"me":3,"catalog:en:qa-test-automation\u002Fsd-test-data-management":4,"config":169},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":76,"samples":84},"qa-test-automation","QA \u002F Test Automation","","sd-test-data-management","Sd Test Data Management","en",75,1500,[14,15,16],"junior","mid","senior",[18,21,24,27,30,33,36,39,42,45,48,51,52,55,58,61,64,67,70,73],{"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},"sd-ci-test-infrastructure","Sd Ci Test Infrastructure",{"key":46,"name":47,"count":11},"sd-code-quality-test-code","Sd Code Quality Test Code",{"key":49,"name":50,"count":11},"sd-contract-testing","Sd Contract Testing",{"key":8,"name":9,"count":11},{"key":53,"name":54,"count":11},"sd-test-doubles-mocking","Sd Test Doubles Mocking",{"key":56,"name":57,"count":11},"sd-test-framework-design","Sd Test Framework Design",{"key":59,"name":60,"count":11},"ta-cross-browser-parallel-execution","Ta Cross Browser Parallel Execution",{"key":62,"name":63,"count":11},"ta-framework-architecture-patterns","Ta Framework Architecture Patterns",{"key":65,"name":66,"count":11},"ta-locators-selectors-strategy","Ta Locators Selectors Strategy",{"key":68,"name":69,"count":11},"ta-selenium-cypress-playwright-tradeoffs","Ta Selenium Cypress Playwright Tradeoffs",{"key":71,"name":72,"count":11},"ta-synchronization-flaky-tests","Ta Synchronization Flaky Tests",{"key":74,"name":75,"count":11},"ta-visual-regression-reporting","Ta Visual Regression Reporting",[77,81],{"key":78,"name":79,"count":80},"sdet","SDET",450,{"key":82,"name":83,"count":80},"test-automation","Test Automation",[85,103,116,129,142,156],{"id":86,"topic":9,"difficulty":87,"body":88,"options":89,"correct_key":94,"explanation":102},"019fb4ec-2abc-72a5-877e-71b7cbd545b0",1,"In test automation, what is a \"fixture\" most fundamentally used for?",[90,93,96,99],{"key":91,"text":92},"a","Compiling the test suite into a single executable binary",{"key":94,"text":95},"b","Setting up known test data or state before the test",{"key":97,"text":98},"c","Measuring how long each test takes to execute",{"key":100,"text":101},"d","Formatting the final test report into HTML","A fixture sets up the known data or state a test needs before it runs (e.g. a user record, a populated database row), which is exactly (b). Compilation (a), timing (c) and report formatting (d) are unrelated concerns handled elsewhere.",{"id":104,"topic":9,"difficulty":87,"body":105,"options":106,"correct_key":91,"explanation":115},"019fb4ec-2ac0-7a4b-97ad-5919a1440144","What is the main purpose of a \"factory\" (as in a test data factory) in test code?",[107,109,111,113],{"key":91,"text":108},"To generate valid test objects with sensible defaults",{"key":94,"text":110},"To connect the test process to the production database",{"key":97,"text":112},"To automatically retry a flaky test until it passes",{"key":100,"text":114},"To compress test report files before uploading them to CI","A factory builds valid test objects with sensible default values, and a test only overrides the specific fields relevant to what it is checking, which is (a). Connecting to production (b), retry logic (c) and report compression (d) are unrelated to what a factory does.",{"id":117,"topic":9,"difficulty":87,"body":118,"options":119,"correct_key":97,"explanation":128},"019fb4ec-2ac8-7b74-acca-176017ec34b5","What does \"test data teardown\" refer to?",[120,122,124,126],{"key":91,"text":121},"Writing the assertions that check the expected output of a test",{"key":94,"text":123},"Choosing which browser a UI test should run in",{"key":97,"text":125},"Removing or resetting the data a test created afterward",{"key":100,"text":127},"Selecting which tests run first based on their execution time","Teardown is the cleanup step that removes or resets data created during a test, preventing leftover state from affecting later tests, which matches (c). Assertions (a), browser selection (b) and test ordering (d) are separate concerns.",{"id":130,"topic":9,"difficulty":87,"body":131,"options":132,"correct_key":100,"explanation":141},"019fb4ec-2aca-7469-a9a6-e9e688f8721b","Why is \"deterministic\" test data generation preferred over fully random data in most automated tests?",[133,135,137,139],{"key":91,"text":134},"Random data always executes faster than fixed data",{"key":94,"text":136},"Deterministic data automatically encrypts itself for security",{"key":97,"text":138},"Random data cannot be stored in a database",{"key":100,"text":140},"It makes a failing test's outcome reproducible","Deterministic data means the same input is used every run, so a failing test reproduces reliably and can be debugged, which is (d). Speed (a), self-encryption (b) and storage limitations (c) are not real properties tied to determinism.",{"id":143,"topic":9,"difficulty":144,"body":145,"options":146,"correct_key":100,"explanation":155},"019fb4ec-2acf-7453-bb9c-b3e061c5da90",2,"A test suite relies on a single shared \"admin\" user row that many tests read and modify. What is the main risk of this approach?",[147,149,151,153],{"key":91,"text":148},"The database will run out of disk space faster",{"key":94,"text":150},"Shared rows always violate database foreign key constraints",{"key":97,"text":152},"The application under test will compile more slowly",{"key":100,"text":154},"Tests can interfere via the shared row's state","When multiple tests read and write the same shared row, one test's change can alter the state another test depends on, causing order-dependent failures and flakiness, which is (d). Disk usage (a), compile speed (c) and foreign key violations (b) are not the inherent risk of sharing data.",{"id":157,"topic":9,"difficulty":144,"body":158,"options":159,"correct_key":91,"explanation":168},"019fb4ec-2ad0-726e-89b3-1837dbb5d008","What is a key advantage of using a database transaction that is rolled back at the end of each test, instead of truncating tables between tests?",[160,162,164,166],{"key":91,"text":161},"It is typically faster since it avoids re-inserting baseline data",{"key":94,"text":163},"It permanently deletes the table schema after every test",{"key":97,"text":165},"It guarantees the test will pass regardless of the assertions",{"key":100,"text":167},"It removes the need to write any assertions in the test","Wrapping a test in a transaction and rolling it back avoids the overhead of truncating tables and re-inserting baseline\u002Fseed data for the next test, making it considerably faster in most cases, which is (a). The other options describe things a rollback strategy does not do.",{"fields":170,"seniorities":356,"interview_shapes":357,"locales":362,"oauth":364,"question_count":367,"coach_enabled":368,"jd_match_enabled":368},[171,196,216,233,257,270,289,308,330,337,343,350],{"key":172,"name_tr":173,"name_en":173,"sort":87,"specializations":174},"backend","Backend",[175,178,181,184,187,190,193],{"key":176,"name":177,"field":172},"general","Genel",{"key":179,"name":180,"field":172},"go","Go",{"key":182,"name":183,"field":172},"python","Python",{"key":185,"name":186,"field":172},"java","Java",{"key":188,"name":189,"field":172},"csharp","C#\u002F.NET",{"key":191,"name":192,"field":172},"nodejs","Node.js",{"key":194,"name":195,"field":172},"php","PHP",{"key":197,"name_tr":198,"name_en":198,"sort":144,"specializations":199},"frontend","Frontend",[200,201,204,207,210,213],{"key":176,"name":177,"field":197},{"key":202,"name":203,"field":197},"javascript","JavaScript",{"key":205,"name":206,"field":197},"typescript","TypeScript",{"key":208,"name":209,"field":197},"react","React",{"key":211,"name":212,"field":197},"vue","Vue",{"key":214,"name":215,"field":197},"angular","Angular",{"key":217,"name_tr":218,"name_en":218,"sort":219,"specializations":220},"fullstack","Fullstack",3,[221,222,223,224,225,226,227,228,229,230,231,232],{"key":176,"name":177,"field":217},{"key":179,"name":180,"field":172},{"key":182,"name":183,"field":172},{"key":185,"name":186,"field":172},{"key":188,"name":189,"field":172},{"key":191,"name":192,"field":172},{"key":194,"name":195,"field":172},{"key":202,"name":203,"field":197},{"key":205,"name":206,"field":197},{"key":208,"name":209,"field":197},{"key":211,"name":212,"field":197},{"key":214,"name":215,"field":197},{"key":234,"name_tr":235,"name_en":235,"sort":236,"specializations":237},"devops-cloud","DevOps \u002F Cloud",4,[238,239,242,245,248,251,254],{"key":176,"name":177,"field":234},{"key":240,"name":241,"field":234},"aws","AWS",{"key":243,"name":244,"field":234},"gcp","GCP",{"key":246,"name":247,"field":234},"azure","Azure",{"key":249,"name":250,"field":234},"kubernetes","Kubernetes",{"key":252,"name":253,"field":234},"terraform","Terraform",{"key":255,"name":256,"field":234},"linux","Linux",{"key":258,"name_tr":259,"name_en":259,"sort":260,"specializations":261},"ai-engineer","AI Engineer",5,[262,263,264,267],{"key":176,"name":177,"field":258},{"key":182,"name":183,"field":258},{"key":265,"name":266,"field":258},"llm-rag","LLM\u002FRAG",{"key":268,"name":269,"field":258},"mlops","MLOps",{"key":271,"name_tr":272,"name_en":273,"sort":274,"specializations":275},"database","Veritabanı","Database",6,[276,277,280,283,286],{"key":176,"name":177,"field":271},{"key":278,"name":279,"field":271},"postgresql","PostgreSQL",{"key":281,"name":282,"field":271},"mysql","MySQL",{"key":284,"name":285,"field":271},"mongodb","MongoDB",{"key":287,"name":288,"field":271},"redis","Redis",{"key":290,"name_tr":291,"name_en":292,"sort":293,"specializations":294},"mobile","Mobil","Mobile",7,[295,296,299,302,305],{"key":176,"name":177,"field":290},{"key":297,"name":298,"field":290},"ios-swift","iOS (Swift)",{"key":300,"name":301,"field":290},"android-kotlin","Android (Kotlin)",{"key":303,"name":304,"field":290},"flutter","Flutter",{"key":306,"name":307,"field":290},"react-native","React Native",{"key":309,"name_tr":310,"name_en":311,"sort":312,"specializations":313},"security","Güvenlik","Security",8,[314,315,318,321,324,327],{"key":176,"name":177,"field":309},{"key":316,"name":317,"field":309},"appsec","AppSec",{"key":319,"name":320,"field":309},"offensive-pentest","Offensive \u002F Pentest",{"key":322,"name":323,"field":309},"cloud-security","Cloud Security",{"key":325,"name":326,"field":309},"devsecops","DevSecOps",{"key":328,"name":329,"field":309},"blue-team-incident","Blue Team \u002F Incident",{"key":5,"name_tr":331,"name_en":6,"sort":332,"specializations":333},"QA \u002F Test Otomasyonu",9,[334,335,336],{"key":176,"name":177,"field":5},{"key":82,"name":83,"field":5},{"key":78,"name":79,"field":5},{"key":338,"name_tr":339,"name_en":339,"sort":340,"specializations":341},"data-engineer","Data Engineer",10,[342],{"key":176,"name":177,"field":338},{"key":344,"name_tr":345,"name_en":346,"sort":347,"specializations":348},"game-dev","Oyun Geliştirme","Game Development",11,[349],{"key":176,"name":177,"field":344},{"key":351,"name_tr":352,"name_en":352,"sort":353,"specializations":354},"ml-engineer","ML Engineer",12,[355],{"key":176,"name":177,"field":351},[14,15,16],{"junior":358,"mid":360,"senior":361},{"questions":359,"median_sec":3},20,{"questions":359,"median_sec":3},{"questions":359,"median_sec":3},[363,10],"tr",[365,366],"google","github",22650,true]