自动化测试一开始听起来像是一场噩梦,尤其是当您已经从事手动测试业务这么长时间时。看看自动化测试需求的发展速度,网站测试人员必须深入研究自动化并开始学习。成为职业选手需要时间;它需要对众多自动化工具和框架的知识和深入理解。作为自动化测试的初学者,您可能期待接触开源测试框架。在本 Selenium Java 教程中,我将演示一个使用 Java 的 Selenium 登录示例,以帮助您自动化登录过程。
使用 Selenium 和 Java 或任何其他编程语言来自动化登录过程是成为成功的自动化测试人员的第一步。话不多说,让我们开始吧。
Selenium Java 教程的一些先决条件
在开始学习 Selenium Java 登录过程教程之前,我们需要了解先决条件。首先,所有应用程序(无论其目标域是什么)通常都具有与其关联的登录功能流程。无论是电子商务、银行、医疗还是教育,都要求用户登录应用程序才能进一步使用。顾名思义,本教程提供了基本的理解,帮助初学者开始使用 Selenium 和 Java 进行自动化测试。我们将研究使用 Java(用于多种技术和领域的最通用的语言之一)的 Selenium 登录示例。为了开始这一点,您需要对 Java 有基本的了解。首先,确保您具备开始使用 Java 和 Selenium 编写第一个登录脚本的所有先决条件。
- 驱动程序可执行文件:根据您希望执行脚本的浏览器,其 Selenium 可执行文件。当您向下浏览页面时,将可以下载 Chrome、Mozilla、Opera 和 Edge 驱动程序等各种浏览器,以帮助您使用 Selenium 执行自动化跨浏览器测试。
就这些。打开 Eclipse 并创建您的项目。将 Selenium jar 添加到 Java 构建路径中,然后就可以开始了。
Selenium 测试用例的基本步骤
在我们使用 Selenium 和 Java 执行登录验证的自动化测试之前,无论您打算编写哪个测试用例,都需要遵循一些基本步骤。如果您遵循它们,您的自动化套件中将永远不会有不完整的测试用例:
- 创建一个 Selenium WebDriver 实例。
- 如果需要,配置您的浏览器(例如,最大化浏览器、禁用浏览器通知等)。
- 导航到所需的 URL(网页)。
- 找到 HTML 元素。
- 对找到的 HTML 元素执行操作。
- 验证并验证该操作(已完成的步骤)。
- 使用测试用例框架截取屏幕截图并生成报告。
让我们用 Java 自动化 Selenium 登录
我将在下面的文章中提到的脚本将引用这些步骤。我们不会考虑第七步,因为这需要一篇专门的文章,我计划在我即将发布的博客中这样做,所以请继续关注!现在,让我们详细研究这些步骤,以帮助我们使用 Selenium 执行自动化测试以通过 Java 登录:
1.创建Selenium WebDriver实例
Webdriver driver=new ChromeDriver();
为了在所需的浏览器中启动网站,您需要将系统属性设置为所需浏览器的驱动程序路径。在本 Selenium Java 教程中,我们将使用 Chromedriver 来演示使用 Java 进行 Selenium 登录示例。其语法如下:System.setProperty(“webdriver.chrome.driver”, “File path for the Exe”);
2. 如果需要,配置您的浏览器
根据需要,我们可以配置浏览器。例如,在有关使用 Java 进行 Selenium 登录的 Selenium Java 教程中,默认情况下浏览器将处于最小化模式。但是,我们可以将浏览器设置为最大化模式。下面是语法。driver.manage().window().maximize();
您可以为配置浏览器执行的其他操作是设置不同的选项,例如禁用信息栏、浏览器通知和添加扩展程序。您还可以使用 功能类 在各种浏览器上运行脚本,从而有助于跨浏览器测试。
3. 导航到所需的 URL
使用所需的 URL 打开浏览器。您所要做的就是编写以下语法,然后在所需的实例化浏览器中打开您的 URL。driver.get(“LinkedIn Login, Sign in | LinkedIn”);
4. 找到 HTML 元素
这是编写 Selenium 脚本的核心。为此,您需要清楚地了解用于查找 HTML 元素的不同定位器。您可以参考我的以下文章,其中讨论了 Selenium 中可用的不同定位器以及如何通过不同示例来定位元素:
例如,我们尝试找到 LinkedIn 登录表单的电子邮件和密码字段
以下是电子邮件输入框的 DOM 结构:
您可以通过 Selenium WebDriver 中的 ID 定位器找到它,如下所示:driver.findElement(By.id(“username”));
由于这会返回一个 Web 元素,因此您可以将其存储在 Web 元素变量中,如下所示:WebElement username=driver.findElement(By.id(“username”));
对于密码和登录按钮字段也可以实现相同的效果,即
格式:
driver.findElement(By.id(“密码”)); WebElement 密码=driver.findElement(By.id(“密码”)); driver.findElement(By.xpath(“//button[text()='登录']”)); WebElement login= driver.findElement(By.xpath(“//button[text()='登录']”));