From Lambda to Launch Your AWS Developer Prep Starts Now

Take on 25 practice questions across four AWS Developer domains.
No Credit Card Required
HOW TO PREPARE

Everything You Need to Know First

Warm-up topics before the test.
  • Programming Fundamentals: Comfort reading and writing code in at least one language, such as Python, JavaScript, or Java.
  • Core AWS Services: Familiarity with Lambda, API Gateway, DynamoDB, S3, and IAM.
  • CI/CD and Deployment Basics: General understanding of how code is built, tested, and deployed.
PRACTICE TEST

Put Your Knowledge to the Test

25 multiple-choice questions, including ones built around command output
A Lambda function loses access to a public third-party API after being attached to IPv4-only private subnets in a VPC. The VPC provides internet egress through a zonal NAT gateway, and security groups, network ACLs, and DNS are configured correctly. What should the developer verify?
That the function uses a public subnet, which assigns it a public IP address
That the private subnets route 0.0.0.0/0 to a NAT gateway in a public subnet
That the function's timeout is long enough to establish internet connections
That the execution role includes the AWSLambdaBasicExecutionRole managed policy
B
VPC-attached functions never receive public IP addresses, so in this design outbound IPv4 traffic must route through the NAT gateway, whose public subnet routes to an internet gateway. Placing the function in a public subnet does not help, and timeouts and logging permissions do not create a network route. Other designs, such as IPv6 with an egress-only internet gateway, use different routes.
Troubleshooting and Optimization
25
Select One
Clients calling an API Gateway REST API intermittently receive HTTP 429 Too Many Requests responses during traffic spikes. What does this indicate, and how should clients respond?
Requests exceed throttling limits; retry with exponential backoff and jitter
The Lambda integration timed out; increase the function timeout
The caller lacks IAM permission; attach execute-api:Invoke to the caller's role
The integration returned a server error; enable detailed CloudWatch metrics
A
API Gateway returns 429 when requests exceed account, stage, method, or usage plan throttling limits. Clients should retry with backoff, and the team can request higher limits if needed. Timeouts return 504, and missing permissions return 403.
Troubleshooting and Optimization
24
Select One
A CPU-bound Lambda function runs slowly at 512 MB of memory. Which configuration change is most likely to reduce its duration?
Increase the function timeout from 30 seconds to 5 minutes
Enable provisioned concurrency on the function's alias
Move the function into a VPC with a NAT gateway
Increase the memory setting
D
Lambda allocates CPU in proportion to memory, so more memory gives a CPU-bound function more compute. A longer timeout only allows more time, provisioned concurrency reduces cold starts, and a VPC does not add CPU.
Troubleshooting and Optimization
23
Select One
A request flows from API Gateway to a Lambda function, then to DynamoDB and an external HTTP API. Users report slow responses, and the developer must find which downstream call adds the latency. Which service shows this?
CloudWatch Logs Insights queries on the function's log group
CloudTrail data events for the DynamoDB table
AWS X-Ray with active tracing and an instrumented SDK
CloudWatch Lambda metrics for Duration and Errors
C
X-Ray traces a request across services and shows the time spent in each downstream call as subsegments. Logs, CloudTrail events, and aggregate metrics do not break down one request's latency by dependency.
Troubleshooting and Optimization
22
Select One
A CloudFormation template contains resources of type AWS::Serverless::Function. Which top-level declaration must the template include for these resources to deploy?
AWSTemplateFormatVersion: 2016-10-31 set to the SAM release date
Transform: AWS::Serverless-2016-10-31
Metadata: AWS::ServerlessRepo::Application with the app details
Nothing, because CloudFormation supports these types natively
B
The SAM transform tells CloudFormation to expand serverless resource types into standard resources. AWSTemplateFormatVersion only accepts 2010-09-09, and Metadata does not enable the transform.
Deployment
21
Select One
An Elastic Beanstalk application must deploy new versions at full capacity. New instances should launch in a temporary Auto Scaling group, and a failed deployment should affect only those new instances. Which deployment policy fits?
Immutable
Rolling
All at once
Rolling with additional batch
A
Immutable deployments launch a full set of new instances in a temporary Auto Scaling group, so a failure only terminates the new instances. Rolling with additional batch also keeps capacity but updates the existing instances in batches.
Deployment
20
Select One
A CodeBuild project uses the following buildspec. What does CodeBuild upload as the build output artifact? version: 0.2 phases: build: commands: - npm ci - npm test - npm run build artifacts: files: - '**/*' base-directory: dist
The entire source repository, including node_modules
Only the files listed in package.json
Nothing, because the buildspec has no post_build phase
All files under dist, with paths relative to dist
D
The artifacts section selects output files, and base-directory makes paths relative to that directory. Phases define commands, and a post_build phase is optional.
Deployment
19
Select One
A Lambda deployment through CodeDeploy must shift 10% of traffic to the new version, wait 5 minutes, and then shift the remaining 90% if no alarms fire. Which deployment configuration fits?
CodeDeployDefault.LambdaLinear10PercentEvery1Minute
CodeDeployDefault.LambdaAllAtOnce
CodeDeployDefault.LambdaCanary10Percent5Minutes
CodeDeployDefault.OneAtATime
C
A canary configuration shifts one increment and then the rest after the interval. Linear shifts equal increments repeatedly, AllAtOnce shifts everything immediately, and OneAtATime is an EC2/on-premises configuration.
Deployment
18
Select One
A developer wants to run a SAM-defined Lambda function once on a laptop with a sample event file before deploying anything. Which command does this?
sam deploy --guided
sam local invoke -e event.json
sam sync --watch
sam build --use-container
B
sam local invoke runs a function once in a local container with the given event. sam build only prepares artifacts, while sam deploy and sam sync push changes to AWS.
Deployment
17
Select One
A Lambda alias named live points to version 4. The team wants 10% of invocations through live to run version 5 while the rest stay on version 4. What should the developer do?
Add version 5 to the alias with a weight of 0.1
Point the alias at $LATEST and set the function's reserved concurrency to 10%
Create a second alias for version 5 and ask 10% of callers to switch to it
Publish version 5 and delete version 4 so the alias shifts traffic automatically
A
An alias routing configuration sends a weighted share of traffic to a second version. Aliases with weighted routing cannot point to $LATEST, and reserved concurrency limits executions rather than splitting traffic.
Deployment
16
Select One
Twenty Lambda functions share non-secret configuration values such as feature flags and endpoint URLs. The team wants a hierarchical, versioned store at no additional charge for standard values. Which service fits?
AWS Secrets Manager with one secret per configuration value
A JSON file in an S3 bucket that each function downloads at startup
Systems Manager Parameter Store standard parameters
Environment variables duplicated in each function's configuration
C
Parameter Store offers hierarchical paths, versioning, and standard parameters at no additional charge. Secrets Manager charges per secret and targets secrets, and duplicated environment variables are hard to keep consistent.
Security
15
Select One
A developer must encrypt 10 MB files on the client side using a KMS key. What is the correct approach?
Call the KMS Encrypt API with each 10 MB file as the plaintext
Split each file into 4 KB chunks and call KMS Encrypt for every chunk
Use the KMS key ARN as the symmetric key in a local AES library
Call GenerateDataKey, encrypt locally, and store the encrypted data key
D
Envelope encryption uses a data key for the payload and stores only its encrypted copy next to the ciphertext. KMS Encrypt accepts at most 4 KB of plaintext, and a key ARN is an identifier, not key material.
Security
14
Select One
An application successfully calls s3:GetObject on objects encrypted with SSE-KMS using a customer managed key, but the request fails with an access denied error from KMS. Which permission is missing?
kms:GenerateDataKey
kms:Decrypt
s3:GetObjectVersion
s3:GetEncryptionConfiguration
B
Reading an SSE-KMS object requires kms:Decrypt on the key in addition to s3:GetObject. kms:GenerateDataKey is required when uploading, not downloading, and the S3 permissions listed are unrelated to key use.
Security
13
Select One
Signed-in users of a mobile app must upload photos directly to S3, each into a prefix that only they can write to. The app should use temporary AWS credentials. Which approach fits?
An identity pool role scoped by the identity ID policy variable
One IAM user per app user, with access keys delivered at sign-up
A Cognito user pool group that grants s3:PutObject on the bucket
A bucket policy that trusts the user pool's app client ID for every signed-in user
A
Identity pools exchange sign-in tokens for temporary AWS credentials, and the identity ID policy variable ${cognito-identity.amazonaws.com:sub} limits each user to their own prefix. User pools authenticate users but do not issue AWS credentials on their own, and per-user IAM users do not scale.
Security
12
Select One
Users sign in to a mobile app with an Amazon Cognito user pool. An API Gateway REST API must accept requests only from signed-in users, using the tokens they already have. What should the developer configure?
IAM authorization, with one shared access key embedded in the mobile app
An API key and usage plan distributed with the application
A Cognito user pool authorizer on the API methods
A resource policy that allows requests from the mobile carrier's IP ranges
C
A user pool authorizer validates the tokens issued to signed-in users. API keys are for metering and usage plans rather than authentication, and embedded access keys or IP rules do not identify users.
Security
11
Select One
A browser application must upload files directly to a private S3 bucket. Users must not receive AWS credentials, and each upload should be limited to one object key for 10 minutes. What should the backend provide?
Temporary credentials from STS for the backend's own IAM role
A bucket policy that allows uploads from the application's domain
Public write access on a dedicated uploads prefix
A presigned PUT URL for that key, valid for 10 minutes
D
A presigned PUT URL authorizes an upload to one bucket and key without giving the browser any AWS credentials. It is valid until it expires, or until the signing credentials expire if that is sooner, and it can be reused within that window; it is not single-use. STS credentials would break the requirement that users receive no credentials, and Origin or Referer headers are not a reliable identity check.
Security
10
Select One
A Lambda function must read one secret from AWS Secrets Manager. The secret is encrypted with a customer managed KMS key. How should access be granted?
Add a resource-based policy to the function that names the secret
Allow GetSecretValue and kms:Decrypt in the execution role
Copy the secret value into an environment variable encrypted with KMS
Store an IAM user's access keys in environment variables and use them in code
B
The execution role supplies the function's credentials, so it needs secretsmanager:GetSecretValue on the secret and kms:Decrypt on the customer managed key. A function's resource-based policy controls who can invoke it, not what it can access.
Security
9
Select One
Consumers take up to 5 minutes to process an SQS message. The queue's visibility timeout is 30 seconds, and messages are often processed twice. What should the developer change?
Set the visibility timeout above the maximum processing time
Enable long polling by setting ReceiveMessageWaitTimeSeconds to 20
Increase the message retention period from 4 days to 14 days
Convert the queue to a delay queue with a 5-minute delivery delay
A
If processing outlasts the visibility timeout, the message becomes visible again and another consumer receives it. Long polling, retention, and delivery delays do not control that reappearance.
Development with AWS Services
8
Select One
A Lambda function receives order events from EventBridge, and events can occasionally be delivered more than once. The function charges customers through a payment API that accepts idempotency keys. An invocation can fail after the charge succeeds but before the function records completion. Which design prevents duplicate charges?
Increase the function timeout so that each event finishes on the first attempt
Set the function's reserved concurrency to 1 so that events run one at a time
Set the maximum retry attempts for asynchronous invocation to 0
Send the payment API an idempotency key derived from the order ID
D
Reusing the same order-based key on every attempt lets the payment service recognize a retry and return the original result instead of charging again, even when the first response was lost. A separate database marker cannot make the external charge atomic: written before the charge, a failed charge is skipped; written after, a crash causes a second charge. Tracking processing status durably, for example in DynamoDB, also helps recovery and avoids repeating completed work. Timeouts, concurrency limits, and disabling Lambda retries do not stop duplicate deliveries.
Development with AWS Services
7
Select One
A Step Functions Task state has this retry configuration. The task fails with ServiceUnavailable every time. What delays occur before each retry? "Retry": [ { "ErrorEquals": ["ServiceUnavailable"], "IntervalSeconds": 2, "MaxAttempts": 3, "BackoffRate": 2.0 } ]
2 seconds before each of the three retries
2, 4, and 6 seconds before the three retries
2, 4, and 8 seconds before the three retries
2 seconds, then the state fails without further retries
C
The first retry waits IntervalSeconds, and each later retry multiplies the previous delay by BackoffRate. MaxAttempts of 3 allows three retries, after which the error goes to a matching Catch or fails the state.
Development with AWS Services
6
Select One
An SQS-triggered Lambda function processes batches of 10 messages. When one message fails, all 10 are retried, and successful messages are processed again. Which two changes make Lambda retry only the failed messages?
Enable ReportBatchItemFailures on the event source mapping
Increase the queue's visibility timeout to six times the function timeout
Configure a dead-letter queue with maxReceiveCount set to 1
Return the failed message IDs in the batchItemFailures list
A
Partial batch responses need both the mapping setting and a response listing the failed IDs, so Lambda deletes the successful messages. A longer visibility timeout and a DLQ do not change which messages are retried, and throwing an exception fails the whole batch.
Development with AWS Services
5
Select Two
D
An application queries a DynamoDB global secondary index (GSI) and now requires strongly consistent reads for this access pattern. What should the developer do?
Set ConsistentRead to true on the Query against the GSI
Query the base table or an LSI with ConsistentRead
Scan the GSI with ConsistentRead set to true instead of querying it
Increase the provisioned read capacity of the GSI so that it keeps up with the base table
B
GSIs support only eventually consistent reads, and requesting ConsistentRead on a GSI returns a validation error. Base tables and local secondary indexes support strongly consistent reads.
Development with AWS Services
4
Select One
A DynamoDB Query reads 1,000 items that match its key condition. A FilterExpression then discards 990 of them, so only 10 items are returned. How is read capacity consumed?
Only the 10 returned items consume read capacity
No capacity is consumed because the filter runs before the read
Capacity is consumed at half the normal rate because filtering is server-side
Capacity is consumed for all 1,000 items that were read
D
A FilterExpression is applied after items are read, so it reduces the data returned but not the capacity consumed. To reduce reads, design keys or indexes so that the key condition selects fewer items.
Development with AWS Services
3
Select One
An application must debit one account item and credit another item in the same DynamoDB table, so that either both writes succeed or neither does. Which API should it use?
TransactWriteItems
BatchWriteItem with both PutRequest entries in one call
Two UpdateItem calls wrapped in a retry loop with exponential backoff
PartiQL ExecuteStatement calls issued one after the other
A
TransactWriteItems applies up to 100 actions as one all-or-nothing operation. BatchWriteItem can partially succeed, and separate calls or statements cannot guarantee atomicity.
Development with AWS Services
2
Select One
A developer must insert an order into a DynamoDB table only if no item with the same partition key already exists. Two application instances may try to insert the same order at the same moment. Which approach is correct?
Call GetItem, and call PutItem only if GetItem returns no item
Call UpdateItem with ReturnValues set to ALL_OLD and check the result afterward
PutItem with attribute_not_exists(pk) as a condition
Call BatchWriteItem so that DynamoDB rejects duplicate keys in the batch
C
A condition expression is evaluated atomically with the write, so a concurrent duplicate fails with ConditionalCheckFailedException. A separate read followed by a write leaves a race window, and BatchWriteItem does not support condition expressions.
Development with AWS Services
1
Select One
DOMAIN Question 01/00

0 of 0 answered
WHY HANDS-ON PRACTICE

Knowledge, Earned by Doing

The AWS Developer exam rewards knowing how services fit into your code, not memorized definitions.

Build Real Exam Speed

The exam gives you 130 minutes for 65 questions, an average of 120 seconds each. Repeated practice trains you to read a code or config snippet fast, so you're not re-tracing logic under time pressure.

Know Your Weak Domains

Review every question you missed and spot the topics that need more work. Better to find them here than on exam day.

Realistic Scenario Questions‍

Exam-style questions, that are a mix of development, security, deployment, and troubleshooting items.

Reduce Exam-Day Anxiety‍

Familiarity with multiple-choice format removes surprises, so nerves don't cost you marks.

Reinforce Through Repetition‍

Spaced repetition on frequently tested concepts, like Lambda, DynamoDB, and IAM permissions, moves them from look it up to just know it.

Benchmark Against a Passing Score‍

Compare your score with AWS's 720/1000 passing threshold and identify topics to review before exam-day.

HEAR FROM OUR LEARNERS

Real Learners. Real Results

Alhamdulillah 🙏! Thrilled to announce that I am now officially a Certified Kubernetes Administrator (CKA)! While Kubernetes, cluster orchestration, and container security are already central to my daily DevSecOps work, earning this certification is a great validation of those hands-on skills.Thanks to Mumshad Mannambeth and the KodeKloud team—their course and hands-on labs helped me a lot in preparing for this exam.The learning never stops! 🚀

Read Full Post
Imtiaz Ali
DevOps | SRE | Multi-Cloud | DevSecOps

Freshly certified: Certified Kubernetes Administrator (CKA)! 🚀Passing this hands-on, live-terminal exam was a great challenge. Paired with my AWS Certified DevOps Engineer – Professional, it reinforces my focus on bridging enterprise multi-account cloud governance with production-grade Kubernetes runtime operations.A special shoutout and big thank you to Mumshad Mannambeth, the KodeKloud team, and the Cloud Native Computing Foundation (CNCF) and Kubernetes (Official) community. The Certified Kubernetes Administrator (CKA) course was hands-down the best preparation for the live terminal environment! 🛠️Next stop: continuing to build resilient, developer-first platform foundations!

Read Full Post
Gaurav Dubey
Cloud Architect | Platform Engineer | AWS DevOps Pro | CKA

Cherishing one of my dreams - CKS Certified! ✨Last year, in October, when I cracked my CKA, my colleagues asked, “When is CKS?” 😂And I was like… bro. 😅Because it felt so much bigger. I also knew it wasn’t just Kubernetes anymore, but Kubernetes with a special layer of security - yeah, tightened Kubernetes.Back then, I used to look up to CKS like a child gazing at one of the stars in the sky.⭐Now, fast forward to today - I cleared it last week and officially became a Certified Kubernetes Security Specialist (CKS), thanks to the Cloud Native Computing Foundation (CNCF), The Linux Foundation and my company Aivar Innovations. 🎉That moment felt so special, and I’m incredibly grateful to all my colleagues, friends, and family for all the support. ❤️A mention of the resources I used: KodeKloud by Mumshad Mannambeth and Kim Wüstkamp’s CKS courses. I also had my colleagues supporting me with my doubts and anxieties before the exam. 😂Looking forward to applying everything I’ve learned in my work and continuing to grow in the Cloud Native and Kubernetes space. 🚀So, cheers to everyone who dreams, aspires, and inspires. Keep going and keep up the good work! 🥂And as I always say - God, keep it coming!! ✨

Read Full Post
Rima Sidique
DevOps Engineer | AI & DevOps Enthusiast

I've successfully passed CKA certification. Shout-out to Mumshad Mannambeth for his great CKA course and labs and to Omkar Shelke Killercoda CKA scenarios. Links: - https://lnkd.in/eZPVHJeR- https://lnkd.in/eEVyZdaZ

Read Full Post
Gabriel Rodríguez
DevSecOps Engineer

🎉 The Kubernetes journey continues… and this time, happy to say I’m officially a Kubestronaut! 🧑🚀🚀🎖️ 1 out of 242 in France and 1 out of 4217 worldwide!⏳✈️ It’s been quite a journey. From my early days working with Kubernetes, thanks to the opportunity Prof. Timur Friedman gave me to contribute to the EdgeNet project, to securing my internship as a DevOps Engineer at Sonos, Inc. — and fast-forward five years, here I am today, a Senior DevOps Engineer at Sonos, Inc. working extensively with Kubernetes everyday.💌 A special thank you to Jose Alfredo Alvarez Aldana for your support, guidance, and for everything you taught me along the way. I was really lucky to have the opportunity to work alongside you early in my journey. 🙏💯 A big thank you to Mumshad Mannambeth for building KodeKloud! The platform has been incredibly helpful throughout this journey, both for learning and preparing for the exams.And of course, shout out to all the people who supported, challenged, and inspired me along the way. ❤️Never give up 💪Keep smiling 😃

Read Full Post
Rima Sidique
DevOps Engineer | AI & DevOps Enthusiast

Alhamdulillah 🙏! Thrilled to announce that I am now officially a Certified Kubernetes Administrator (CKA)! While Kubernetes, cluster orchestration, and container security are already central to my daily DevSecOps work, earning this certification is a great validation of those hands-on skills.Thanks to Mumshad Mannambeth and the KodeKloud team—their course and hands-on labs helped me a lot in preparing for this exam.The learning never stops! 🚀

Read Full Post
Imtiaz Ali
DevOps | SRE | Multi-Cloud | DevSecOps

Freshly certified: Certified Kubernetes Administrator (CKA)! 🚀Passing this hands-on, live-terminal exam was a great challenge. Paired with my AWS Certified DevOps Engineer – Professional, it reinforces my focus on bridging enterprise multi-account cloud governance with production-grade Kubernetes runtime operations.A special shoutout and big thank you to Mumshad Mannambeth, the KodeKloud team, and the Cloud Native Computing Foundation (CNCF) and Kubernetes (Official) community. The Certified Kubernetes Administrator (CKA) course was hands-down the best preparation for the live terminal environment! 🛠️Next stop: continuing to build resilient, developer-first platform foundations!

Read Full Post
Gaurav Dubey
Cloud Architect | Platform Engineer | AWS DevOps Pro | CKA

Cherishing one of my dreams - CKS Certified! ✨Last year, in October, when I cracked my CKA, my colleagues asked, “When is CKS?” 😂And I was like… bro. 😅Because it felt so much bigger. I also knew it wasn’t just Kubernetes anymore, but Kubernetes with a special layer of security - yeah, tightened Kubernetes.Back then, I used to look up to CKS like a child gazing at one of the stars in the sky.⭐Now, fast forward to today - I cleared it last week and officially became a Certified Kubernetes Security Specialist (CKS), thanks to the Cloud Native Computing Foundation (CNCF), The Linux Foundation and my company Aivar Innovations. 🎉That moment felt so special, and I’m incredibly grateful to all my colleagues, friends, and family for all the support. ❤️A mention of the resources I used: KodeKloud by Mumshad Mannambeth and Kim Wüstkamp’s CKS courses. I also had my colleagues supporting me with my doubts and anxieties before the exam. 😂Looking forward to applying everything I’ve learned in my work and continuing to grow in the Cloud Native and Kubernetes space. 🚀So, cheers to everyone who dreams, aspires, and inspires. Keep going and keep up the good work! 🥂And as I always say - God, keep it coming!! ✨

Read Full Post
Rima Sidique
DevOps Engineer | AI & DevOps Enthusiast

I've successfully passed CKA certification. Shout-out to Mumshad Mannambeth for his great CKA course and labs and to Omkar Shelke Killercoda CKA scenarios. Links: - https://lnkd.in/eZPVHJeR- https://lnkd.in/eEVyZdaZ

Read Full Post
Gabriel Rodríguez
DevSecOps Engineer

🎉 The Kubernetes journey continues… and this time, happy to say I’m officially a Kubestronaut! 🧑🚀🚀🎖️ 1 out of 242 in France and 1 out of 4217 worldwide!⏳✈️ It’s been quite a journey. From my early days working with Kubernetes, thanks to the opportunity Prof. Timur Friedman gave me to contribute to the EdgeNet project, to securing my internship as a DevOps Engineer at Sonos, Inc. — and fast-forward five years, here I am today, a Senior DevOps Engineer at Sonos, Inc. working extensively with Kubernetes everyday.💌 A special thank you to Jose Alfredo Alvarez Aldana for your support, guidance, and for everything you taught me along the way. I was really lucky to have the opportunity to work alongside you early in my journey. 🙏💯 A big thank you to Mumshad Mannambeth for building KodeKloud! The platform has been incredibly helpful throughout this journey, both for learning and preparing for the exams.And of course, shout out to all the people who supported, challenged, and inspired me along the way. ❤️Never give up 💪Keep smiling 😃

Read Full Post
Rima Sidique
DevOps Engineer | AI & DevOps Enthusiast
FAQs

Frequently Asked Questions

Is this practice test free ? 

Yes! This practice test is completely free. You can take it as many times as you like to practice and assess your knowledge.

Do I need to install anything ? 

No. You don’t need to install anything. The practice test is completely browser-based, so you can start practicing directly online. 

What if I'm new to this domain?

That's completely fine , mock tests aren't just for the final week before your exam. Taking one early gives you a baseline: you'll see which topics you already grasp, which ones you've never encountered, and how the real exam frames its questions. Every attempt comes with detailed explanations for each answer, so even the questions you get wrong become a study guide. We'd suggest starting with one full mock test, reviewing the explanations carefully, then working through the linked learning material before attempting the next one. 

How closely does this mock test match the real exam?

The question style and pattern closely mirror the real certification exam, the way scenarios are framed, the answer options, and the level of reasoning required are all modelled on it. The main difference is length: this mock has 25 sample questions, while the actual exam typically presents 50-60 questions of this type. So treat this as a representative sample rather than a full-length simulation. The style will feel familiar on exam day; the stamina and time pressure of a longer paper is something you'll want to prepare for separately.