Muutke küpsiste eelistusi

Full Stack Testing: A Practical Guide for Delivering High Quality Software [Pehme köide]

  • Formaat: Paperback / softback, 386 pages
  • Ilmumisaeg: 17-Jun-2022
  • Kirjastus: O'Reilly Media
  • ISBN-10: 1098108132
  • ISBN-13: 9781098108137
Teised raamatud teemal:
  • Pehme köide
  • Hind: 63,19 €*
  • * hind on lõplik, st. muud allahindlused enam ei rakendu
  • Tavahind: 74,34 €
  • Säästad 15%
  • Raamatu kohalejõudmiseks kirjastusest kulub orienteeruvalt 2-4 nädalat
  • Kogus:
  • Lisa ostukorvi
  • Tasuta tarne
  • Tellimisaeg 2-4 nädalat
  • Lisa soovinimekirja
  • Formaat: Paperback / softback, 386 pages
  • Ilmumisaeg: 17-Jun-2022
  • Kirjastus: O'Reilly Media
  • ISBN-10: 1098108132
  • ISBN-13: 9781098108137
Teised raamatud teemal:

Testing is a critical discipline for any organization looking to deliver high-quality software. This practical book provides software developers and QA engineers with a comprehensive one-stop guide to testing skills in 10 different categories. You'll learn appropriate strategies, concepts, and practical implementation knowledge you can apply from both a development and testing perspective for web and mobile applications.

Author Gayathri Mohan offers examples of more than 40 tools you can use immediately. You'll acquire the skills to conduct exploratory testing, test automation, cross-functional testing, data testing, mobile testing, and visual testing, as well as tests for performance, security, and accessibility. You'll learn to integrate them in continuous integration pipelines to gain faster feedback. Once you dive into this guide, you'll be able to tackle challenging development workflows with a focus on quality.

With this book, you will:

  • Learn how to employ various testing types to yield maximum quality in your projects
  • Explore new testing methods by following the book's strategies and concepts
  • Learn how to apply these tools at work by following detailed examples
  • Improve your skills and job prospects by gaining a broad exposure to testing best practices

Foreword xi
Preface xiii
1 Introduction to Full Stack Testing 1(12)
Full Stack Testing for High Quality
3(2)
Shift-Left Testing
5(3)
Ten Full Stack Testing Skills
8(4)
Key Takeaways
12(1)
2 Manual Exploratory Testing 13(36)
Building Blocks
15(12)
Exploratory Testing Frameworks
15(8)
Exploring a Functionality
23(4)
Manual Exploratory Testing Strategy
27(5)
Understand the Application
28(2)
Explore in Parts
30(1)
Repeat Exploratory Testing in Phases
31(1)
Exercises
32(12)
API Testing
32(7)
Web UI Testing
39(5)
Perspectives: Test Environment Hygiene
44(2)
Key Takeaways
46(3)
3 Automated Functional Testing 49(48)
Building Blocks
51(5)
Introduction to Micro and Macro Test Types
51(5)
Automated Functional Testing Strategy
56(2)
Exercises
58(27)
UI Functional Tests
59(18)
Service Tests
77(4)
Unit Tests
81(4)
Additional Testing Tools
85(6)
Pact
85(4)
Karate
89(1)
AI/ML Tools in Automated Functional Testing
90(1)
Perspectives
91(4)
Antipatterns to Overcome
92(1)
100% Automation Coverage!
93(2)
Key Takeaways
95(2)
4 Continuous Testing 97(24)
Building Blocks
98(7)
Introduction to Continuous Integration
98(1)
The CI/CT/CD Process
99(4)
Principles and Etiquette
103(2)
Continuous Testing Strategy
105(6)
Benefits
109(2)
Exercise
111(7)
Git
111(3)
Jenkins
114(4)
The Four Key Metrics
118(2)
Key Takeaways
120(1)
5 Data Testing 121(36)
Building Blocks
122(11)
Databases
124(4)
Caches
128(1)
Batch Processing Systems
129(2)
Event Streams
131(2)
Data Testing Strategy
133(1)
Exercises
134(18)
SQL
135(5)
JDBC
140(3)
Apache Kafka and Zerocode
143(9)
Additional Testing Tools
152(2)
Test Containers
152(1)
Deequ
153(1)
Key Takeaways
154(3)
6 Visual Testing 157(26)
Building Blocks
158(4)
Introduction to Visual Testing
158(2)
Project/Business-Critical Use Cases
160(2)
Frontend Testing Strategy
162(7)
Unit Tests
163(1)
Integration/Component Tests
163(2)
Snapshot Tests
165(1)
Functional End-to-End Tests
166(1)
Visual Tests
166(1)
Cross-Browser Testing
167(1)
Frontend Performance Testing
168(1)
Accessibility Testing
169(1)
Exercises
169(8)
BackstopJS
169(5)
Cypress
174(3)
Additional Testing Tools
177(3)
Applitools Eyes, an AI-Powered Tool
178(1)
Storybook
179(1)
Perspectives: Visual Testing Challenges
180(1)
Key Takeaways
181(2)
7 Security Testing 183(34)
Building Blocks
185(16)
Common Cyberattacks
186(3)
The STRIDE Threat Model
189(2)
Application Vulnerabilities
191(3)
Threat Modeling
194(7)
Security Testing Strategy
201(3)
Exercises
204(8)
OWASP Dependency-Check
204(1)
OWASP ZAP
205(7)
Additional Testing Tools
212(3)
Snyk IDE Plug-in
213(1)
Talisman Pre-Commit Hook
213(1)
Chrome DevTools and Postman
214(1)
Perspectives: Security Is a Habit
215(1)
Key Takeaways
216(1)
8 Performance Testing 217(42)
Backend Performance Testing Building Blocks
218(11)
Performance, Sales, and Weekends Off Are Correlated!
218(1)
Simple Performance Goals
219(1)
Factors Affecting Application Performance
220(1)
Key Performance Indicators
221(2)
Types of Performance Tests
223(1)
Types of Load Patterns
224(2)
Performance Testing Steps
226(3)
Exercises
229(10)
Step 1: Define the Target KPIs
229(2)
Step 2: Define the Test Cases
231(1)
Steps 3-5: Prepare the Data, Environment, and Tools
231(1)
Step 6: Script the Test Cases and Run Them Using JMeter
232(7)
Additional Testing Tools
239(2)
Gatling
239(1)
Apache Benchmark
240(1)
Frontend Performance Testing Building Blocks
241(5)
Factors Affecting Frontend Performance
243(1)
RAIL Model
244(1)
Frontend Performance Metrics
245(1)
Exercises
246(7)
WebPageTest
247(3)
Lighthouse
250(3)
Additional Testing Tools
253(2)
PageSpeed Insights
253(1)
Chrome DevTools
254(1)
Performance Testing Strategy
255(2)
Key Takeaways
257(2)
9 Accessibility Testing 259(24)
Building Blocks
260(8)
Accessibility User Personas
261(1)
Accessibility Ecosystem
262(1)
Example: Screen Readers
263(1)
WCAG 2.0: Guiding Principles and Levels
264(1)
Level A Conformance Standards
265(3)
Accessibility Enabled Development Frameworks
268(1)
Accessibility Testing Strategy
268(4)
Accessibility Checklist in User Stories
269(1)
Automated Accessibility Auditing Tools
270(1)
Manual Testing
270(2)
Exercises
272(7)
WAVE
272(4)
Lighthouse
276(2)
Lighthouse Node Module
278(1)
Additional Testing Tools
279(2)
Pally CI Node Module
280(1)
Axe-core
280(1)
Perspectives: Accessibility as a Culture
281(1)
Key Takeaways
281(2)
10 Cross-Functional Requirements Testing 283(24)
Building Blocks
284(2)
CFR Testing Strategy
286(6)
Functionality
288(1)
Usability
289(1)
Reliability
290(1)
Performance
291(1)
Supportability
291(1)
Other CFR Testing Methods
292(12)
Chaos Engineering
292(4)
Architecture Testing
296(2)
Infrastructure Testing
298(2)
Compliance Testing
300(4)
Perspectives: Evolvability and the Test of Time!
304(1)
Key Takeaways
304(3)
11 Mobile Testing 307(36)
Building Blocks
308(7)
Introduction to the Mobile Landscape
308(5)
Mobile App Architecture
313(2)
Mobile Testing Strategy
315(8)
Manual Exploratory Testing
317(1)
Functional Automated Testing
318(1)
Data Testing
318(1)
Visual Testing
319(1)
Security Testing
319(1)
Performance Testing
320(1)
Accessibility Testing
321(1)
CFR Testing
322(1)
Exercises
323(11)
Appium
324(7)
Appium Visual Testing Plug-in
331(3)
Additional Testing Tools
334(6)
Android Studio's Database Inspector
335(1)
Performance Testing Tools
336(2)
Security Testing Tools
338(1)
Accessibility Scanner
339(1)
Perspectives: The Mobile Test Pyramid
340(1)
Key Takeaways
341(2)
12 Moving Beyond in Testing 343(10)
First Principles in Testing
343(6)
Defect Prevention over Defect Detection
344(1)
Empathetic Testing
345(1)
Micro- and Macro-Level Testing
345(1)
Fast Feedback
346(1)
Continuous Feedback
347(1)
Measuring Quality Metrics
347(2)
Communication and Collaboration Are Key to Quality
349(1)
Soft Skills Aid in Building a Quality-First Mindset
349(3)
Conclusion
352(1)
13 Introduction to Testing in Emerging Technologies 353(18)
Artificial Intelligence and Machine Learning
354(4)
Introduction to Machine Learning
354(2)
Testing ML Applications
356(2)
Blockchain
358(5)
Introduction to Blockchain Concepts
359(2)
Testing Blockchain Applications
361(2)
Internet of Things
363(5)
Introduction to the IoT's Five-Layer Architecture
364(2)
Testing IoT Applications
366(2)
Augmented Reality and Virtual Reality
368(3)
Testing AR/VR Applications
368(3)
Index 371
Gayathri Mohan is a passionate technology leader with expertise across multiple software development roles and technical and industrial domains. Gayathri has proven her mettle by successfully managing large quality assurance (QA) teams for clients at ThoughtWorks, where she is now Principal Consultant at Thoughtworks Chennai. While working as the company's Global QA SME, she defined career pathways and the desired skill development structure for QAs at Thoughtworks. As Office Tech Principal, Gayathri cultivated local tech communities, organized technical events and developed thought leadership across technical themes.

Gayathri is also coauthor of Perspectives of Agile Software Testing, released by ThoughtWorks on Selenium's 10th anniversary.