[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"me":3,"catalog:en:qa-test-automation\u002Fpf-distributed-load-generation":4,"config":211},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":112,"samples":126},"qa-test-automation","QA \u002F Test Automation","","pf-distributed-load-generation","Pf Distributed Load Generation","en",75,2400,[14,15,16],"junior","mid","senior",[18,21,24,27,30,33,36,39,40,43,46,49,52,55,58,61,64,67,70,73,76,79,82,85,88,91,94,97,100,103,106,109],{"key":19,"name":20,"count":11},"mq-appium-driver-architecture","Mq Appium Driver Architecture",{"key":22,"name":23,"count":11},"mq-device-lab-emulator-parallelization","Mq Device Lab Emulator Parallelization",{"key":25,"name":26,"count":11},"mq-mobile-locators-sync-flakiness","Mq Mobile Locators Sync Flakiness",{"key":28,"name":29,"count":11},"mq-native-frameworks-espresso-xcuitest","Mq Native Frameworks Espresso Xcuitest",{"key":31,"name":32,"count":11},"mq-network-conditioning-offline-validation","Mq Network Conditioning Offline Validation",{"key":34,"name":35,"count":11},"mq-permissions-lifecycle-system-interactions","Mq Permissions Lifecycle System Interactions",{"key":37,"name":38,"count":11},"pf-apm-profiling-bottleneck-correlation","Pf Apm Profiling Bottleneck Correlation",{"key":8,"name":9,"count":11},{"key":41,"name":42,"count":11},"pf-environment-fidelity-test-design","Pf Environment Fidelity Test Design",{"key":44,"name":45,"count":11},"pf-load-model-design","Pf Load Model Design",{"key":47,"name":48,"count":11},"pf-metrics-percentiles-analysis","Pf Metrics Percentiles Analysis",{"key":50,"name":51,"count":11},"pf-scripting-correlation-parameterization","Pf Scripting Correlation Parameterization",{"key":53,"name":54,"count":11},"qa-api-testing","Qa Api Testing",{"key":56,"name":57,"count":11},"qa-automation-fundamentals","Qa Automation Fundamentals",{"key":59,"name":60,"count":11},"qa-ci-cd-testing","Qa Ci Cd Testing",{"key":62,"name":63,"count":11},"qa-defect-management","Qa Defect Management",{"key":65,"name":66,"count":11},"qa-exploratory-manual-testing","Qa Exploratory Manual Testing",{"key":68,"name":69,"count":11},"qa-performance-testing","Qa Performance Testing",{"key":71,"name":72,"count":11},"qa-test-case-design","Qa Test Case Design",{"key":74,"name":75,"count":11},"qa-test-strategy","Qa Test Strategy",{"key":77,"name":78,"count":11},"sd-ci-test-infrastructure","Sd Ci Test Infrastructure",{"key":80,"name":81,"count":11},"sd-code-quality-test-code","Sd Code Quality Test Code",{"key":83,"name":84,"count":11},"sd-contract-testing","Sd Contract Testing",{"key":86,"name":87,"count":11},"sd-test-data-management","Sd Test Data Management",{"key":89,"name":90,"count":11},"sd-test-doubles-mocking","Sd Test Doubles Mocking",{"key":92,"name":93,"count":11},"sd-test-framework-design","Sd Test Framework Design",{"key":95,"name":96,"count":11},"ta-cross-browser-parallel-execution","Ta Cross Browser Parallel Execution",{"key":98,"name":99,"count":11},"ta-framework-architecture-patterns","Ta Framework Architecture Patterns",{"key":101,"name":102,"count":11},"ta-locators-selectors-strategy","Ta Locators Selectors Strategy",{"key":104,"name":105,"count":11},"ta-selenium-cypress-playwright-tradeoffs","Ta Selenium Cypress Playwright Tradeoffs",{"key":107,"name":108,"count":11},"ta-synchronization-flaky-tests","Ta Synchronization Flaky Tests",{"key":110,"name":111,"count":11},"ta-visual-regression-reporting","Ta Visual Regression Reporting",[113,117,120,123],{"key":114,"name":115,"count":116},"mobile-qa","Mobile QA",450,{"key":118,"name":119,"count":116},"performance-testing","Performance Testing",{"key":121,"name":122,"count":116},"sdet","SDET",{"key":124,"name":125,"count":116},"test-automation","Test Automation",[127,145,158,172,185,198],{"id":128,"topic":9,"difficulty":129,"body":130,"options":131,"correct_key":139,"explanation":144},"019ff6e3-95d6-7973-b877-874ea7fc983f",1,"Why can a single machine typically not generate the load needed to simulate tens of thousands of concurrent virtual users?",[132,135,138,141],{"key":133,"text":134},"a","Load testing tools refuse to run more than a few hundred virtual users on any single process by design",{"key":136,"text":137},"b","The target system always rejects traffic coming from a single source IP address",{"key":139,"text":140},"c","A single machine has finite CPU, memory, sockets and bandwidth, capping realistic virtual user counts",{"key":142,"text":143},"d","Operating systems never allow more than one TCP connection to be opened from a single machine at a time, no matter how it is configured or tuned","A single load generator is bounded by its own finite resources (CPU cycles to run scripting logic, memory per VU, available ephemeral ports\u002Fsockets, and NIC bandwidth), which is why very high virtual-user counts require distributing the generation across multiple machines.",{"id":146,"topic":9,"difficulty":129,"body":147,"options":148,"correct_key":133,"explanation":157},"019ff6e3-95d7-7e9e-8f77-ba9d0fa6cdca","In a distributed load generation architecture, what is the general role of the coordinator (controller) node?",[149,151,153,155],{"key":133,"text":150},"It orchestrates workers: starts\u002Fstops them, distributes the test plan, aggregates results",{"key":136,"text":152},"It is the only node that actually sends requests to the system under test, while every worker simply idles and does nothing throughout the run",{"key":139,"text":154},"It replaces the need for any monitoring of the system under test during the run",{"key":142,"text":156},"It automatically rewrites the test script to remove any bugs found by the workers","The coordinator distributes the workload definition to worker nodes, controls the test lifecycle (start\u002Fstop\u002Framp), and aggregates the metrics each worker reports back — the actual traffic generation happens on the workers.",{"id":159,"topic":9,"difficulty":160,"body":161,"options":162,"correct_key":142,"explanation":171},"019ff6e3-95d9-7598-a480-e989b88f1faa",2,"In Locust's master-worker mode, which command correctly starts the master process?",[163,165,167,169],{"key":133,"text":164},"locust -f locustfile.py --node-type=master",{"key":136,"text":166},"locust -f locustfile.py --coordinator",{"key":139,"text":168},"locust -f locustfile.py --controller",{"key":142,"text":170},"locust -f locustfile.py --master","Locust uses the `--master` flag to start a process in master mode, which then waits for worker processes (started with `--worker`) to connect before distributing load generation across them.",{"id":173,"topic":9,"difficulty":160,"body":174,"options":175,"correct_key":136,"explanation":184},"019ff6e3-95da-7b10-976e-673eddf948de","When starting a Locust worker process that must connect to a master running on host `10.0.0.5`, which flag correctly points the worker to that master?",[176,178,180,182],{"key":133,"text":177},"locust -f locustfile.py --worker --target-host=10.0.0.5",{"key":136,"text":179},"locust -f locustfile.py --worker --master-host=10.0.0.5",{"key":139,"text":181},"locust -f locustfile.py --worker --connect=10.0.0.5",{"key":142,"text":183},"locust -f locustfile.py --worker --upstream=10.0.0.5","Locust workers use `--master-host` (with the default port, or `--master-port` if it differs) to specify where the master process is running so they can register and receive their share of the workload.",{"id":186,"topic":9,"difficulty":160,"body":187,"options":188,"correct_key":133,"explanation":197},"019ff6e3-95dc-7b8d-8033-9d274fa04e9d","Why must the load generator machine's own CPU and network usage be monitored during a distributed load test, not just the system under test?",[189,191,193,195],{"key":133,"text":190},"A saturated generator cannot produce the intended load, silently invalidating results",{"key":136,"text":192},"Monitoring the load generator machine is required by law in most countries that regulate performance testing activities",{"key":139,"text":194},"The generator's CPU usage directly becomes part of the system under test's reported response time",{"key":142,"text":196},"Generators never consume meaningful CPU or bandwidth, so this monitoring is only a formality","If the load generator itself becomes CPU- or network-bound, it cannot issue requests at the intended rate; the test would then be measuring the generator's limits rather than the target system's behavior, giving misleadingly optimistic results.",{"id":199,"topic":9,"difficulty":160,"body":200,"options":201,"correct_key":136,"explanation":210},"019ff6e3-95dd-7a30-b590-36cef638aa4f","Why is it generally recommended NOT to run the load generator on the exact same host as the system under test?",[202,204,206,208],{"key":133,"text":203},"Because load testing tools refuse to start if the target hostname resolves to localhost",{"key":136,"text":205},"Because the generator and the system under test would compete for the same CPU, memory and network resources, contaminating the results",{"key":139,"text":207},"Because it would make the test run faster than any distributed setup, which is considered unrealistic",{"key":142,"text":209},"Because HTTP requests cannot be sent to `localhost` or `127.0.0.1` by most load testing tools","Colocating the generator and the target means they share and compete for the same hardware resources, so a slowdown could come from the generator starving the target (or vice versa) rather than reflecting real-world behavior — this contaminates the measurement.",{"fields":212,"seniorities":427,"interview_shapes":428,"locales":433,"oauth":435,"question_count":438,"coach_enabled":439,"jd_match_enabled":439},[213,238,258,275,299,312,331,350,372,381,396,418],{"key":214,"name_tr":215,"name_en":215,"sort":129,"specializations":216},"backend","Backend",[217,220,223,226,229,232,235],{"key":218,"name":219,"field":214},"general","Genel",{"key":221,"name":222,"field":214},"go","Go",{"key":224,"name":225,"field":214},"python","Python",{"key":227,"name":228,"field":214},"java","Java",{"key":230,"name":231,"field":214},"csharp","C#\u002F.NET",{"key":233,"name":234,"field":214},"nodejs","Node.js",{"key":236,"name":237,"field":214},"php","PHP",{"key":239,"name_tr":240,"name_en":240,"sort":160,"specializations":241},"frontend","Frontend",[242,243,246,249,252,255],{"key":218,"name":219,"field":239},{"key":244,"name":245,"field":239},"javascript","JavaScript",{"key":247,"name":248,"field":239},"typescript","TypeScript",{"key":250,"name":251,"field":239},"react","React",{"key":253,"name":254,"field":239},"vue","Vue",{"key":256,"name":257,"field":239},"angular","Angular",{"key":259,"name_tr":260,"name_en":260,"sort":261,"specializations":262},"fullstack","Fullstack",3,[263,264,265,266,267,268,269,270,271,272,273,274],{"key":218,"name":219,"field":259},{"key":221,"name":222,"field":214},{"key":224,"name":225,"field":214},{"key":227,"name":228,"field":214},{"key":230,"name":231,"field":214},{"key":233,"name":234,"field":214},{"key":236,"name":237,"field":214},{"key":244,"name":245,"field":239},{"key":247,"name":248,"field":239},{"key":250,"name":251,"field":239},{"key":253,"name":254,"field":239},{"key":256,"name":257,"field":239},{"key":276,"name_tr":277,"name_en":277,"sort":278,"specializations":279},"devops-cloud","DevOps \u002F Cloud",4,[280,281,284,287,290,293,296],{"key":218,"name":219,"field":276},{"key":282,"name":283,"field":276},"aws","AWS",{"key":285,"name":286,"field":276},"gcp","GCP",{"key":288,"name":289,"field":276},"azure","Azure",{"key":291,"name":292,"field":276},"kubernetes","Kubernetes",{"key":294,"name":295,"field":276},"terraform","Terraform",{"key":297,"name":298,"field":276},"linux","Linux",{"key":300,"name_tr":301,"name_en":301,"sort":302,"specializations":303},"ai-engineer","AI Engineer",5,[304,305,306,309],{"key":218,"name":219,"field":300},{"key":224,"name":225,"field":300},{"key":307,"name":308,"field":300},"llm-rag","LLM\u002FRAG",{"key":310,"name":311,"field":300},"mlops","MLOps",{"key":313,"name_tr":314,"name_en":315,"sort":316,"specializations":317},"database","Veritabanı","Database",6,[318,319,322,325,328],{"key":218,"name":219,"field":313},{"key":320,"name":321,"field":313},"postgresql","PostgreSQL",{"key":323,"name":324,"field":313},"mysql","MySQL",{"key":326,"name":327,"field":313},"mongodb","MongoDB",{"key":329,"name":330,"field":313},"redis","Redis",{"key":332,"name_tr":333,"name_en":334,"sort":335,"specializations":336},"mobile","Mobil","Mobile",7,[337,338,341,344,347],{"key":218,"name":219,"field":332},{"key":339,"name":340,"field":332},"ios-swift","iOS (Swift)",{"key":342,"name":343,"field":332},"android-kotlin","Android (Kotlin)",{"key":345,"name":346,"field":332},"flutter","Flutter",{"key":348,"name":349,"field":332},"react-native","React Native",{"key":351,"name_tr":352,"name_en":353,"sort":354,"specializations":355},"security","Güvenlik","Security",8,[356,357,360,363,366,369],{"key":218,"name":219,"field":351},{"key":358,"name":359,"field":351},"appsec","AppSec",{"key":361,"name":362,"field":351},"offensive-pentest","Offensive \u002F Pentest",{"key":364,"name":365,"field":351},"cloud-security","Cloud Security",{"key":367,"name":368,"field":351},"devsecops","DevSecOps",{"key":370,"name":371,"field":351},"blue-team-incident","Blue Team \u002F Incident",{"key":5,"name_tr":373,"name_en":6,"sort":374,"specializations":375},"QA \u002F Test Otomasyonu",9,[376,377,378,379,380],{"key":218,"name":219,"field":5},{"key":124,"name":125,"field":5},{"key":121,"name":122,"field":5},{"key":118,"name":119,"field":5},{"key":114,"name":115,"field":5},{"key":382,"name_tr":383,"name_en":383,"sort":384,"specializations":385},"data-engineer","Data Engineer",10,[386,387,390,393],{"key":218,"name":219,"field":382},{"key":388,"name":389,"field":382},"pipelines-etl","Pipelines \u002F ETL",{"key":391,"name":392,"field":382},"streaming","Streaming",{"key":394,"name":395,"field":382},"warehousing","Warehousing",{"key":397,"name_tr":398,"name_en":399,"sort":400,"specializations":401},"game-dev","Oyun Geliştirme","Game Development",11,[402,403,406,409,412,415],{"key":218,"name":219,"field":397},{"key":404,"name":405,"field":397},"unity-csharp","Unity (C#)",{"key":407,"name":408,"field":397},"unreal-cpp","Unreal (C++)",{"key":410,"name":411,"field":397},"gameplay","Gameplay",{"key":413,"name":414,"field":397},"graphics-rendering","Graphics \u002F Rendering",{"key":416,"name":417,"field":397},"multiplayer-netcode","Multiplayer \u002F Netcode",{"key":419,"name_tr":420,"name_en":420,"sort":421,"specializations":422},"ml-engineer","ML Engineer",12,[423,424],{"key":218,"name":219,"field":419},{"key":425,"name":426,"field":419},"classical-ml","Classical ML",[14,15,16],{"junior":429,"mid":431,"senior":432},{"questions":430,"median_sec":3},20,{"questions":430,"median_sec":3},{"questions":430,"median_sec":3},[434,10],"tr",[436,437],"google","github",27600,true]