Professional Curriculum Details : Software Quality Assurance & Testing

Software Quality Assurance & Testing

Software Quality Assurance and Testing involves reviewing and auditing software products and activities to verify that they meet specified business requirements, comply with the applicable procedures and standards and provide the software project team and other appropriate managers with the results of these reviews and audits. After this course as a quality assurance expert and tester, you will be able to review and audit software using tools such as Acunetix, Nexpose, Veracode and Checkmarx Using Metasploit, Kali Linux, Nessus and Nmap. You will become an expert in Network Mapping, Vulnerability Scanning and Penetration Testing.

Prerequisites

  • None

Course Content

This is an introduction to the general testing principles, fundamental test process and psychology of testing.

Learning outcome

  • Learn the general testing principles.
  • Learn the fundamental test process.
  • Learn the psychology of testing.

In this class you will learn about the various approaches to software testing, and take part in practical exercises around each testing type.

Learning Outcomes

  • Static- Requirements reviews
  • Dynamic- Testing the build

Just like developers follow the Software Development Life Cycle (SDLC) likewise testers also follow the Software Testing Life Cycle which is called as STLC. It is the sequence of activities carried out by the testing team from the beginning of the project till the end of the project.

Software Testing Life Cycle is a testing process which is executed in a sequence, in order to meet the quality goals. It is not a single activity but it consists of many different activities which are executed to achieve a good quality product.Brief background

Learning Outcomes

  • Creating Test Cases: Techniques of designing test cases.
  • Reporting test results.

Defect Management is the process of tracking the logged defects in a software application under test and making new versions of the product that fix the defects. Defect tracking is important in software engineering as complex software systems typically have tens or hundreds or thousands of defects: managing, evaluating and prioritizing these defects is a difficult task. When the numbers of defects gets quite large, and the defects need to be tracked over extended periods of time, use of a defect tracking and management methodology.

Learning Outcomes

  • Defect life cycle.
  • Defect classification.

Test-driven development (TDD) is a software development process that relies on the repetition of a very short development cycle: requirements are turned into very specific test cases, then the software is improved to pass the new tests, only. This is opposed to software development that allows software to be added that is not proven to meet requirements.

Learning outcomes

  • Setup: Put the Unit Under Test (UUT) or the overall test system in the state needed to run the test.
  • Execution: Trigger/drive the UUT to perform the target behavior and capture all output, such as return values and output parameters. This step is usually very simple.
  • Validation: Ensure the results of the test are correct. These results may include explicit outputs captured during execution or state changes in the UUT & UAT.
  • Cleanup: Restore the UUT or the overall test system to the pre-test state. This restoration permits another test to execute immediately after this one.[8]