Skip to main content

Command Palette

Search for a command to run...

CISSP Testing Cheat Sheet: Software Testing, Security Testing & BC/DR Testing

Updated
•24 min read•View as Markdown
S
I like breaking things that are supposed to be secure. When I’m not hunting vulnerabilities, I’m exploring systems, architectures, and the assumptions behind them.

Preparing for the CISSP exam can be challenging because the word "testing" appears across multiple domains.

The challenge is not simply memorizing definitions. CISSP questions often give you a scenario and ask you to identify the purpose of the test.

For example:

  • Smoke testing → Is the build basically working?

  • Regression testing → Did my change break something?

  • Mutation testing → Are my tests good enough to catch defects?

  • Vulnerability assessment → Where are the weaknesses?

  • Penetration testing → Can I exploit the weakness?

  • SAST → What's wrong in the source code?

  • DAST → What's wrong with the running application?

  • SCA → What's wrong with my dependencies?

  • Parallel DR testing → Can I activate DR while production continues?

  • Full interruption testing → Can I actually switch operations to DR?

This article brings the major CISSP testing concepts together into one revision-friendly cheat sheet, with simple explanations, examples, and memory tricks.

The current ISC2 CISSP outline places Security Assessment and Testing at 12%, and explicitly includes vulnerability assessment, penetration testing, code review/testing, misuse-case testing, coverage analysis, interface testing, breach attack simulations, and compliance checks. It also includes DRP testing under Security Operations and SAST, DAST, SCA, and IAST under Software Development Security. (ISC2)


1. Software Testing Types

Let's start with the fundamental software testing concepts.

Testing Type What Does It Mean? Simple Example 🧠 Memory Trick
Unit Testing Tests a single function, module, or component in isolation. Test a calculateTax() function independently. One unit → One test
Integration Testing Tests whether multiple components work correctly together. Test Login + Database + MFA service. Do they work together?
System Testing Tests the complete integrated system against requirements. Test the entire banking application. Test the whole system
Acceptance / UAT Determines whether the system meets business/user requirements and is acceptable for use. Business users verify that money transfers work correctly. Does the customer accept it?
Functional Testing Verifies that the system performs the functions defined in the requirements. Verify that "Reset Password" actually resets the password. What should it do?
Non-functional Testing Tests characteristics such as performance, scalability, reliability, usability, and security. Verify that the application supports 10,000 concurrent users. How well does it work?
Smoke Testing Quick, high-level testing to determine whether a build is stable enough for further testing. Application starts, login works, and a basic transaction succeeds. Is it alive?
Regression Testing Ensures a change, patch, or fix has not broken existing functionality or introduced unintended problems. An MFA patch fixes login but accidentally breaks password reset. Did my change break something?
Nonregression Testing Verifies that the intended change works and expected behavior has been achieved. Verify that a newly implemented MFA requirement works correctly. Did my change work?
Mutation Testing Intentionally introduces small changes into code to determine whether existing tests detect them. Change >= to > and see whether the test suite fails. Test the tests

2. Regression Testing

This is an important CISSP concept.

If a question says:

Testing performed after a patch, modification, upgrade, or configuration change to determine whether the change introduced new problems.

Think:

Regression Testing

Imagine an application has:

Before Patch

Login       ✓
Search      ✓
Upload      ✓
Download    ✓

A security patch is installed:

After Patch

Login       ✓
Search      ✓
Upload      ✗
Download    ✓

The patch fixed one problem but unintentionally broke the Upload functionality.

That's exactly the type of problem regression testing is intended to uncover.

🧠 Memory Trick

Regression = Did my change break something?


3. Smoke Testing

Smoke testing is a quick, high-level test performed to determine whether a build is stable enough for more detailed testing.

For example:

Application starts          ✓
Login works                 ✓
Main page loads             ✓
Basic transaction works     ✓

If these basic tests fail, there may be little value in immediately running thousands of detailed test cases.

🧠 Memory Trick

Smoke testing = Is the build alive?

Think of it as a quick health check.


4. Mutation Testing

Mutation testing is a particularly useful concept to understand because it doesn't primarily ask whether the application works.

Instead, it asks:

Are my tests good enough to detect defects?

The technique intentionally introduces small changes, called mutations, into the code and then runs the existing test suite.

Example

Original code:

if age >= 18:
    allow_access()

A mutation changes it to:

if age > 18:
    allow_access()

Now run the existing tests.

If the tests detect the change:

Mutation
   ↓
Test fails
   ↓
Mutant killed ✓

That's good. The test suite detected the injected defect.

If the tests still pass:

Mutation
   ↓
Tests pass
   ↓
Mutant survives ✗

That indicates a potential weakness in the test suite.

Important terminology

Mutant

The modified version of the program.

Killed mutant

A mutation detected by the test suite.

Surviving mutant

A mutation that was not detected by the test suite.

Mutation Score

A common metric is:

Mutation Score =
Killed Mutants / Total Detectable Mutants × 100

Example:

100 mutants
80 killed

Mutation Score = 80%

🧠 Memory Trick

Mutation Testing = Test the tests


5. Code Coverage vs. Mutation Testing

This is an excellent distinction to remember.

Code Coverage

Asks:

How much of my code did my tests execute?

Mutation Testing

Asks:

How effective are my tests at detecting defects?

Think:

CODE COVERAGE
      ↓
"Did my tests execute this code?"

MUTATION TESTING
      ↓
"Did my tests detect a defect
introduced into this code?"

A test suite can have high code coverage but still have weak assertions and fail to detect important defects.

🧠 Memory Trick

Coverage = How much did I test?

Mutation = How well did my tests test it?


6. Functional vs. Non-functional Testing

This distinction is useful beyond CISSP as well.

Functional Testing

Question:

What should the system do?

Example:

Requirement:
User must be able to reset their password.

Test:
Does password reset actually work?

Non-functional Testing

Question:

How well should the system perform?

Examples include:

  • Performance

  • Scalability

  • Reliability

  • Availability

  • Usability

  • Security

Example:

Requirement:
Application must support 10,000 concurrent users.

Test:
Can the application handle 10,000 concurrent users?

🧠 Memory Trick

Functional = What does it do?

Non-functional = How well does it do it?


7. Unit → Integration → System → Acceptance

A useful way to remember the progression is:

Unit
  ↓
Integration
  ↓
System
  ↓
Acceptance

Unit Testing

Test one component.

calculateTax()

Integration Testing

Test components working together.

Login
  +
MFA
  +
Database

System Testing

Test the complete application.

Complete Banking Application

Acceptance Testing / UAT

The business/user validates whether the system meets its requirements and is acceptable for use.

Business User
      ↓
"Does this system meet our requirements?"

🧠 Memory Trick

Unit → One thing

Integration → Things together

System → Everything

Acceptance → Business says acceptable


8. Security Assessment & Testing

Security assessment and testing is an important CISSP topic.

The key is understanding what the security activity is trying to accomplish.

Security Testing Type What Does It Mean? Simple Example 🧠 Memory Trick
Vulnerability Assessment Identifies and evaluates vulnerabilities. Scanner identifies an outdated OpenSSL version. Find the weakness
Penetration Testing Attempts to exploit vulnerabilities to demonstrate exploitability and impact. Exploit SQL injection to demonstrate database access. Prove the weakness
Red Team Simulates realistic adversary behavior against an organization or environment. Simulated attacker performs phishing → initial access → lateral movement. Think like the attacker
Blue Team Focuses on defensive detection, prevention, and response. SOC detects and responds to a simulated attack. Defend
Purple Team Combines offensive and defensive activities to improve security controls. Red Team attacks while Blue Team improves detection rules. Red + Blue = Purple
Code Review Examines source code for defects and security weaknesses. Review code for hardcoded secrets or SQL injection. Read the code
Misuse-Case Testing Tests how the system behaves when someone uses it maliciously or improperly. Attempt to access another user's account by manipulating an ID. Normal use → Misuse
Coverage Analysis Determines how much code, functionality, or requirements have actually been tested. 85% of application code is covered by automated tests. How much did we test?
Interface Testing Tests interactions between systems, components, or interfaces. Verify API Gateway correctly enforces authentication before calling a backend API. Test the boundaries
Breach Attack Simulation (BAS) Simulates attack techniques to evaluate whether security controls detect or prevent them. Simulate credential theft and verify EDR detects it. Simulate → Detect/Block
Compliance Testing Verifies that systems or controls satisfy policies, standards, regulations, or requirements. Check whether systems comply with the organization's password policy. Are we meeting the requirement?

These topics are explicitly represented in the current ISC2 Domain 6 outline. (ISC2)


9. Vulnerability Assessment vs. Penetration Testing

This is one of the most important distinctions to understand.

Vulnerability Assessment

The primary objective is:

Find and identify weaknesses.

Example:

Scanner
   ↓
Find vulnerable server
   ↓
Identify vulnerability
   ↓
Report

For example:

"This server is running a vulnerable version of OpenSSL."

The assessment has identified the weakness.


Penetration Testing

Penetration testing goes further:

Attempt to exploit the weakness and demonstrate impact.

Find vulnerability
       ↓
Attempt exploitation
       ↓
Demonstrate impact
       ↓
Report

Example:

"I exploited the SQL injection and demonstrated unauthorized database access."

🧠 Memory Trick

VA = Find it

Pentest = Prove it


10. Red Team, Blue Team and Purple Team

These three terms are easy to remember.

Red Team

The Red Team represents the offensive side.

They simulate an attacker.

Recon
 ↓
Initial Access
 ↓
Privilege Escalation
 ↓
Lateral Movement
 ↓
Objective

🧠 Memory Trick

Red = Attack


Blue Team

The Blue Team represents the defensive side.

They focus on:

  • Prevention

  • Detection

  • Monitoring

  • Investigation

  • Incident response

  • Containment

🧠 Memory Trick

Blue = Defend


Purple Team

Purple Team activities bring offensive and defensive teams together.

For example:

Red Team
   ↓
Performs attack
   ↓
Blue Team
   ↓
Detects attack
   ↓
Improve security controls

🧠 Memory Trick

Purple = Red + Blue collaboration


11. SAST, DAST, IAST and SCA

These are particularly important application security testing concepts. The current ISC2 outline explicitly lists SAST, DAST, SCA, and IAST under application security testing. (ISC2)

Technology Full Form What Does It Test? Example 🧠 Memory Trick
SAST Static Application Security Testing Source code/binaries without executing the application. Finds possible SQL injection in source code. Static = Source
DAST Dynamic Application Security Testing Running application from the outside. Sends malicious HTTP requests to a running application. Dynamic = Deployed
IAST Interactive Application Security Testing Running application with instrumentation/agent. Detects a vulnerable database query while the application executes. Interactive = In the running app
SCA Software Composition Analysis Third-party/open-source dependencies. Finds a vulnerable Log4j version. Dependencies = SCA

12. SAST

SAST analyzes application code without requiring the application to be running.

Source Code
     ↓
   SAST
     ↓
Potential vulnerabilities

Example:

String query = "SELECT * FROM users WHERE id=" + userInput;

A SAST tool may identify a potential SQL injection issue.

🧠 Memory Trick

SAST → Static → Source


13. DAST

DAST tests a running application from the outside.

Running Application
        ↑
        |
      DAST
        |
Malicious Requests

For example, a DAST scanner may send malicious input to web application parameters and analyze the response.

🧠 Memory Trick

DAST → Dynamic → Deployed application


14. IAST

IAST analyzes an application while it is running, typically using instrumentation or an agent.

Application Running
        ↓
Instrumentation
        ↓
Observe execution
        ↓
Identify security issues

🧠 Memory Trick

IAST → Interactive → In the running application


15. SCA

SCA focuses primarily on third-party and open-source components.

Imagine:

Banking Application
|
+-- My source code
+-- React
+-- Spring
+-- Log4j
+-- PostgreSQL driver

SCA can identify risks associated with those dependencies, including known vulnerabilities and licensing information.

🧠 Memory Trick

SCA → Software Components → Dependencies


16. Misuse-Case Testing

A use case describes legitimate behavior.

For example:

User
 ↓
Login
 ↓
Transfer Money

A misuse case asks:

What happens if someone intentionally tries to misuse the functionality?

Example:

Attacker
   ↓
Manipulate Account ID
   ↓
Access Another User's Account

The objective is to consider behavior from an attacker's perspective.

🧠 Memory Trick

Use case = What should happen?

Misuse case = What could an attacker try?


17. Coverage Analysis

Coverage analysis asks:

How much of the system have we actually tested?

For example:

Application
1000 lines of code

Tested:
850 lines

Coverage:
85%

Coverage can refer to:

  • Code coverage

  • Branch coverage

  • Requirement coverage

  • Functional coverage

  • Test-case coverage

Important Point

High coverage does not automatically mean high security or high quality.

It tells you how much of the relevant target was exercised by the tests.

🧠 Memory Trick

Coverage = How much did we test?


18. Interface Testing

Modern applications contain many interfaces:

Browser
   ↓
API Gateway
   ↓
REST API
   ↓
Microservice
   ↓
Database

Interface testing verifies that interactions between components work correctly.

Security-related checks may include:

  • Authentication

  • Authorization

  • Input validation

  • Error handling

  • Session management

  • API security

  • Data validation

🧠 Memory Trick

Interface Testing = Test the boundaries between components


19. Breach Attack Simulation (BAS)

Breach Attack Simulation, or BAS, simulates attack techniques in a controlled environment to evaluate security controls.

Example:

Simulated Credential Attack
           ↓
      Security Controls
           ↓
      +----+----+
      |         |
      ↓         ↓
    Block?    Detect?

The organization can determine whether its security controls actually behave as expected.

🧠 Memory Trick

BAS = Simulate the attack → Test the defenses


20. Compliance Testing

Compliance testing asks:

Are we meeting the required security requirements?

Suppose an organization has a policy:

Passwords must be at least 14 characters.

A compliance test can examine systems and accounts to determine whether that requirement is being followed.

Requirement
     ↓
Security Control
     ↓
Test
     ↓
Compliant / Non-Compliant

🧠 Memory Trick

Compliance = Are we following the requirement?


21. Business Continuity and Disaster Recovery Testing

Testing is not limited to applications and security controls.

CISSP also covers testing of Disaster Recovery Plans (DRP) and participation in Business Continuity (BC) planning and exercises. The current ISC2 outline specifically lists read-through/tabletop, walkthrough, simulation, parallel, and full interruption for DRP testing. (ISC2)

The important concepts to remember are:

  1. Read-through

  2. Walkthrough

  3. Simulation

  4. Parallel Test

  5. Full Interruption Test

The wording of Read-through and Walkthrough is particularly important because they can sound very similar.


22. Read-through

A read-through asks each team member to review their role in the disaster recovery process and provide feedback.

The emphasis is on individual roles and responsibilities.

For example:

DR Team Member
      ↓
Reviews assigned role
      ↓
"Do I know what I am responsible for?"
      ↓
Provides feedback

A team member might identify:

"My contact information is outdated."

or:

"This recovery step requires access to a system I don't currently have access to."

🧠 Memory Trick

Read-through = Read YOUR role

Think:

"What is MY responsibility?"


23. Walkthrough

A walkthrough brings the team together for a formal review of the disaster recovery plan.

The focus is on reviewing the plan as a team and ensuring that the procedures, responsibilities, and recovery activities work together.

Example:

DR Team
   ↓
Gather together
   ↓
Review DR Plan
   ↓
Discuss procedures
   ↓
Identify gaps
   ↓
Provide feedback

🧠 Memory Trick

Walkthrough = Walk THROUGH the plan together


24. Read-through vs. Walkthrough

This is an excellent distinction to remember for CISSP.

Read-through Walkthrough
Focus Individual role/responsibility Entire DR plan
Participants Team members review their own roles Team gathers together
Activity Review role and provide feedback Formal review of the plan
Question to remember "What is MY role?" "How does the PLAN work?"
Memory Trick Read YOUR role Walk THROUGH the plan

🔥 CISSP Shortcut

If the question says:

"Each team member reviews their role in the disaster recovery process and provides feedback."

Think:

READ-THROUGH

If the question says:

"The team gathers together for a formal review of the disaster recovery plan."

Think:

WALKTHROUGH


25. Simulation

A simulation uses a practice disaster scenario to test the disaster recovery plan.

The goal is to practice how the organization would respond without necessarily causing an actual production outage.

Example:

The organization simulates a ransomware incident affecting the production environment and asks the recovery team to execute the DR procedures.

Practice Disaster Scenario
          ↓
Recovery Team
          ↓
Execute DR Procedures
          ↓
Identify Gaps

🧠 Memory Trick

Simulation = Practice the disaster


26. Parallel Test

This is one of the most important CISSP distinctions.

In a parallel test, the disaster recovery environment is activated, but operations do not switch to the DR environment.

Production continues operating.

             PRIMARY
            Production
                |
                | ← Operations continue
                ↓
              Users


          DR ENVIRONMENT
                ↑
                |
          Activated
          and Tested

The DR environment is running alongside the primary environment.

🧠 Memory Trick

Parallel = DR runs beside production

Important

Parallel test does NOT mean that business operations are switched to DR.

The DR environment is activated and tested, but the primary environment remains responsible for normal operations.


27. Full Interruption Test

A full interruption test actually interrupts primary operations and switches operations to the alternate/DR environment.

        PRIMARY
       Production
           X
           |
           ↓
      Operations
           |
           ↓
        DR SITE
           |
           ↓
      Business Runs

Example:

Shut down production and operate from the DR site.

This can be very disruptive to the business, because normal primary operations are actually interrupted.

🧠 Memory Trick

Full Interruption = Actually switch


28. Simulation vs. Parallel vs. Full Interruption

This is an important CISSP comparison.

Simulation Parallel Full Interruption
Purpose Practice a disaster scenario Test DR while production continues Test actual operational switch
DR environment activated? Not necessarily Yes Yes
Primary operations continue? Yes Yes No
Operations move to DR? No No Yes
Business disruption Low Low/controlled Potentially high
Memory Trick Practice Run beside Switch

The Most Important Distinction

Parallel = Activate DR, but DON'T switch operations.

Full Interruption = Stop primary operations and switch to DR.


29. Complete BC/DR Testing Cheat Sheet

Now we can put all five methods together:

BC/DR Test What Happens? Example 🧠 Memory Trick
Read-through Each team member reviews their role in the recovery process and provides feedback. DBA reviews their database recovery responsibilities. Read YOUR role
Walkthrough The team gathers for a formal review of the disaster recovery plan. Recovery team reviews the complete DR process together. Walk THROUGH the plan
Simulation A practice disaster scenario is used to test the DR plan. Simulate ransomware and execute recovery procedures. Practice the disaster
Parallel DR environment is activated while primary operations continue. Production remains active while DR is started and tested. DR runs beside production
Full Interruption Primary operations are interrupted and switched to the alternate environment. Shut down production and operate from the DR site. Actually switch

30. BC/DR Testing Progression

A simple way to remember the progression:

READ-THROUGH
     ↓
"What is MY role?"

WALKTHROUGH
     ↓
"Let's review the PLAN together."

SIMULATION
     ↓
"Let's PRACTICE the disaster."

PARALLEL
     ↓
"Let's ACTIVATE DR,
but keep production running."

FULL INTERRUPTION
     ↓
"Let's STOP primary
and SWITCH to DR."

One-line memory trick

READ       → MY ROLE
WALK       → OUR PLAN
SIMULATE   → PRACTICE
PARALLEL   → ACTIVATE, DON'T SWITCH
FULL       → SWITCH

31. Audit vs. Assessment vs. Testing

These terms can appear together in CISSP questions.

Term Main Question Example
Audit Are we complying with the required criteria? Does the organization follow its security policy?
Assessment How effective is the security/control environment? Is the firewall appropriately configured?
Testing Does the control actually work? Send unauthorized traffic and verify that the firewall blocks it.

Example: Firewall

Suppose the requirement is:

"The firewall must block unauthorized traffic."

Audit:

Is there a documented firewall policy?

Assessment:

Is the firewall properly designed and configured?

Testing:

Send unauthorized traffic and verify that it is blocked.

🧠 Memory Trick

Audit → Are we compliant?

Assessment → How effective is the control?

Testing → Does it actually work?


32. CISSP Testing — 30-Second Revision

If you have only a few seconds before the exam, remember this:

UNIT
→ One component

INTEGRATION
→ Components together

SYSTEM
→ Entire system

ACCEPTANCE
→ Business/user accepts it

FUNCTIONAL
→ What should it do?

NON-FUNCTIONAL
→ How well does it work?

SMOKE
→ Is the build alive?

REGRESSION
→ Did my change break something?

NONREGRESSION
→ Did my intended change work?

MUTATION
→ Are my tests good enough?

VA
→ Find vulnerabilities

PENTEST
→ Exploit/prove vulnerabilities

SAST
→ Source code

DAST
→ Running application

IAST
→ Running + instrumented application

SCA
→ Third-party dependencies

MISUSE CASE
→ Test malicious/unauthorized use

COVERAGE
→ How much did we test?

INTERFACE
→ Test component boundaries

BAS
→ Simulated attacks against controls

COMPLIANCE
→ Are we meeting requirements?

RED
→ Attack

BLUE
→ Defend

PURPLE
→ Red + Blue collaboration

READ-THROUGH
→ Review MY role

WALKTHROUGH
→ Review OUR plan

SIMULATION
→ Practice the disaster

PARALLEL
→ Activate DR, DON'T switch

FULL INTERRUPTION
→ Actually switch to DR

33. Final CISSP Testing Memory Map

When you see the word "testing" in a CISSP question, first identify what is being tested and why.

                         TESTING
                            |
        +-------------------+-------------------+
        |                   |                   |
        ↓                   ↓                   ↓
    SOFTWARE             SECURITY              BC/DR
        |                   |                   |
   +----+----+         +----+-----+        +----+---------+
   |    |    |         |    |     |        |    |    |    |
 Unit Integration    VA  Pentest  BAS    Read Walk Sim
 System Acceptance       Red/Blue       Through Through ulation
 Smoke Regression       Purple
 Mutation                                Parallel
                                         Full

The Most Important CISSP Memory Lines

Smoke asks: "Is it alive?"

Regression asks: "Did my change break anything?"

Mutation asks: "Are my tests good enough?"

VA asks: "Where is the weakness?"

Pentest asks: "Can I exploit it?"

SAST asks: "What's wrong in the code?"

DAST asks: "What's wrong in the running application?"

SCA asks: "What's wrong in my dependencies?"

BAS asks: "Will my defenses detect or block an attack?"

Coverage asks: "How much did we test?"

Read-through asks: "What is MY role?"

Walkthrough asks: "How does OUR plan work?"

Simulation asks: "Can we practice the disaster?"

Parallel asks: "Can we activate DR while production continues?"

Full interruption asks: "Can we actually switch operations to DR?"


CISSP Exam Strategy

Don't memorize these terms as isolated definitions.

When you see a scenario, identify the intent of the activity.

Find a weakness?
        ↓
Vulnerability Assessment


Prove/exploit the weakness?
        ↓
Penetration Testing


Check source code?
        ↓
SAST


Check the running application?
        ↓
DAST


Check third-party dependencies?
        ↓
SCA


Check whether a patch broke existing functionality?
        ↓
Regression Testing


Check whether the basic build works?
        ↓
Smoke Testing


Intentionally introduce a defect
to see whether tests detect it?
        ↓
Mutation Testing


Measure how much was tested?
        ↓
Coverage Analysis


Simulate an attack against defenses?
        ↓
Breach Attack Simulation


Ask each team member to review their individual
DR role and provide feedback?
        ↓
Read-through


Bring the team together for a formal review
of the DR plan?
        ↓
Walkthrough


Practice a disaster scenario?
        ↓
Simulation


Activate DR but keep production running?
        ↓
Parallel Test


Actually interrupt primary operations
and switch to DR?
        ↓
Full Interruption Test

Conclusion

The key to answering CISSP testing questions is to focus on purpose rather than terminology alone.

A useful mental model is:

                WHAT ARE YOU TRYING TO DO?
                         |
       +-----------------+------------------+
       |                 |                  |
       ↓                 ↓                  ↓
   Test Software     Test Security       Test BC/DR
       |                 |                  |
   Regression        Vulnerability       Read-through
   Smoke             Assessment          Walkthrough
   Unit              Pentest             Simulation
   Integration       SAST                Parallel
   System            DAST                Full Interruption
   Acceptance        IAST
   Mutation          SCA

If you remember just these lines before the exam:

Smoke → Is it alive?

Regression → Did I break anything?

Mutation → Are my tests good enough?

VA → Find the weakness.

Pentest → Prove the weakness.

SAST → Source code.

DAST → Running application.

SCA → Dependencies.

Read-through → Review my role.

Walkthrough → Review our plan.

Simulation → Practice the disaster.

Parallel → Activate DR, don't switch.

Full interruption → Actually switch to DR.

These simple associations make scenario-based CISSP testing questions much easier to decode.