Coding Rounds for QA and SDET
Crack the QA coding round
Real questions from QA and SDET interviews. Write code, run it in the browser terminal, and submit to hidden tests for a score. JavaScript, TypeScript, Java, SQL, Playwright, API testing and framework design.
Basic questions freePro: ₹99/month, first month free with any course
Your progress
- Tried
- 0
- Avg best
- 0
- Tracks
- 7
Saved in this browser.
This week's top coders
Solve questions to get your profile card here. Top 3 earn a Top Coder label.
Loading coders…
Question bank
Pick a track, then filter by level or what you haven't solved yet.
- FreeReverse a string without reverse()JavaScriptStrings5 min
- FreeCheck if a string is a palindromeJavaScriptStrings7 min
- FreeCount occurrences of each characterJavaScriptStrings8 min
- FreeFind duplicate elements in an arrayJavaScriptArrays7 min
- FreeFind the second largest numberJavaScriptArrays8 min
- FreeCheck if two strings are anagramsJavaScriptStrings7 min
- FreeFirst non-repeating characterJavaScriptStrings8 min
- FreeFind the missing number from 1 to nJavaScriptArrays6 min
- FreeRemove duplicates while keeping orderJavaScriptArrays5 min
- FreeFlatten a nested arrayJavaScriptArrays8 min
- FreeGroup API responses by status codeJavaScriptAPI data8 min
- FreeValidate an API user response (TypeScript)TypeScriptAPI data10 min
- FreeSecond highest salarySQLAggregation6 min
- FreeFind duplicate customer emailsSQLData quality6 min
- FreeCustomers who never placed an orderSQLJoins7 min
- FreeEmployees earning above their team averageSQLSubqueries8 min
- FreeCount open bugs by severitySQLAggregation5 min
- FreeFailed tests per suiteSQLAggregation6 min
- FreeFind records with missing emailsSQLData quality4 min
- FreeTotal spend per customerSQLJoins7 min
- FreeOrders with no payment recordSQLData quality6 min
- IntermediateGroup test results by statusJavaScriptObjects10 min
- IntermediateRetry a flaky async functionJavaScriptAsync12 min
- IntermediateDeep equality check for API responsesJavaScriptObjects15 min
- IntermediateParse a URL query stringJavaScriptStrings10 min
- IntermediateTop K most frequent error messagesJavaScriptMaps12 min
- AdvancedImplement debounceJavaScriptAsync15 min
- AdvancedRun async tasks with a concurrency limitJavaScriptAsync20 min
- IntermediateValidate a paginated API responseTypeScriptTypes12 min
- AdvancedBuild a test-data builderTypeScriptPatterns15 min
- IntermediateThird-highest distinct salary with DENSE_RANKSQLWindow functions8 min
- IntermediateHighest-paid employee in each teamSQLWindow functions10 min
- IntermediateAverage days to close bugs per moduleSQLDates10 min
- AdvancedFind flaky testsSQLAggregation12 min
- AdvancedRunning total of daily revenueSQLWindow functions12 min
- AdvancedOrders whose payments don't match the totalSQLData quality12 min
- IntermediateSplit an array into batchesJavaScriptArrays8 min
- IntermediateLongest substring without repeating charactersJavaScriptStrings15 min
- IntermediateValidate balanced bracketsJavaScriptStacks10 min
- IntermediateRotate an array by k stepsJavaScriptArrays8 min
- IntermediateTwo sumJavaScriptMaps10 min
- IntermediateMerge two sorted arraysJavaScriptArrays10 min
- IntermediateMask emails and card numbers in logsJavaScriptRegex12 min
- IntermediateCompare version numbersJavaScriptStrings10 min
- AdvancedDiff two API responsesJavaScriptObjects18 min
- AdvancedMemoize an expensive functionJavaScriptClosures12 min
- AdvancedBuild a tiny event emitterJavaScriptPatterns15 min
- AdvancedPoll until a condition is trueJavaScriptAsync15 min
- AdvancedImplement an LRU cacheJavaScriptData structures20 min
- IntermediateGeneric groupByTypeScriptGenerics10 min
- IntermediateParse test environment config safelyTypeScriptTypes12 min
- AdvancedResult type for safe API callsTypeScriptTypes15 min
- IntermediateOrder count and revenue by statusSQLAggregation6 min
- IntermediateProducts never orderedSQLJoins7 min
- AdvancedOrders whose items don't add upSQLData quality12 min
- IntermediateUnits sold per categorySQLJoins8 min
- IntermediateEmployee with manager name (self join)SQLJoins8 min
- IntermediateOpen high-severity bugs per moduleSQLFiltering7 min
- IntermediatePass rate per test suiteSQLAggregation8 min
- AdvancedSlowest test in each suiteSQLWindow functions10 min
- AdvancedEach customer's latest orderSQLWindow functions10 min
- IntermediateDuplicate product lines in an orderSQLData quality7 min
- IntermediateOrders pointing to missing customersSQLData quality6 min
- AdvancedSalary difference from team averageSQLWindow functions10 min
- AdvancedDay-over-day order changeSQLWindow functions14 min
- IntermediateMost active users in the audit logSQLAggregation7 min
- AdvancedDeactivated customers who still orderedSQLData quality9 min
- FreePlaywright: log in with user-facing locatorsPlaywrightLocators6 min
- IntermediatePlaywright: read the error messagePlaywrightAssertions8 min
- IntermediatePlaywright: extract data from a tablePlaywrightTables10 min
- IntermediatePlaywright: click a button inside the right rowPlaywrightLocators10 min
- IntermediatePlaywright: catch a toast without sleepingPlaywrightWaits8 min
- IntermediatePlaywright: verify the cart totalPlaywrightAssertions10 min
- AdvancedPlaywright: write a Page ObjectPlaywrightPage Object Model15 min
- AdvancedPlaywright: collect items across pagesPlaywrightPagination15 min
- FreeAPI: health-check endpointAPI testingStatus codes5 min
- IntermediateAPI: create a user and verify itAPI testingCRUD10 min
- IntermediateAPI: log in and call a protected endpointAPI testingAuthentication10 min
- IntermediateAPI: fetch every page of resultsAPI testingPagination12 min
- AdvancedAPI: retry on rate limitingAPI testingResilience12 min
- AdvancedAPI: validate a response against a schemaAPI testingContract testing18 min
- FreeFramework: load CSV test dataFramework designData-driven tests8 min
- IntermediateFramework: environment config with overridesFramework designConfiguration12 min
- IntermediateFramework: summarise a test runFramework designReporting10 min
- AdvancedFramework: filter tests by tagsFramework designTest selection15 min
- AdvancedFramework: fixtures with setup and teardownFramework designFixtures18 min
- FreeJava: reverse a string without StringBuilder.reverse()JavaStrings5 min
- FreeJava: count vowels in a stringJavaStrings5 min
- FreeJava: second largest number in an arrayJavaArrays7 min
- FreeJava: character frequency with a MapJavaCollections8 min
- IntermediateJava: check if two strings are anagramsJavaStrings8 min
- IntermediateJava: first non-repeating characterJavaCollections8 min
- IntermediateJava: remove duplicates keeping orderJavaCollections6 min
- IntermediateJava Streams: names of failed testsJavaStreams8 min
- IntermediateJava: balanced brackets with a stackJavaStacks10 min
- AdvancedJava: group test cases by statusJavaStreams12 min
- AdvancedJava: retry a flaky actionJavaFramework utilities12 min
- AdvancedJava: LRU cacheJavaCollections15 min
About QA coding rounds
Short coding questions of the kind QA and SDET interviews ask. You write code in the browser, run it, and hidden tests check your answer straight away.
Who it is for
- Manual testers facing their first coding round
- Automation testers practising JavaScript, TypeScript, Java or SQL questions
- SDET candidates warming up with Playwright-style and API-style tasks
What you need first
- Basic syntax in one language: JavaScript, TypeScript, Java or SQL
- No install: code runs in your browser (Java's first run takes 10–20 seconds to load)
- Sign in only to appear on the coders wall and daily leaderboard
Good to know
- Beginner questions are free; Intermediate and Advanced need Coding Rounds Pro or the free month that comes with a course purchase
- Your personal progress is saved in this browser, so it does not follow you to another device
- Playwright and API questions run against practice mocks, not real websites
Related resources
Your next step
Coding rounds: common questions
1.Do I need to install anything?
2.How is my answer checked?
3.Which questions are free?
4.Is my progress saved?
Preparing for this interview?
DSA for SDET Interviews
8 practical lessons in about 60 minutes: the data structures and coding patterns SDET interviews actually ask, explained in Java with tester-friendly examples. Big-O, strings, arrays and hash maps, two pointers and sliding window, stacks and queues, recursion and sorting, and a timed mock round you can practise again and again.
Start the free courseC# rounds are coming next. Your progress is saved in this browser.
