Test automation engineering handbook learn and implement techniques for building robust test automation frameworks
Understand test automation and implement it in Web, Mobile, and APIs effectively Key Features Learn how to automate your tests with the help of practical examples Understand how to bridge the gap between testing and test automation Explore test automation strategies for different platforms Book Desc...
Otros Autores: | |
---|---|
Formato: | Libro electrónico |
Idioma: | Inglés |
Publicado: |
Birmingham, England :
Packt Publishing, Limited
[2023]
|
Edición: | 1st ed |
Materias: | |
Ver en Biblioteca Universitat Ramon Llull: | https://discovery.url.edu/permalink/34CSUC_URL/1im36ta/alma991009712939406719 |
Tabla de Contenidos:
- Cover
- Title Page
- Copyright and Credits
- Contributors
- Table of Contents
- Preface
- Part 1: The Basics
- Chapter 1: Introduction to Test Automation
- Getting familiar with software testing
- Knowing the importance of testing
- Tasks involved in testing
- Testing in an world
- Defect management in testing
- Shift-Right and Shift-Left propositions
- Quality and DevOps
- Challenges in testing
- Test early, test often
- Understanding test automation
- Agile test automation
- Test automation challenges
- Finding and handling regression bugs
- Test automation metrics
- Exploring the roles in quality engineering
- Test automation engineer
- SDET
- Familiarizing yourself with common terminologies and definitions
- Summary
- Questions
- Chapter 2: Test Automation Strategy
- Technical requirements
- Knowing your test automation strategy
- Test automation objectives
- Gathering management support
- Defining the scope of test automation
- Test automation environment
- Implementing an Agile test automation strategy
- Reporting the test results
- Devising a good test automation strategy
- Selecting the right tools and training
- Standards of the test automation framework
- Testing in the cloud
- Understanding the test pyramid
- Unit/component tests
- Integration/API tests
- E2E/System/UI tests
- Structuring the test cycles
- Familiarizing ourselves with common design patterns
- Using design patterns in test automation
- Summary
- Questions
- Chapter 3: Common Tools and Frameworks
- Technical requirements
- The basic tools for every automation engineer
- The CLI
- Git
- Common test automation frameworks
- Selenium
- Appium
- Cypress
- JMeter
- AXE
- Choosing the right tool/framework
- Selecting a performance testing tool
- Selecting an API testing tool
- Selecting a web testing tool.
- Mobile
- Common considerations
- Summary
- Questions
- Part 2: Practical Affairs
- Chapter 4: Getting Started with the Basics
- Technical requirements
- Getting more familiar with Git
- Committing a change
- Resolving merge conflicts
- Additional Git commands
- Using an IDE
- Choosing an IDE
- Downloading and setting up VS Code
- Introduction to JavaScript
- Why learn JavaScript?
- Running a JavaScript program
- JavaScript basics
- Summary
- Questions
- Chapter 5: Test Automation for Web
- Technical requirements
- Why Cypress?
- Installing and setting up Cypress
- Creating your first test in Cypress
- Creating arrow functions in JavaScript
- Creating callback functions in JavaScript
- Writing our first spec
- Becoming familiar with the spec structure
- Executing our first spec
- Employing selectors and assertions
- Working with selectors
- Asserting on selectors
- Intercepting API calls
- Additional configurations
- Considerations for web automation
- Limitations of Cypress
- Web automation considerations
- Summary
- Questions
- Chapter 6: Test Automation for Mobile
- Technical requirements
- Getting to know Appium
- What is Appium?
- Advantages of using Appium
- Knowing WebdriverIO and its advantages
- Setting up Appium and WebdriverIO
- Appium installation
- Configuring an Android emulator
- Configuring WebdriverIO with Appium
- WebdriverIO Android configuration
- Appium Inspector installation and configuration
- Writing our first mobile test
- JavaScript functions with async/await
- First Appium/WebdriverIO test
- Key considerations for mobile automation
- Areas of complexity
- iOS-specific considerations
- Optimizing our mobile automation framework
- Summary
- Questions
- Chapter 7: Test Automation for APIs
- Technical requirements
- Getting started with Postman.
- Basics of REST API testing
- Downloading the Postman application
- Creating and managing workspaces
- Sending GET and POST requests
- Making a GET API request
- Making a POST API request
- Organizing API requests using collections
- Writing automated API tests
- Using snippets for asserting an API response
- Understanding Postman variables
- Chaining API requests
- Various ways to execute tests
- Key considerations for API automation
- Effective API test automation
- Testing GraphQL versus REST APIs
- Summary
- Questions
- Chapter 8: Test Automation for Performance
- Technical requirements
- Getting started with JMeter
- What is JMeter and how does it work?
- Installing JMeter
- Automating a performance test
- Building and running our first performance test
- Working with assertions
- Working with tests via the command line
- Using the HTTP(S) Test Script Recorder
- Java essentials for JMeter
- A quick introduction to Java
- Using the JSR233 assertion
- Considerations for performance testing
- Summary
- Questions
- Part 3: Continuous Learning
- Chapter 9: CI/CD and Test Automation
- Technical requirements
- What is CI/CD?
- CI/CD process
- CI basics
- CD and deployment pipeline
- Test automation strategies for CI/CD
- Unit/component tests
- API tests
- E2E tests (API and UI)
- Smoke tests
- Addressing test failures
- GitHub Actions CI/CD
- Summary
- Questions
- Chapter 10: Common Issues and Pitfalls
- Recurrent issues in test automation
- Unrealistic expectations of automated testing
- Inadequate manual testing
- Not focusing on automating the right things
- A lack of understanding of the system under test
- Overlooking test maintenance
- Not choosing the right tools
- Under-investing in test environments
- Taking a siloed approach
- Not taking a lean approach.
- Not having a plan for test data needs
- Test automation anti-patterns
- Coding and design anti-patterns in test automation
- Process-oriented anti-patterns in test automation
- Summary
- Questions
- Appendix A: Mocking API Calls
- How API mocking works
- Mocking API calls using Postman
- Considerations for API mocking
- Summary
- Assessments
- Chapter 1, Introduction to Test Automation
- Chapter 2, Test Automation Strategy
- Chapter 3, Common Tools and Frameworks
- Chapter 4, Getting Started with the Basics
- Chapter 5, Test Automation for Web
- Chapter 6, Test Automation for Mobile
- Chapter 7, Test Automation for APIs
- Chapter 8, Test Automation for Performance
- Chapter 9, CI/CD and Test Automation
- Chapter 10, Common Issues and Pitfalls
- Index
- Other Books You May Enjoy.