Pass Amazon AWS Certified DevOps Engineer - Professional DOP-C02 Exam in First Attempt Easily
Real Amazon AWS Certified DevOps Engineer - Professional DOP-C02 Exam Questions, Accurate & Verified Answers As Experienced in the Actual Test!

Verified by experts
2 products

You save $34.99

AWS Certified DevOps Engineer - Professional DOP-C02 Premium Bundle

  • Premium File 480 Questions & Answers
  • Last Update: Nov 4, 2026
  • Training Course 242 Lectures
$74.99 $109.98

Purchase Individually

  • Premium File

    480 Questions & Answers
    Last Update: Nov 4, 2026

    $76.99
    $69.99
  • Training Course

    242 Lectures

    $43.99
    $39.99

AWS Certified DevOps Engineer - Professional DOP-C02 Practice Test 15

Question 140

Newly launched Linux instances regularly lack the approved CloudWatch agent configuration until an operator logs in and fixes them.

What is the main operational consequence of the stated design gap?

  1. Manual inventory misses changed hosts and broad interactive access increases operational and security risk.
  2. Automatic destructive remediation without a high-risk gate can disconnect live workloads during a false-positive alert.
  3. One-time user data scripts cannot guarantee that configuration remains correct after subsequent manual edits.
  4. An unvalidated global configuration push can disable checkout even though the application binary is unchanged.

Explanation

Correct Answer

C:

One-time user data scripts cannot guarantee that configuration remains correct after subsequent manual edits. This outcome arises from the mechanism in the situation: State Manager maintains a declared configuration over time and reduces post-launch configuration drift in fleets. The corresponding mitigation is: Create Systems Manager State Manager associations that periodically enforce the expected agent and configuration document on managed nodes.

Incorrect Answers

A:

Manual inventory misses changed hosts and broad interactive access increases operational and security risk. That is a credible concern for inventory without ssh, normally addressed by: Collect Systems Manager Inventory through SSM-managed nodes and aggregate the reported package and application metadata. It is not the primary failure mechanism described here. The relevant exposure is: One-time user data scripts cannot guarantee that configuration remains correct after subsequent manual edits.

B:

Automatic destructive remediation without a high-risk gate can disconnect live workloads during a false-positive alert. That is a credible concern for ssm automation approval steps, normally addressed by: Use a Systems Manager Automation runbook with branching, prechecks and an explicit approval step for high-impact operations. It is not the primary failure mechanism described here. The relevant exposure is: One-time user data scripts cannot guarantee that configuration remains correct after subsequent manual edits.

D:

An unvalidated global configuration push can disable checkout even though the application binary is unchanged. That is a credible concern for appconfig progressive rollout, normally addressed by: Deploy validated configuration through AWS AppConfig with a gradual deployment strategy and CloudWatch alarm rollback. It is not the primary failure mechanism described here. The relevant exposure is: One-time user data scripts cannot guarantee that configuration remains correct after subsequent manual edits.

Question 141

A monthly spreadsheet shows security resources as compliant, but high-risk findings that appear between reviews remain unresolved for weeks.

What would most effectively mitigate the described operational weakness?

  1. Automate finding aggregation, risk-based alerting and tracked corrective ownership with Security Hub and AWS Config where appropriate.
  2. Correlate findings by stable finding IDs and resource identifiers and update existing incident records rather than always opening new ones.
  3. Use AWS Config resource recording and appropriate compliance rules, complementing CloudFormation drift detection for stack-managed resources.
  4. Enable VPC Flow Logs on relevant VPCs or interfaces with protected destinations and an analysis approach.

Explanation

Correct Answer

A:

Automate finding aggregation, risk-based alerting and tracked corrective ownership with Security Hub and AWS Config where appropriate. Continuous monitoring detects control drift and threats as they emerge instead of waiting for a periodic static report. The relevant operational proof is specific: A seeded high-severity violation creates an owned corrective action promptly and closure links to verified compliant resource state.

Incorrect Answers

B:

Correlate findings by stable finding IDs and resource identifiers and update existing incident records rather than always opening new ones. That would address security finding deduplication, because security integrations can reissue updates to the same finding; response tooling must distinguish state changes from new issues. However, the stated situation instead concerns continuous security posture reviews. Continuous monitoring detects control drift and threats as they emerge instead of waiting for a periodic static report.

C:

Use AWS Config resource recording and appropriate compliance rules, complementing CloudFormation drift detection for stack-managed resources. That would address config drift compliance, because config evaluates supported resource state against rules, while CloudFormation drift compares actual properties with declared stack templates. However, the stated situation instead concerns continuous security posture reviews. Continuous monitoring detects control drift and threats as they emerge instead of waiting for a periodic static report.

D:

Enable VPC Flow Logs on relevant VPCs or interfaces with protected destinations and an analysis approach. That would address vpc flow logs detection, because flow logs capture network-flow metadata such as source, destination, ports and action for supported traffic, not full application payloads. However, the stated situation instead concerns continuous security posture reviews. Continuous monitoring detects control drift and threats as they emerge instead of waiting for a periodic static report.

Question 142

A product team adds RDS Multi-AZ and expects its heavy reporting queries to be served automatically by the standby.

What is the best automation decision for this workload?

  1. Add read replicas or another suitable read-scaling path and direct read-only workloads to them, retaining Multi-AZ for failover.
  2. Design a separate regional recovery capability such as Aurora Global Database with tested secondary promotion and application reconnection.
  3. Enable a supported RDS Multi-AZ deployment and validate failover behavior using its database endpoint.
  4. Use DynamoDB global tables where suitable and design conflict handling and application routing for replicated multi-Region writes.

Explanation

Correct Answer

A:

Add read replicas or another suitable read-scaling path and direct read-only workloads to them, retaining Multi-AZ for failover. A traditional Multi-AZ standby supports availability and is not a general-purpose query endpoint, unlike designated read replicas. The relevant operational proof is specific: Read-only requests reach intended replica endpoints and the Multi-AZ failover test remains independent of reporting scale.

Incorrect Answers

B:

Design a separate regional recovery capability such as Aurora Global Database with tested secondary promotion and application reconnection. That would address aurora regional disaster availability, because intra-Region cluster failover does not automatically protect against region-wide loss, whereas cross-Region replication supports a regional recovery path. However, the stated situation instead concerns rds reader scaling distinction. A traditional Multi-AZ standby supports availability and is not a general-purpose query endpoint, unlike designated read replicas.

C:

Enable a supported RDS Multi-AZ deployment and validate failover behavior using its database endpoint. That would address rds multi az failover, because multi-AZ provides a synchronously replicated standby for availability; it is not a mechanism to increase read throughput. However, the stated situation instead concerns rds reader scaling distinction. A traditional Multi-AZ standby supports availability and is not a general-purpose query endpoint, unlike designated read replicas.

D:

Use DynamoDB global tables where suitable and design conflict handling and application routing for replicated multi-Region writes. That would address dynamodb global tables, because global tables replicate writes across participating Regions and support local read/write access, but cross-Region convergence is asynchronous. However, the stated situation instead concerns rds reader scaling distinction. A traditional Multi-AZ standby supports availability and is not a general-purpose query endpoint, unlike designated read replicas.

Question 143

A single supported EC2 instance occasionally fails an underlying system status check while its application data resides on durable EBS volumes.

Which evidence most directly demonstrates that the requirement has been met?

  1. A sustained simulated error rate changes the alarm to ALARM and the on-call target receives a linked notification.
  2. An applicable planned maintenance notice reaches the mapped owner with service and resource context before the event window.
  3. A test or eligible failure invokes the recovery path and the instance returns to passing system status checks.
  4. An eligible production termination triggers one ticket and a nonmatching development event triggers none.

Explanation

Correct Answer

C:

A test or eligible failure invokes the recovery path and the instance returns to passing system status checks. It directly verifies the change: Configure a CloudWatch system status-check alarm with supported EC2 recovery action after validating instance eligibility. The test matters because eC2 recover actions can restore an impaired underlying host for supported instances while retaining attached EBS storage and instance identity semantics.

Incorrect Answers

A:

A sustained simulated error rate changes the alarm to ALARM and the on-call target receives a linked notification. That result would help prove cloudwatch alarm actions, where the relevant action is: Create a CloudWatch alarm on a meaningful error-rate metric and connect its ALARM state to an SNS notification or approved response workflow. It does not establish this case's required outcome. For auto recovery ec2 status, the decisive verification is: A test or eligible failure invokes the recovery path and the instance returns to passing system status checks.

B:

An applicable planned maintenance notice reaches the mapped owner with service and resource context before the event window. That result would help prove health event operations, where the relevant action is: Send relevant AWS Health events through EventBridge to owner-specific notification and operations workflows. It does not establish this case's required outcome. For auto recovery ec2 status, the decisive verification is: A test or eligible failure invokes the recovery path and the instance returns to passing system status checks.

D:

An eligible production termination triggers one ticket and a nonmatching development event triggers none. That result would help prove eventbridge event patterns, where the relevant action is: Use an EventBridge rule with event-pattern filtering by source, event detail, account or tags and route matches to a controlled target. It does not establish this case's required outcome. For auto recovery ec2 status, the decisive verification is: A test or eligible failure invokes the recovery path and the instance returns to passing system status checks.

Question 144

A worker fleet has high message receive counts but little progress, and one payload repeatedly returns to the front of processing.

Which failure is most directly exposed by leaving the problem unresolved?

  1. Treating this as an application-code bug can delay recovery while the service lacks enough healthy tasks.
  2. Scaling the API tier alone can create more database connections and worsen the original incident.
  3. Unbounded visibility retries consume consumer capacity and allow valid customer jobs to starve.
  4. Blindly adding worker nodes increases cost but does not resolve invalid image tags or inaccessible registries.

Explanation

Correct Answer

C:

Unbounded visibility retries consume consumer capacity and allow valid customer jobs to starve. This outcome arises from the mechanism in the situation: SQS may redeliver messages after visibility timeout, so poison payloads must be handled separately from healthy work. The corresponding mitigation is: Inspect message processing errors and visibility timeout behavior, then isolate repeated failures in a DLQ for analysis.

Incorrect Answers

A:

Treating this as an application-code bug can delay recovery while the service lacks enough healthy tasks. That is a credible concern for ecs task startup failure, normally addressed by: Inspect stopped-task reasons, ECR connectivity and the ECS task execution role's image-pull permissions. It is not the primary failure mechanism described here. The relevant exposure is: Unbounded visibility retries consume consumer capacity and allow valid customer jobs to starve.

B:

Scaling the API tier alone can create more database connections and worsen the original incident. That is a credible concern for rds connection exhaustion, normally addressed by: Correlate RDS DatabaseConnections, application connection pools and request concurrency to determine the saturation mechanism. It is not the primary failure mechanism described here. The relevant exposure is: Unbounded visibility retries consume consumer capacity and allow valid customer jobs to starve.

D:

Blindly adding worker nodes increases cost but does not resolve invalid image tags or inaccessible registries. That is a credible concern for eks image pull errors, normally addressed by: Inspect pod events, image reference, registry access and pull credentials before changing cluster scaling. It is not the primary failure mechanism described here. The relevant exposure is: Unbounded visibility retries consume consumer capacity and allow valid customer jobs to starve.

Question 145

A single all-or-nothing pipeline deploys unrelated microservices together and a broken service forces rollback of every component.

Which AWS-specific principle most directly explains the desired solution?

  1. Managed secrets enable controlled retrieval and rotation while IAM determines which build execution may access a credential.
  2. CodePipeline cross-Region actions require regional artifact stores because pipeline outputs must be transferred to resources near the action.
  3. Disposable build environments reduce persistent host drift, while pinned inputs and restricted credentials make release artifacts more reproducible.
  4. Separating release units reduces blast radius when services have independent artifacts and release cadence, while contract tests still guard shared interfaces.

Explanation

Correct Answer

D:

Separating release units reduces blast radius when services have independent artifacts and release cadence, while contract tests still guard shared interfaces. This explains the implementation decision: Split independently deployable services into appropriately isolated pipelines with explicit dependency checks at integration boundaries. Verification should show the following: A failure in one service's delivery path stops its release without reverting unrelated healthy services, and shared contracts remain validated.

Incorrect Answers

A:

Managed secrets enable controlled retrieval and rotation while IAM determines which build execution may access a credential. This reasoning supports the alternative topic of pipeline secret retrieval, for which the relevant intervention is: Reference Secrets Manager or encrypted Systems Manager Parameter Store values at runtime under a scoped build role rather than embedding secret values in source. The scenario requires understanding release pipeline fault isolation, where separating release units reduces blast radius when services have independent artifacts and release cadence, while contract tests still guard shared interfaces.

B:

CodePipeline cross-Region actions require regional artifact stores because pipeline outputs must be transferred to resources near the action. This reasoning supports the alternative topic of multi-region pipeline artifacts, for which the relevant intervention is: Configure a separate encrypted pipeline artifact bucket in each action Region and grant the required cross-Region access. The scenario requires understanding release pipeline fault isolation, where separating release units reduces blast radius when services have independent artifacts and release cadence, while contract tests still guard shared interfaces.

C:

Disposable build environments reduce persistent host drift, while pinned inputs and restricted credentials make release artifacts more reproducible. This reasoning supports the alternative topic of build isolation and reproducibility, for which the relevant intervention is: Run CodeBuild jobs in defined ephemeral build environments with pinned dependency versions and protected service-role permissions. The scenario requires understanding release pipeline fault isolation, where separating release units reduces blast radius when services have independent artifacts and release cadence, while contract tests still guard shared interfaces.

Question 146

A feature flag changes critical checkout logic and developers currently overwrite a JSON configuration on all production instances at once.

What result would most credibly prove that the control is effective?

  1. The repeated alarms are grouped with affected resource details and responders launch a suitable documented remediation.
  2. A long restoration advances through named states, waits as required and resumes or fails deterministically without a long-lived Lambda invocation.
  3. Nonproduction instances stop at the expected local schedule even when the engineer's laptop is offline.
  4. Only valid configuration versions reach clients and an alarm-driven rollback reverts a harmful rollout.

Explanation

Correct Answer

D:

Only valid configuration versions reach clients and an alarm-driven rollback reverts a harmful rollout. It directly verifies the change: Deploy validated configuration through AWS AppConfig with a gradual deployment strategy and CloudWatch alarm rollback. The test matters because appConfig separates dynamic application configuration rollout from binary deployments and supports validators and controlled exposure.

Incorrect Answers

A:

The repeated alarms are grouped with affected resource details and responders launch a suitable documented remediation. That result would help prove ssm opscenter triage, where the relevant action is: Route relevant findings into Systems Manager OpsCenter OpsItems with correlation, ownership and remediation runbook links. It does not establish this case's required outcome. For appconfig progressive rollout, the decisive verification is: Only valid configuration versions reach clients and an alarm-driven rollback reverts a harmful rollout.

B:

A long restoration advances through named states, waits as required and resumes or fails deterministically without a long-lived Lambda invocation. That result would help prove step functions long workflows, where the relevant action is: Orchestrate recovery through AWS Step Functions with explicit state transitions, retries, timeouts and approval integration. It does not establish this case's required outcome. For appconfig progressive rollout, the decisive verification is: Only valid configuration versions reach clients and an alarm-driven rollback reverts a harmful rollout.

C:

Nonproduction instances stop at the expected local schedule even when the engineer's laptop is offline. That result would help prove eventbridge scheduling, where the relevant action is: Use EventBridge Scheduler with an authorized target role and time-zone-aware schedule for the required shutdown automation. It does not establish this case's required outcome. For appconfig progressive rollout, the decisive verification is: Only valid configuration versions reach clients and an alarm-driven rollback reverts a harmful rollout.

Question 147

Application teams repeatedly make sensitive S3 buckets public while correcting website delivery settings for unrelated static assets.

Which action best meets the technical requirement?

  1. Enable appropriate S3 Block Public Access settings at account or bucket scope and provide a separate approved public-content pattern.
  2. Associate AWS WAF web ACL rules with the supported application entry point and monitor rule actions and false positives.
  3. Plan destination-region KMS key access and supported re-encryption or key replication patterns in the recovery workflow.
  4. Deploy AWS Network Firewall with appropriate subnet placement, routing, stateless/stateful rules and logging for the inspected path.

Explanation

Correct Answer

A:

Enable appropriate S3 Block Public Access settings at account or bucket scope and provide a separate approved public-content pattern. Block Public Access controls override many accidental public policy or ACL settings, reducing exposure of private object stores. The relevant operational proof is specific: Attempts to make protected data buckets public fail, while approved public assets use a separately controlled distribution path.

Incorrect Answers

B:

Associate AWS WAF web ACL rules with the supported application entry point and monitor rule actions and false positives. That would address waf managed web rules, because wAF inspects supported HTTP requests at the application layer, whereas security groups enforce network access rules. However, the stated situation instead concerns s3 public access guardrail. Block Public Access controls override many accidental public policy or ACL settings, reducing exposure of private object stores.

C:

Plan destination-region KMS key access and supported re-encryption or key replication patterns in the recovery workflow. That would address cross account encryption keys, because kMS key locality and key policies govern decryption; transferring ciphertext alone does not guarantee usable recovery data. However, the stated situation instead concerns s3 public access guardrail. Block Public Access controls override many accidental public policy or ACL settings, reducing exposure of private object stores.

D:

Deploy AWS Network Firewall with appropriate subnet placement, routing, stateless/stateful rules and logging for the inspected path. That would address network firewall inspection, because network Firewall inspects traffic routed through its endpoints; rules provide no protection for flows that bypass the firewall route. However, the stated situation instead concerns s3 public access guardrail. Block Public Access controls override many accidental public policy or ACL settings, reducing exposure of private object stores.

Question 148

Customers in two Regions must write to local DynamoDB tables while each Region remains operational during a regional outage.

What should operators verify before closing the issue?

  1. A regional loss leaves the other table accepting intended writes and tests confirm application tolerance of replication convergence.
  2. The application serves requests through a simulated AZ failure while a minimum healthy instance capacity remains.
  3. Read-only requests reach intended replica endpoints and the Multi-AZ failover test remains independent of reporting scale.
  4. Requests are acknowledged after valid enqueue and queued work completes after worker recovery with failed items isolated for diagnosis.

Explanation

Correct Answer

A:

A regional loss leaves the other table accepting intended writes and tests confirm application tolerance of replication convergence. It directly verifies the change: Use DynamoDB global tables where suitable and design conflict handling and application routing for replicated multi-Region writes. The test matters because global tables replicate writes across participating Regions and support local read/write access, but cross-Region convergence is asynchronous.

Incorrect Answers

B:

The application serves requests through a simulated AZ failure while a minimum healthy instance capacity remains. That result would help prove stateless application across zones, where the relevant action is: Distribute Auto Scaling instances across multiple Availability Zones and register healthy targets with the ALB. It does not establish this case's required outcome. For dynamodb global tables, the decisive verification is: A regional loss leaves the other table accepting intended writes and tests confirm application tolerance of replication convergence.

C:

Read-only requests reach intended replica endpoints and the Multi-AZ failover test remains independent of reporting scale. That result would help prove rds reader scaling distinction, where the relevant action is: Add read replicas or another suitable read-scaling path and direct read-only workloads to them, retaining Multi-AZ for failover. It does not establish this case's required outcome. For dynamodb global tables, the decisive verification is: A regional loss leaves the other table accepting intended writes and tests confirm application tolerance of replication convergence.

D:

Requests are acknowledged after valid enqueue and queued work completes after worker recovery with failed items isolated for diagnosis. That result would help prove decouple requests with sqs, where the relevant action is: Place durable SQS buffering between intake and workers with appropriate visibility timeout, retries and a dead-letter queue. It does not establish this case's required outcome. For dynamodb global tables, the decisive verification is: A regional loss leaves the other table accepting intended writes and tests confirm application tolerance of replication convergence.

Question 149

An analytics team dumps all application ALB access logs into a single flat S3 prefix and scanning a month costs too much.

Why would the preferred design resolve the described failure?

  1. Metric streams continuously export selected metric updates to an analytics sink, reducing custom polling and manual report collection.
  2. A dedicated log archive separates custody from workload operators while encryption and scoped permissions protect retained evidence.
  3. Cross-account observability shares selected telemetry with a monitoring account without handing out permanent workload account secrets.
  4. Partition pruning reduces the amount of object data queried by Athena while preserving coverage and retention.

Explanation

Correct Answer

D:

Partition pruning reduces the amount of object data queried by Athena while preserving coverage and retention. This explains the implementation decision: Organize logs in time and source-oriented prefixes or partitions and apply appropriate object lifecycle and access controls. Verification should show the following: A targeted day-and-service query scans fewer bytes than an unpartitioned full-month request and returns the same valid records.

Incorrect Answers

A:

Metric streams continuously export selected metric updates to an analytics sink, reducing custom polling and manual report collection. This reasoning supports the alternative topic of metric stream for analytics, for which the relevant intervention is: Configure CloudWatch Metric Streams to a supported delivery pipeline such as Kinesis Data Firehose and its destination. The scenario requires understanding s3 delivery partitioning, where partition pruning reduces the amount of object data queried by Athena while preserving coverage and retention.

B:

A dedicated log archive separates custody from workload operators while encryption and scoped permissions protect retained evidence. This reasoning supports the alternative topic of central encrypted log archive, for which the relevant intervention is: Aggregate required audit logs into an access-restricted central S3 archive with suitable SSE-KMS encryption and lifecycle controls. The scenario requires understanding s3 delivery partitioning, where partition pruning reduces the amount of object data queried by Athena while preserving coverage and retention.

C:

Cross-account observability shares selected telemetry with a monitoring account without handing out permanent workload account secrets. This reasoning supports the alternative topic of cross account observability, for which the relevant intervention is: Use CloudWatch cross-account observability with a central monitoring account and approved source-account links where applicable. The scenario requires understanding s3 delivery partitioning, where partition pruning reduces the amount of object data queried by Athena while preserving coverage and retention.

Question 150

A CodeDeploy EC2 deployment stops at ApplicationStart, but package download and file installation completed successfully.

Which consequence is most specific to the observed weakness?

  1. Repeatedly deploying the same artifact without fixing the hook leaves the fleet partially updated and unavailable.
  2. Re-running builds without addressing encryption authorization can leave every release blocked or encourage unsafe blanket grants.
  3. Increasing timeout blindly can hold more concurrent invocations open and amplify pressure on an already degraded dependency.
  4. Blindly adding worker nodes increases cost but does not resolve invalid image tags or inaccessible registries.

Explanation

Correct Answer

A:

Repeatedly deploying the same artifact without fixing the hook leaves the fleet partially updated and unavailable. This outcome arises from the mechanism in the situation: A failed lifecycle hook is a specific deployment step failure; artifact transfer success does not establish successful process startup. The corresponding mitigation is: Inspect CodeDeploy lifecycle event logs, deployment agent output and application start command permissions before retrying.

Incorrect Answers

B:

Re-running builds without addressing encryption authorization can leave every release blocked or encourage unsafe blanket grants. That is a credible concern for codebuild role denied artifact, normally addressed by: Inspect build service-role S3 and KMS permissions alongside the bucket and key policies, then correct only the missing access. It is not the primary failure mechanism described here. The relevant exposure is: Repeatedly deploying the same artifact without fixing the hook leaves the fleet partially updated and unavailable.

C:

Increasing timeout blindly can hold more concurrent invocations open and amplify pressure on an already degraded dependency. That is a credible concern for lambda timeout dependencies, normally addressed by: Correlate Lambda duration, timeout and downstream trace segments to identify whether the new code or dependency is responsible. It is not the primary failure mechanism described here. The relevant exposure is: Repeatedly deploying the same artifact without fixing the hook leaves the fleet partially updated and unavailable.

D:

Blindly adding worker nodes increases cost but does not resolve invalid image tags or inaccessible registries. That is a credible concern for eks image pull errors, normally addressed by: Inspect pod events, image reference, registry access and pull credentials before changing cluster scaling. It is not the primary failure mechanism described here. The relevant exposure is: Repeatedly deploying the same artifact without fixing the hook leaves the fleet partially updated and unavailable.

AWS Certified DevOps Engineer - Professional DOP-C02 Practice Tests

Purchase Individually

  • Premium File

    480 Questions & Answers
    Last Update: Nov 4, 2026

    $76.99
    $69.99
  • Training Course

    242 Lectures

    $43.99
    $39.99

SPECIAL OFFER: GET 10% OFF
This is ONE TIME OFFER

You save
10%

Enter Your Email Address to Receive Your 10% Off Discount Code

SPECIAL OFFER: GET 10% OFF

You save
10%

Use Discount Code:

A confirmation link was sent to your e-mail.

Please check your mailbox for a message from support@examlabs.com and follow the directions.

Download Free Demo of VCE Exam Simulator

Experience Avanset VCE Exam Simulator for yourself.

Simply submit your email address below to get started with our interactive software demo of your free trial.

  • Realistic exam simulation and exam editor with preview functions
  • Whole exam in a single file with several different question types
  • Customizable exam-taking mode & detailed score reports