Online Training on Software Testing & Quality Assurance
PeopleNTech provides Software Testing and quality assurance training in Bangladesh to create an expert workforce on this ground. Software Testing and quality assurance is a process that evaluates the functionality of a software application with the intent to find whether the developed software meets the specification or not and identify defects (known as bugs) using Manual Testing QuickTestPro/Automation: Unified Functional Testing Automation. It's a step-by-step process of analyzing a software item to detect the differences between existing and required conditions (defects) and to evaluate the features of the software item.
Here at PeopleNTech, you will learn both Manual Testing & Automation Testing processes through the selenium automation testing framework, QuickTestPro/Unified Functional Testing Automation. The testing process includes verifying all the features specified in the requirements. All the processing is done if the requirements are met and with the perspective of their end users in mind.
After completing software testing and quality assurance training, a tester manually does the testing process by hand to learn more about the software; it's called the Manual Testing Process.
A Software Testing and quality assurance expert plays a vital role in the software development process. That's why the demand for a Software Testing and quality assurance engineer is rising. It can be done using automation tools. When software testing is done using an automation tool to find any defects, it's called the automation testing process. Almost all IT firms use a software testing and quality assurance engineer as an important member of their team. Without their approval, the software never gets published.
After the Software Testing and quality assurance training course, an individual will be able to work as a software testing and quality assurance engineer in any IT organization. Also, you can work as a freelancer and earn from home. If you take Software Testing and quality assurance training, the opportunity to be a professional or freelance software testing and quality assurance engineer will be open to you.
This Software Testing and quality assurance training course is designed specially to create trained individuals who will be able to perform this highly demanded job. This job requires hands-on training and the latest modules. It will introduce you to the complexities of software testing with the selenium automation testing tool QuickTestPro and unified functional testing automation through our experienced mentor, state-of-the art lab, and world-class course modules. During the software testing and quality assurance training course, you will get the chance to work on a real-world case study. Like in a real-time work environment, you will encounter issues, decisions, and testing experiences comparable to those in a real-time software scenario. You will get discussion-based exercises, develop workable strategies, and have performance testing opportunities. You will learn the process of software analysis, tuning, debugging, and the tools associated with it.
After the Software Testing and quality assurance training course, you will learn how the software testing and assurance process is carried out and how it should be managed.
Intended Audience: This course is intended for those who want to work as a software test analyst, QA analyst, QuickTestPro, or Unified Functional Testing Automation Engineer.
Prerequisites: Students are required to have at least an Associates degree along with a good knowledge of Microsoft Word, Excel, Access, PowerPoint, and the Internet.
Batch Duration
Starting Date : 7th December, 2023
Last Date of Registration :5th December, 2023
Class Schedule : Sunday , Tuesday and Thursday: 7:00 p.m.–9:00 p.m.
Total Hours : 60
Course Curriculum
Module 1: SDLC
- What is SDLC?
- Phases of SDLC
- Different SDLC models (Waterfall, Agile, )
- Advantages and disadvantages of SDLC
- Understanding requirement gathering
- Types of requirements (Functional, Non-Functional, Business)
- Analysis and design phase activities
- Deliverables of this phase
Real Project and Tools:
- Requirement Gathering: JIRA, Trello, Asana, Confluence, Miro etc
- Design: Sketch, Figma, Adobe XD, Balsamiq etc
Module 2: STLC
- What is software testing?
- Why do we need testing?
- Types of software testing (Functional, Non-Functional, )
- Acceptance testing
- What is STLC?
- STLC Phases
- Entry and Exit Criteria
- Deliverables of each phase
Real Project and Tools:
- Test Management: Qase, PractiTest etc
- Understanding test planning
- Creating test plan
- Test Strategy
- Test effort estimation
- Test plan deliverables
Black Box Testing:
- What is black box testing?
- Techniques for black box testing (equivalence partitioning, boundary value analysis, decision table testing, )
- Writing test cases for black box testing
- Understanding test design and execution
- Types of test design techniques
- Test data preparation
- Test execution
- Deliverables of this phase
Real Project and Tools:
- Test Plan: TestRail, Zephyr etc
- Understanding defect management
- Defect life cycle
- Types of defects
- Defect tracking tools
- Test closure activities
- Deliverables of this phase
Real Project and Tools:
- Defect Management: JIRA, TestRail, BugZilla etc
- What is functional testing?
- Types of functional testing (unit testing, integration testing, system testing, acceptance testing, )
- Writing test cases for functional testing Non-Functional Testing:
- What is non-functional testing?
- Types of non-functional testing (performance testing, usability testing, security testing, )
- Writing test cases for non-functional testing
Regression Testing:
- What is regression testing?
- Techniques for regression testing (retest-all, selective, )
- Writing test cases for regression testing User Acceptance Testing:
- What is user acceptance testing?
- Techniques for user acceptance testing (alpha testing, beta testing, )
- Writing test cases for user acceptance testing
Exploratory Testing:
- What is exploratory testing?
- Techniques for exploratory testing
- Advantages and disadvantages of exploratory testing
Ad Hoc Testing:
- What is ad hoc testing?
- Techniques for ad hoc testing
- Advantages and disadvantages of ad hoc testing
Localization and Internationalization Testing:
- What is localization testing?
- Techniques for localization testing
- Writing test cases for localization testing
Accessibility Testing:
- What is accessibility testing?
- Techniques for accessibility testing
- Writing test cases for accessibility testing
Real Project: Web Application Testing
Module 3: GitHub
- Introduction to GitHub
- Overview of version control and Git
- Explanation of GitHub and its benefits
- Setting up a GitHub account and basic profile information
- Basic Git commands
- Initializing a repository
- Adding files to a repository
- Committing changes
- Checking status and history of commits
- Pushing changes to a remote repository
- GitHub workflow
- Forking a repository
- Cloning a repository
- Creating a branch
- Making and committing changes to a branch
- Creating a pull request
- Merging a pull request
- GitHub features
- Issues and milestones
- Projects and boards
- Best practices for using GitHub
- Writing clear commit messages
- Creating meaningful pull requests and issues
- Organizing repositories and branches
- Maintaining a healthy repository and avoiding common mistakes
Module 4: Python
- Introduction to Python
- Overview of Python and its features
- Installing and setting up Python and an IDE (e.g. Anaconda, PyCharm)
- Basics of Python Basic syntax and data types (e.g. variables, strings, integers)
- Basic input/output (e.g. print, input)
- Basic arithmetic and logical operations
- Conditional Statements
- If statement
- If-else statement
- Nested if-else statement
- Loops (60 minutes)
- For loop
- While loop
- Nested loops
- Lists and Tuples
- Definition and creation of lists and tuples
- Indexing and slicing
- Basic operations on lists and tuples
- Dictionaries
- Definition and creation of dictionaries
- Accessing and modifying values in dictionaries
- Basic operations on dictionaries
- Sets
- Definition and creation of sets
- Basic operations on sets
- Functions
- Definition and calling of functions
- Parameters and arguments
- Return statement
- Modules
- Importing modules
- Built-in modules
- Creating and importing custom modules
- File Handling
- Opening, reading, and writing to files
- Closing files
- File modes
- Exceptions
- Handling exceptions using try-except block
- Multiple except blocks
- Raising exceptions
Module 5: Test Automation - Selenium
- Introduction to Selenium WebDriver
- Overview of Selenium WebDriver and its features
- Selenium WebDriver vs Selenium IDE vs Selenium Grid
- Setting Up Selenium WebDriver Environment
- Installing Selenium WebDriver
- Configuring Selenium WebDriver with Python and an IDE (e.g. PyCharm)
- Creating a basic Selenium WebDriver script
- Locating Web Elements
- Understanding HTML and CSS
- Locating elements using XPath and CSS selectors
- Locating elements using other methods (e.g. name, ID)
- Interacting with Web Elements
- Clicking buttons and links
- Typing text into text fields
- Handling checkboxes and radio buttons
- Selecting values from dropdown menus
- Navigating Through Web Pages
- Navigating to a page
- Refreshing a page
- Navigating forward and backward
- Handling alerts and pop-ups
- Synchronization and Waits
- Understanding synchronization and its importance in Selenium WebDriver
- Implicit and explicit waits
- sleep() and its drawbacks
- Handling Frames and Windows
- Switching between frames and windows
- Interacting with elements inside frames and windows
- Handling Cookies
- Adding, deleting, and modifying cookies
- Interacting with cookies
- Taking Screenshots
- Capturing screenshots using Selenium WebDriver
- Saving screenshots to a file
- Handling Multiple Windows and Tabs
- Handling multiple windows and tabs in Selenium WebDriver
- Best practices for handling multiple windows and tabs
- Introduction to Test Automation
- Overview of test automation
- Advantages of test automation
- Creating Test Suites
- Creating a test suite
- Grouping tests into a test suite
- Running test suites
- Test Reporting
- Generating test reports
- Interpreting test results
- Test Automation Best Practices
- Writing maintainable and readable code
- Selecting good test cases for automation
- Avoiding common pitfalls of test automation
- Data Driven Testing
- Overview of data-driven testing
- Reading data from files (e.g. Excel, CSV)
- Creating and running data-driven tests
Cross-Browser Testing with Selenium WebDriver
- Introduction to Cross-Browser Testing
- Overview of cross-browser testing
- Advantages of cross-browser testing
- Configuring Browsers for Testing
- Setting up browsers for testing
- Configuring browsers for testing
- Cross-Browser Testing with Selenium WebDriver
- Writing scripts for cross-browser testing
- Running cross-browser tests
- Handling Browser-specific Issues
- Techniques for handling browser-specific issues
- Best practices for cross-browser testing
- Introduction to Frameworks
- Overview of frameworks
- Advantages of using frameworks
- Page Object Model
Module 6: Database Testing
- Introduction to Database Testing
- What is database testing?
- Why is database testing important?
- Types of database testing
- Understanding Relational Databases
- Basic concepts of a relational database
- Tables, rows, columns, and relationships
- Primary and foreign keys
- Normalization
- SQL Fundamentals
- Basic SQL syntax
- Common SQL statements (SELECT, INSERT, UPDATE, DELETE)
- Writing SQL queries to test databases
- Test Data Management
- Strategies for managing test data
- Creating test data
- Maintaining test data in databases
Module 7: API Testing
- Introduction to API testing: Definition, advantages, and why it
- RESTful web services: Overview of RESTful architecture, HTTP methods (GET, POST, PUT, DELETE), and status
- Tools and frameworks: Introduction to popular tools for API testing such as Postman, SoapUI, and frameworks like
- Setting up the environment: Installing and configuring the required tools and
- Making API requests: Understanding how to construct API requests, including headers, parameters, and request
- Validating API responses: Checking for expected results, using assertions, and handling different response formats (JSON, XML).
- Error handling: Dealing with unexpected errors and
POST-MAN
- Why PostMan
- CRUD Operation
- POSTMAN Parameter
- POSTMAN Console
- POSTMAN Assertion
NewMAN
- Export JSON Project
- Generate API Test Report
- Execute test suite in command line
Module 8: Performance Testing
- What is
- Build a Basic Test plan and
- User defined
- Increase the
- JMeter
- JMeter
- JMeter Regular
Module 9: Security Testing
- Introduction to Security Testing
- Definition of security testing
- Importance of security testing
- Types of security testing
- Common Security Threats
- Overview of common security threats such as SQL injection, cross-site scripting (XSS), and cross-site request forgery (CSRF)
- OWASP Top Ten
- Overview of the OWASP (Open Web Application Security Project) Top Ten vulnerabilities
- Explanation of each vulnerability and how to detect them
- Security Testing Tools
- Overview of security testing tools, including open-source and commercial tools
- Tools for automated and manual security testing
- Vulnerability Scanning
- Overview of vulnerability scanning
- Using vulnerability scanners to detect security vulnerabilities in web applications
- Penetration Testing
- Overview of penetration testing
- Types of penetration testing
- Conducting a basic penetration test
- Best Practices for Security Testing
- Guidelines and best practices for effective security testing
- Incorporating security testing into the development lifecycle