{"product_id":"boozang-from-the-trenches-9781484290095","title":"Boozang from the Trenches","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e\u003cbr\u003ePart 1: Testing web applications in an Enterprise context, why Boozang Chapter 1: \u003ci\u003eWeb Test Automation in an Enterprise environment\u003c\/i\u003e \u003cp\u003e\u003cb\u003eChapter Goal: \u003c\/b\u003e\u003ci\u003eThis chapter introduces basic Test Automation concepts that will be used throughout the book. Besides ISTQB standard terminology, I’ll also cover the constraints typical of an Enterprise environment that might not be the same for small startups and IT giants.\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003cb\u003eNo of pages\u003c\/b\u003e    15\u003c\/p\u003e  \u003cp\u003e\u003cb\u003eSub -Topics\u003c\/b\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e1.                  \u003c\/i\u003e\u003ci\u003eCommon Test Automation challenges\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e2.                  \u003c\/i\u003e\u003ci\u003eTest levels, test types and testing roles\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e3.                  \u003c\/i\u003e\u003ci\u003eTest automation in agile development\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e4.                  \u003c\/i\u003e\u003ci\u003eTest Automation ROI, theory and practice\u003c\/i\u003e\u003c\/p\u003e  Chapter 2: \u003ci\u003eSelenium, best practices and pain points\u003c\/i\u003e  \u003cp\u003e\u003cb\u003eChapter Goal: \u003c\/b\u003e\u003ci\u003eThis chapter presents the typical approach to testing web applications with coded solutions like Selenium and highlights the main pain points that could undermine a Test Automation initiative's success.\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003cb\u003eNo of pages\u003c\/b\u003e: 5\u003c\/p\u003e  \u003cp\u003e\u003cb\u003eSub - Topics\u003c\/b\u003e   \u003c\/p\u003e  \u003cp\u003e\u003ci\u003e1.                  \u003c\/i\u003e\u003ci\u003eLocators and Page Objects pattern\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e2.                  \u003c\/i\u003e\u003ci\u003eBrowsers and WebDriver compatibility\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e3.                  \u003c\/i\u003e\u003ci\u003eTiming and waits\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e4.                  \u003c\/i\u003e\u003ci\u003eData management \u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e5.                  \u003c\/i\u003e\u003ci\u003eReporting and script readability\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e6.                  \u003c\/i\u003e\u003ci\u003eDevelopment skills\u003c\/i\u003e\u003c\/p\u003e  Chapter 3: \u003ci\u003eMeet Boozang\u003c\/i\u003e \u003cp\u003e\u003cb\u003eChapter Goal: \u003c\/b\u003e\u003ci\u003eThis chapter introduces Boozang and how it addresses the pain points of a coded solution as described in the previous chapter. It also presents a possible selection approach for selecting an automation tool, particularly the one I followed before adopting Boozang.\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003cb\u003e \u003c\/b\u003e\u003c\/p\u003e  \u003cp\u003e\u003cb\u003eNo of pages\u003c\/b\u003e : 11\u003c\/p\u003e  \u003cp\u003e\u003cb\u003eSub - Topics:\u003c\/b\u003e   \u003c\/p\u003e  \u003cp\u003e1.                   \u003ci\u003eProof of Concept phase\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e2.                  \u003c\/i\u003e\u003ci\u003e Pilot phase\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e3.         \u003c\/i\u003e\u003ci\u003e Why Boozang\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e4.          Codeless approach, how important is it?\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e \u003c\/p\u003e  Chapter 4: \u003ci\u003eThe TCS project\u003c\/i\u003e \u003cp\u003e\u003cb\u003eChapter Goal: \u003c\/b\u003e\u003ci\u003eThis chapter presents the context of the TCS project used all along the book to provide practical examples. I believe that there is no one size fits all solution for software testing and tools. Therefore, clarifying the context is very important to better understand the examples and consider possible adaptations one will have to make for a different context.\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003cb\u003e \u003c\/b\u003e\u003c\/p\u003e  \u003cp\u003e\u003cb\u003eNo of pages\u003c\/b\u003e: 8\u003c\/p\u003e  \u003cp\u003e\u003cb\u003eSub - Topics: \u003c\/b\u003e\u003c\/p\u003e  \u003cp\u003e1.          \u003ci\u003eTCS Organization and Test Automation history\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e2.          NIS project introduction\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e3.          Test automation stream, NISTA setup\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e \u003c\/p\u003e  Chapter 5: \u003ci\u003eHow Boozang was born\u003c\/i\u003e \u003cp\u003e\u003cb\u003eChapter Goal: \u003c\/b\u003e\u003ci\u003eThis chapter is a special one about the history behind Boozang. I believe it gives a great idea about this tool's strengths: the two key persons behind it. This input has been kindly provided by Mats Ljunggren.\u003c\/i\u003e\u003c\/p\u003e  PART 2: Boozang main concepts and use cases Chapter 6:  \u003ci\u003eStarting up with Boozang\u003c\/i\u003e \u003cp\u003e\u003cb\u003eChapter Goal: \u003c\/b\u003e\u003ci\u003eOne of the advantages of a tool like Boozang versus a coded approach is that setting up your first projects is really easy and fast. Nothing to install, no code or POM files to prepare.  This chapter will go over the registration process and the few steps needed to create a project. We will also see how to administer your account and projects and finally show how Boozang works behind the scenes.\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003cb\u003e \u003c\/b\u003e\u003c\/p\u003e  \u003cp\u003e\u003cb\u003eNo of pages\u003c\/b\u003e: 22\u003c\/p\u003e  \u003cp\u003e\u003cb\u003eSub - Topics: \u003c\/b\u003e\u003c\/p\u003e  \u003cp\u003e1.         \u003ci\u003eCreating your first project\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e2.         The administrative User Interface\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e3.         Boozang under the hood\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e4.         Practice: NISTA setup part 1\u003c\/i\u003e\u003c\/p\u003e   \u003cp\u003e\u003c\/p\u003e  Chapter 7: \u003ci\u003eMain concepts and entities\u003c\/i\u003e \u003cp\u003e\u003cb\u003eChapter Goal: \u003c\/b\u003e\u003ci\u003e This chapter describes the core objects available in Boozang and starts introducing the Integrated Development Environment (IDE).\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003cb\u003eNo of pages\u003c\/b\u003e: 38\u003c\/p\u003e  \u003cp\u003e\u003cb\u003eSub - Topics: \u003c\/b\u003e\u003c\/p\u003e  1.           \u003ci\u003eModules and SubModules\u003c\/i\u003e\u003cp\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e2.           Application environments\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e3.          Tests and Test Suites\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e4.          Features and Scenarios\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e5.          Searching and bookmarks\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e6.          Recording\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e7.          Generate and reference Test\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e8.          Execution and Reporting\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e9.          Projects settings and UI Customization\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e10.  Updates from the trenches\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e \u003c\/p\u003e   \u003cp\u003e\u003c\/p\u003e  Chapter 8:  \u003ci\u003eElements location approach\u003c\/i\u003e \u003cp\u003e\u003cb\u003eChapter Goal: \u003c\/b\u003e\u003ci\u003eThis chapter describes Boozang’s unique approach for locating WEB GUI elements, one of the features that sets it apart from other tools. Boozang, with its set of locators based on natural language, allows you to focus on the scenario flow rather than the web page DOM.\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003cb\u003eNo of pages\u003c\/b\u003e: 14\u003c\/p\u003e  \u003cp\u003e\u003cb\u003eSub - Topics: \u003c\/b\u003e\u003c\/p\u003e  \u003cp\u003e1.          \u003ci\u003e Boozang location strategy\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e2.           Fine tuning the locators\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e3.           Validating the expected results\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e \u003c\/p\u003e  \u003cp\u003e \u003c\/p\u003e  Chapter 9:  \u003ci\u003eExit conditions, conditional flows, and timers\u003c\/i\u003e \u003cp\u003e\u003cb\u003eChapter Goal:  \u003c\/b\u003e\u003ci\u003eThe first test you will try with Boozang will be a simple sequential list of actions. But, as soon as you start implementing real scenarios, you will have to use exit conditions, loops, and conditional flows. In combination with this, you may need to adjust the timing of some locators, as some applications may have slow background processes, heavy loading pages, and\/or javascripts. In this chapter, we see how to apply these concepts to build solid and reusable building blocks.\u003c\/i\u003e\u003cb\u003e\u003c\/b\u003e\u003c\/p\u003e  \u003cp\u003e\u003cb\u003eNo of pages\u003c\/b\u003e: 21\u003c\/p\u003e  \u003cp\u003e\u003cb\u003eSub - Topics: \u003c\/b\u003e\u003c\/p\u003e  \u003cp\u003e1.          \u003ci\u003eExit conditions \u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e2.          Conditional flows\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e3.          Loop groups\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e4.    Timers\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e \u003c\/p\u003e  \u003cp\u003e \u003c\/p\u003e  Chapter 10: \u003ci\u003eData Management\u003c\/i\u003e \u003cp\u003e\u003cb\u003eChapter Goal: \u003c\/b\u003e\u003ci\u003eThis is probably one of the most important chapters, as data management is one of the main keys to build reusable components. Boozang is extremely powerful and flexible when it comes to managing test data. But power and flexibility can hide a complexity cost if you don’t use it properly.\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003cb\u003eNo of pages\u003c\/b\u003e: 13\u003c\/p\u003e  \u003cp\u003e\u003cb\u003eSub - Topics: \u003c\/b\u003e\u003c\/p\u003e  \u003cp\u003e1.         \u003ci\u003eData management concepts\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e2.         Parameters \u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e3.         Project data ($project)\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e4.   Module data ($module)\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e5.  Test data ($test)\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e6.  Loops ($loop, $group, $action)\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e7.  Examples from the trenches\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e \u003c\/p\u003e  Chapter 11: \u003ci\u003eReporting and troubleshooting\u003c\/i\u003e \u003cp\u003e\u003cb\u003eChapter Goal: \u003c\/b\u003e\u003ci\u003eThis chapter covers some standard and more advanced reporting features available in Boozang as well as the best way you can analyze failures with minimal effort.\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003cb\u003e \u003c\/b\u003e\u003c\/p\u003e  \u003cp\u003e\u003cb\u003eNo of pages\u003c\/b\u003e: 20\u003c\/p\u003e  \u003cp\u003e\u003cb\u003eSub - Topics: \u003c\/b\u003e\u003c\/p\u003e  \u003cp\u003e1.          \u003ci\u003eTest reports \u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e2.          Trend reports\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e3.          Troubleshooting failures\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e \u003c\/p\u003e  \u003cp\u003e \u003c\/p\u003e  PART 3: Integrations and Advanced topics \u003cp\u003e \u003c\/p\u003e  Chapter 12:  \u003ci\u003eAPIs and mixed API\/GUI testing\u003c\/i\u003e \u003cp\u003e\u003cb\u003eChapter Goal:\u003c\/b\u003e\u003ci\u003e In today’s world applications are highly interconnected, both with internal and external systems. Restful APIs are becoming the de-facto standard to allow this communication. This chapter explains how to test Restful APIs and create scenarios with both GUI and API actions. Boozang allows you to do API testing as well as mix API calls within your GUI tests.\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003cb\u003eNo of pages\u003c\/b\u003e: 17\u003c\/p\u003e  \u003cp\u003e\u003cb\u003eSub - Topics: \u003c\/b\u003e\u003c\/p\u003e  \u003cp\u003e1.         \u003ci\u003eRestful APIs \u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e2.         Why Boozang for testing APIs?\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e3.         API Tests in Boozang\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e4.   Server side mock with JSON Server\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e5.   API Tests from the trenches\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e \u003c\/p\u003e  Chapter 13: \u003ci\u003eGherkin and Behavior Driven Development\u003c\/i\u003e \u003cp\u003e\u003cb\u003eChapter Goal:  \u003c\/b\u003e\u003ci\u003eThis chapter introduces the reader to the Gherkin language and the practice of Behavior Driven Development (BDD), also known as Acceptance Test Driven Development (ATDD).\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003cb\u003eNo of pages\u003c\/b\u003e: 18\u003c\/p\u003e  \u003cp\u003e\u003cb\u003eSub - Topics: \u003c\/b\u003e\u003c\/p\u003e  \u003cp\u003e1.          \u003ci\u003eBehavior Driven Development\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e2.          Gherkin without BDD, pros and cons\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e3.          Gherkin language, readability above all,... if possible\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e4.    Some good and bad examples\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e \u003c\/p\u003e  Chapter 14: \u003ci\u003eJIRA with Boozang via XRay\u003c\/i\u003e \u003cp\u003e\u003cb\u003eChapter Goal: \u003c\/b\u003e\u003ci\u003eThis chapter shows how to effectively manage releases via JIRA, XRAy and Boozang to have a complete quality view on releases when using both manual and automated tests.\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003cb\u003e \u003c\/b\u003e\u003c\/p\u003e  \u003cp\u003e\u003cb\u003eNo of pages\u003c\/b\u003e: 17\u003c\/p\u003e  \u003cp\u003e\u003cb\u003eSub - Topics: \u003c\/b\u003e\u003c\/p\u003e  \u003cp\u003e1.          \u003ci\u003eUsing JIRA with XRay\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e2.          Boozang integration with XRay\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e \u003c\/p\u003e  Chapter 15: \u003ci\u003eJenkins and the Boozang runner\u003c\/i\u003e \u003cp\u003e\u003cb\u003eChapter Goal:  \u003c\/b\u003e\u003ci\u003eThis chapter shows how to use Jenkins for scheduling and reporting automated tests results in a CI\/CD pipeline. We will see how Boozang can be used with other tools to provide a fully automated pipeline and also how to reduce the execution time through parallel runs.\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003cb\u003eNo of pages\u003c\/b\u003e: 40\u003c\/p\u003e  \u003cp\u003e\u003cb\u003eSub - Topics: \u003c\/b\u003e\u003c\/p\u003e  \u003cp\u003e1.          \u003ci\u003eContinuous Delivery and the need for automating acceptance tests\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e2.          Puppeteer and the Boozang runner\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e3.          How to use the Docker runner\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e4.    Keeping execution time low with parallel runs\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e5.    Reports and log files\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e6.          Publishing reports on Jenkins and JIRA\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e7.    Complete working pipeline\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e8.    Docker in Docker setup\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e \u003c\/p\u003e   \u003cp\u003e\u003c\/p\u003e  Chapter 16:  \u003ci\u003eBoozang for teams\u003c\/i\u003e \u003cp\u003e\u003cb\u003eChapter Goal: \u003c\/b\u003e\u003ci\u003eWorking with a team increases productivity but brings new challenges. This chapter covers all the Boozang features for collaborative work, but also some specific details on how to effectively collaborate in a Test Automation project.\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003cb\u003e \u003c\/b\u003e\u003c\/p\u003e  \u003cp\u003e\u003cb\u003eNo of pages\u003c\/b\u003e: 26\u003c\/p\u003e  \u003cp\u003e\u003cb\u003eSub - Topics: \u003c\/b\u003e\u003c\/p\u003e  \u003cp\u003e1.          \u003ci\u003eTeam collaboration\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e2.          Explicit lock\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e3.          Concurrent development and safe refactoring with branches \u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e4.    Tests Map\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e\u003ci\u003e5.    Quality control\u003c\/i\u003e\u003c\/p\u003e  \u003cp\u003e \u003c\/p\u003e  \u003cp\u003e \u003c\/p\u003e  Conclusions \u003cp\u003e \u003c\/p\u003e  Appendix ","brand":"APress","offers":[{"title":"Default Title","offer_id":48885831074135,"sku":"9781484290095","price":41.24,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781484290095.jpg?v=1722537853","url":"https:\/\/bookcurl.com\/products\/boozang-from-the-trenches-9781484290095","provider":"Book Curl","version":"1.0","type":"link"}