Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Enhanced Test Automation with WebdriverIO

You're reading from   Enhanced Test Automation with WebdriverIO Unlock the superpowers of hybrid testing frameworks

Arrow left icon
Product type Paperback
Published in Nov 2023
Publisher Packt
ISBN-13 9781837630189
Length 328 pages
Edition 1st Edition
Languages
Arrow right icon
Authors (2):
Arrow left icon
Larry C. Goddard Larry C. Goddard
Author Profile Icon Larry C. Goddard
Larry C. Goddard
Paul M. Grossman Paul M. Grossman
Author Profile Icon Paul M. Grossman
Paul M. Grossman
Arrow right icon
View More author details
Toc

Table of Contents (20) Chapters Close

Preface 1. Chapter 1: The Utility Belt – Tools Every Superhero SDET Needs 2. Chapter 2: Fortress of Solitude – Configuring WebdriverIO FREE CHAPTER 3. Chapter 3: Cybernetic Enhancements – WebdriverIO Config and Debug Tips 4. Chapter 4: Super Speed – Time-Travel Paradoxes and Broken Promises 5. Chapter 5: Alter Egos – The ClickAdv Wrapper 6. Chapter 6: The setValue Wrapper – Entering Text and Dynamic Data Replacement 7. Chapter 7: The Select Wrapper – Choosing Values in Lists and Comboboxes 8. Chapter 8: The Assert Wrapper – the Importance of Embedded Details 9. Chapter 9: The Ancient Spell Book – Building the Page Object Model 10. Chapter 10: Increased Flexibility – Writing Robust Selectors and Reducing Maintenance 11. Chapter 11: Echo Location – Skipping the Page Object Model 12. Chapter 12: Superhero Landing – Setting Up Flexible Navigation Options 13. Chapter 13: The Multiverses – Cross-Browser Testing and Cross-Environment Testing 14. Chapter 14: The Time-Traveler’s Dilemma – State-Driven End to End User Journeys 15. Chapter 15: The Sentient Cape – Running Tests in a CI/CD Pipeline with Jenkins and LambdaTest 16. Epilogue
17. Index 18. Other Books You May Enjoy Appendix: The Ultimate Guide to TypeScript Error Messages, Causes, and Solutions

The death of fibers and synchronous mode

Promises were added to JavaScript to make asynchronous callbacks to functions easier to implement. Functions were passed without parenthesis, making them visibly similar to variables and objects. Then, the async and await keywords were also added as syntactic sugar to make promises and callbacks easier. However, way back in 2014, there was the node-fibers package project, which implicitly wrapped statements as callbacks in the background.

Up until version 7.0, WebdriverIO leveraged the node-fibers package as part of the @wdio/sync feature. This meant all browser methods would execute synchronously without callbacks, promises, or await. This was a brilliant trade-off for WebdriverIO framework architects! It avoided the time travel issues while making the code less complex.

Unfortunately, the node-fibers project was discontinued in 2021. WebdriverIO was forced to notify users of two solutions – they could lock Node to the last supported...

lock icon The rest of the chapter is locked
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 $19.99/month. Cancel anytime
Banner background image