Programowanie
IT Governance Publishing, Lee Newcombe
Cloud computing plays a critical role in modern business, but with it comes a host of security challenges. This book explores the intricacies of securing cloud services, starting with foundational concepts of cloud computing and moving into specific service and deployment models. It provides insights into balancing security benefits with potential risks such as availability issues, shadow IT, and information leakage. The book goes on to focus on security threats, from hackers and insiders to government entities, while offering strategies to mitigate these risks. The practical approach continues with a deep dive into security architecture, providing a structured model to secure cloud environments across IaaS, PaaS, SaaS, and more. Further, it examines the regulatory landscape, including compliance requirements, privacy concerns, and data protection laws that impact cloud service security. Finally, the book concludes with projections about the future of cloud security and emerging challenges. Readers will gain not only the theoretical foundations but also real-world insights that they can apply to strengthen their cloud service security.
Akash Mahajan, MADHU AKULA
Security automation is one of the most interesting skills to have nowadays. Ansible allows you to write automation procedures once and use them across your entire infrastructure. This book will teach you the best way to use Ansible for seemingly complex tasks by using the various building blocks available and creating solutions that are easy to teach others, store for later, perform version control on, and repeat.We’ll start by covering various popular modules and writing simple playbooks to showcase those modules. You’ll see how this can be applied over a variety of platforms and operating systems, whether they are Windows/Linux bare metal servers or containers on a cloud platform. Once the bare bones automation is in place, you’ll learn how to leverage tools such as Ansible Tower or even Jenkins to create scheduled repeatable processes around security patching, security hardening, compliance reports, monitoring of systems, and so on. Moving on, you’ll delve into useful security automation techniques and approaches, and learn how to extend Ansible for enhanced security. While on the way, we will tackle topics like how to manage secrets, how to manage all the playbooks that we will create and how to enable collaboration using Ansible Galaxy. In the final stretch, we’ll tackle how to extend the modules of Ansible for our use, and do all the previous tasks in a programmatic manner to get even more powerful automation frameworks and rigs.
Corey Charles Sr., Frank McMahon
Designed to address the most common pain point for security teams—scalability—Security Automation with Python leverages the author’s years of experience in vulnerability management to provide you with actionable guidance on automating security workflows to streamline your operations and improve your organization’s overall security posture.What makes this book stand out is its hands-on approach. You won’t just learn theoretical concepts—you’ll apply Python-based automation techniques directly to real-world scenarios. Whether you're automating vulnerability scans, managing firewall rules, or responding to security incidents, this book provides clear examples and use cases, breaking down complex topics into easily digestible steps. With libraries like Paramiko, Requests, and PyAutoGUI, you’ll automate everything from network scanning and threat intelligence gathering to system patching and alert management. Plus, this book focuses heavily on practical tips for error handling, scaling automation workflows, and integrating Python scripts into larger security infrastructures.By the end of this book, you'll have developed a set of highly valuable skills, from creating custom automation scripts to deploying them in production environments, and completed projects that can be immediately put to use in your organization.
Selenium. Automatyczne testowanie aplikacji
Prashanth Sams
Poznaj możliwości automatycznych testów aplikacji sieciowych dzięki funkcjonalnościom Selenium WebDriver. Selenium WebDriver jest narzędziem udostępnianym na zasadach open source, które służy do automatyzacji testów aplikacji sieciowych. Oprogramowanie Selenium jest niezależne od systemu operacyjnego i może być obsługiwane w dowolnym z popularnych języków programowania. Historia tego narzędzia rozpoczyna się w 2004 roku. Dziś Selenium WebDriver jest na całym świecie najczęściej wykorzystywanym narzędziem do automatyzacji testów, cenionym za swoją wszechstronność, elastyczność i łatwość użytkowania. Przewodnik ten przeznaczony jest dla osób posiadających już pewną wiedzę o automatyzacji testów aplikacji. Zawarto tu niezbędne informacje o środowisku Selenium IDE oraz o sposobach jego wykorzystania do automatyzacji testów i debugowania rozbudowanych aplikacji. Przedstawiono narzędzie Selenium WebDriver, dzięki któremu można wykonywać testy automatyczne na wielu przeglądarkach. Opisano bardziej złożone mechanizmy uruchamiania takich testów w chmurze i omówiono funkcje udostępniane przez Selenium WebDriver API, które mogą zostać wykorzystane do tworzenia efektywnych testów automatycznych. Zaprezentowano również techniki tworzenia testów sterowanych danymi i zachowaniem aplikacji. Najważniejsze zagadnienia omówione w książce: zasady korzystania z oprogramowania Selenium IDE i Selenium Builder wykonywanie efektywnych testów kompatybilności funkcje Selenium WebDriver wraz z ich omówieniem i przykładami różne techniki zarządzania zadaniami automatycznymi Selenium frameworki, ich dostosowywanie i tworzenie nowych na podstawie Selenium WebDriver Prashanth Sams jest inżynierem automatyzacji testów działającym w branży IT od 2011 roku. Zdobył bogate doświadczenie przy realizacji wielu projektów, pracując z różnymi narzędziami do automatyzacji. Uwielbia nowe technologie, a przy tym chętnie dzieli się swoją wiedzą, aktywnie wspierając społeczności programistów i testerów, szczególnie oprogramowania Selenium. Testowanie aplikacji? Z Selenium wykonasz je sprawnie i efektywnie!
Carl Cocchiaro
The Selenium WebDriver 3.x Technology is an open source API available to test both Browser and Mobile applications. It is completely platform independent in that tests built for one browser or mobile device, will also work on all other browsers and mobile devices. Selenium supports all major development languages which allow it to be tied directly into the technology used to develop the applications. This guide will provide a step-by-step approach to designing and building a data-driven test framework using Selenium WebDriver, Java, and TestNG.The book starts off by introducing users to the Selenium Page Object Design Patterns and D.R.Y Approaches to Software Development. In doing so, it covers designing and building a Selenium WebDriver framework that supports both Browser and Mobile Devices. It will lead the user through a journey of architecting their own framework with a scalable driver class, Java utility classes, JSON Data Provider, Data-Driven Test Classes, and support for third party tools and plugins.Users will learn how to design and build a Selenium Grid from scratch to allow the framework to scale and support different browsers, mobile devices, versions, and platforms, and how they can leverage third party grids in the Cloud like SauceLabs.Other topics covered include designing abstract base and sub-classes, inheritance, dual-driver support, parallel testing, testing multi-branded applications, best practices for using locators, and data encapsulation.Finally, you will be presented with a sample fully-functional framework to get them up and running with the Selenium WebDriver for browser testing.By the end of the book, you will be able to design your own automation testing framework and perform data-driven testing with Selenium WebDriver.
Selenium i testowanie aplikacji. Receptury. Wydanie II
Unmesh Gundecha
Projektanci nowoczesnych aplikacji internetowych muszą obecnie sprostać wielu wyzwaniom. Oprogramowanie, które tworzą, musi działać wydajnie i bezbłędnie w różnych przeglądarkach, na różnych platformach, na różnych urządzeniach. Wobec rosnących wymagań testowanie aplikacji staje się bardzo ważnym etapem jej rozwoju. Jako że zaprojektowanie i przeprowadzenie takich testów jest dość złożonym zadaniem, warto zapewnić sobie sprawdzone narzędzie umożliwiające automatyzację testów aplikacji. Takim narzędziem z pewnością jest Selenium Web Driver — framework służący do automatyzacji przeglądarek internetowych. W tej książce przedstawiono zaawansowane techniki testowania aplikacji internetowych za pomocą Selenium Web Driver i pokrewnych narzędzi. Zaprezentowano skuteczne i efektywne metodyki testowania aplikacji przeznaczonych dla komputerów stacjonarnych, przeglądarek mobilnych i działających w środowisku rozproszonym. Opisano tu również wzorce projektowe, takie jak testy bazujące na danych, obiekty stron i mapy obiektów. Przedstawiono techniki rozszerzania frameworka Selenium i dostosowywania go do szczególnych działań. W książce zaprezentowano ponad 80 receptur, które z pewnością okażą się przydatne podczas automatyzacji testów aplikacji. Czego możesz oczekiwać od tej książki... Zrozumiesz działanie lokalizatorów. Nauczysz się korzystać z różnych metod lokalizowania, co pomoże Ci budować niezawodne testy. Nauczysz się wzorca PageFactory, który pozwala budować rozbudowane i łatwe do utrzymania frameworki testów. Zapoznasz się ze sposobami integracji Selenium WebDriver API z narzędziami ATDD (BDD) takimi, jak Cucumber, SpecFlow, Capybara i Behave. Nauczysz się konfigurować symulatory i urządzenia iPhone (Android) w celu testowania aplikacji webowych za pomocą Appium. Dowiesz się, jak skonfigurować środowisko Selenium Grid pozwalające na szybsze i współbieżne wykonywanie testów. Dzięki niemu zwiększysz pokrycie testowe oraz skrócisz czas uruchomienia testów dla wielu przeglądarek. Będziesz potrafił budować rozszerzone testy Selenium WebDriver dla zwiększenia pokrycia Twojej aplikacji testami. Nowoczesne testowanie: Selenium Web Driver!