Search icon
Subscription
0
Cart icon
Close icon
You have no products in your basket yet
Arrow left icon
All Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Newsletters
Free Learning
Arrow right icon
Test Automation Engineering Handbook

You're reading from  Test Automation Engineering Handbook

Product type Book
Published in Jan 2023
Publisher Packt
ISBN-13 9781804615492
Pages 276 pages
Edition 1st Edition
Languages
Author (1):
Manikandan Sambamurthy Manikandan Sambamurthy
Profile icon Manikandan Sambamurthy

Table of Contents (18) Chapters

Preface 1. Part 1: The Basics
2. Chapter 1: Introduction to Test Automation 3. Chapter 2: Test Automation Strategy 4. Chapter 3: Common Tools and Frameworks 5. Part 2: Practical Affairs
6. Chapter 4: Getting Started with the Basics 7. Chapter 5: Test Automation for Web 8. Chapter 6: Test Automation for Mobile 9. Chapter 7: Test Automation for APIs 10. Chapter 8: Test Automation for Performance 11. Part 3: Continuous Learning
12. Chapter 9: CI/CD and Test Automation 13. Chapter 10: Common Issues and Pitfalls 14. Assessments 15. Index 16. Other Books You May Enjoy Appendix A:Mocking API Calls

Familiarizing yourself with common terminologies and definitions

In this section, we will look at some of the most commonly used terms in the quality engineering space. Since quality engineering is part of the software engineering practice, you would notice quite a few familiar terms if you’re a software engineer:

  • A/B testing: Testing to compare two versions of a web page for performance and/or usability to decide which one better engages the end users.
  • Acceptance testing: A testing technique to establish whether a feature/product meets the acceptance criteria of business users or end users.
  • Agile methodology: This is an iterative approach to software development that puts collaboration and communication at the forefront. Essentially, it is a set of ideas to deliver software to customers quickly and efficiently.
  • Behavior-Driven Development (BDD): BDD is a common Agile practice where critical business scenarios are first documented and then implemented to make sure the end product evolves continuously with shared understanding. We will look at an implementation of the BDD framework in Chapter 7.
  • Black-box testing: This testing technique focuses on the output of a product, ignoring the design and implementation details.
  • Data-driven testing: A common automated testing approach where a reusable logic, often part of a test script, is run over a collection of test data to compare the actual and expected results.
  • End-to-end testing: A testing technique to ensure that the integrated components of a product work as expected. This is a very important testing type to verify critical business flows.
  • Exploratory testing: A manual testing approach where the product is tested in an investigative and inquisitive manner without documented steps with the main goal of finding bugs.
  • Integration testing: A testing technique in which the communication logic of the individual software components or services are combined and tested as a group.
  • Load testing: A type of testing to evaluate the performance of a software application by simulating the real-world traffic on the system. It can be done with a software system as a whole or just an API or database. We will consider the setup for load testing in Chapter 8.
  • Penetration testing: This is a type of security testing where a tester attempts to find and exploit the vulnerabilities of a software application.
  • Security testing: A testing type to ensure that all the required defenses are in place against various types of cyber threats.
  • Stress testing: This is a type of performance testing where the system is subject to heavy loads with the intention of breaking it. Stress testing is mainly used to determine the performance limits of a software application. We will look into the setup for stress testing in Chapter 8.
  • API testing: This is a testing type focused on verifying the API’s logic, build, and structure. The main goal is to validate the functional logic of the APIs. We will look at an implementation of API testing in Chapter 7.
  • Smoke testing: A testing technique that is primarily used to check the core features of a product when there is a change introduced or before releasing it to a wider audience.
  • System testing: A testing type used to evaluate the software system as a whole to make sure the integration of all the components is working as expected.
  • Test case: This is a collection of steps, data, and expected results to test a piece of code or a functional component within a software application.
  • Test plan: This is a document that outlines a methodical approach to testing a software application. It provides a detailed perspective on testing the various parts of the application in its parts and as a whole.
  • Test-Driven Development (TDD): This is an approach mainly used in the Agile world where a test is written first followed by just enough code to fulfill the test. The refactoring of the code continues to follow the tests, thus keeping the emphasis on specifications.
  • Test suite/test automation suite: A collection of automated test scripts and associated dependencies used to run against the software application.
  • Unit testing: A type of testing in which the logic of the smallest components or objects of software is tested. This is predominantly the first type of testing performed in the development life cycle.
  • Usability testing: This is a testing technique used to evaluate a product (usually, a web application) with the aim of assessing the difficulties in using the product.
  • Validation: This is the process of ensuring the input and output parameters of a product. It answers this question: Are we building the product correctly?
  • Verification: This is the process of checking whether the product fulfills the specified requirements. Verifications answer question: Are we building the right product?
  • Waterfall model: This is a project management methodology in which the software development life cycle is divided into multiple phases, and each phase is executed in a sequential order.
  • White-box testing: A testing technique to validate the features of a product through low-level design and implementation.

We have equipped ourselves with the knowledge of a wide array of terms used in the quality industry. Now, let’s quickly summarize what we have seen in this chapter.

You have been reading a chapter from
Test Automation Engineering Handbook
Published in: Jan 2023 Publisher: Packt ISBN-13: 9781804615492
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $15.99/month. Cancel anytime}