本书内容
为了让你能够快速入门,第1章先讲解如何建立一个基本的测试框架。之后会重点介绍如何通过Maven来设置项目,以下载依赖项。然后,使用TestNG在同一个浏览器中运行多个实例,展示并行执行测试的优势。接下来,讨论如何使用Maven插件自动下载驱动程序文件,使测试代码变得可移植,以及如何在后台模式下不间断地执行测试。
第2章探讨当测试执行失败时的应对方案。该章会深入分析测试可靠性为何十分重要,如何在Maven配置文件中设置测试的执行方式。你将了解持续集成、持续交付和持续部署的相关概念,并在持续集成服务器中设置测试构建。你还将学习如何连接到Selenium-Grid,如何在测试失败时截屏,以及如何通过读取栈追踪信息来分析测试失败的原因。
对于自动化测试出错的案例,第3章提出大量见解。该章探索Selenium能够产生的各类异常,介绍它们的意义。此外,你会更好地理解WebElement引用DOM元素的原理,了解Selenium的基本体系结构,并了解它如何向浏览器发送命令。
第4章讲述自动化测试失败的常见原因,以及各种等待解决方案。你将学习Selenium中等待策略的运作方式,了解如何使用等待策略来确保测试的稳定性和可靠性。
第5章探讨页面对象的定义,讲解如何有效使用这些对象避免失效。同时,该章还将介绍如何复用页面对象,精简代码以减少冗余,增强自动化测试的可读性。最后,该章展示如何创建流式页面对象。
第6章讲解如何使用高级用户交互API。你将学习如何挑战一些高难度的自动化场景,如悬停菜单和可拖曳控件。同时,该章还将探讨使用高级用户交互API可能遇到的一些问题。
第7章介绍JavascriptExecutor类的用法。该章将探讨如何使用JavaScript来解决复杂的自动化问题,还将讨论如何执行异步脚本,在执行完成时使用回调函数来通知Selenium。
第8章展示Selenium本身的局限性。接下来将探讨在各种场景下如何使用外部库和应用程序来扩展Selenium,以便你可以使用合适的工具和手段来完成任务。
第9章展示如何将Docker和Selenium结合在一起。你会发现在Docker中启动Selenium-Grid是多么容易的一件事,还将了解如何将Docker集成到构建过程中。
第10章首先讲述机器学习和人工智能,然后讨论如何通过Applitools Eyes使用人工智能技术。
附录A讲述有助于改善Selenium项目的各种途径。
附录B探讨从TestNG切换到JUnit所需的转变。
附录C讲述如何创建基于Appium的测试框架。