📜  Selenium Webdriver定位策略-通过link-text定位
📅  最后修改于: 2020-11-06 03:00:47             🧑  作者: Mango
定位策略-(通过链接文字)
在本节中,您将学习如何通过链接文本定位特定的Web元素。
让我们考虑一个测试案例,在该案例中,我们将自动化以下场景:
我们将逐步创建测试用例,以使您完全了解如何使用定位器来识别和定位特定的Web元素。
步骤1。启动Eclipse IDE,并打开我们在本教程前面的课程中创建的现有测试套件“ Demo_Test”。
第2步。右键单击“ src”文件夹,然后从“新建”>“类”创建一个新的类文件。
将您的班级名称命名为“ Link_Test”,然后单击“完成”按钮。
第三步让我们进入编码基础。
-
-
- 要调用Firefox浏览器,我们需要下载Gecko驱动程序并为Gecko驱动程序设置系统属性。我们已经在本教程的早期课程中对此进行了讨论。您可以参考“在Firefox浏览器上运行测试”以了解如何下载和设置Firefox驱动程序的“系统”属性。
这是为Gecko驱动程序设置系统属性的示例代码:
-
- System.setProperty( “ webdriver.gecko.driver” , “ D:\\ GeckoDriver \\ geckodriver.exe” );
-
-
- 之后,我们必须使用所需功能类初始化Gecko驱动程序。
这是使用DesiredCapabilities类初始化壁虎驱动程序的示例代码。
-
- DesiredCapabilities功能= DesiredCapabilities.firefox();
- abilities.setCapability( “ marionette” , true );
- WebDriver driver =新的FirefoxDriver(功能);
结合以上两个代码块,我们将获得代码段以启动Firefox浏览器。
-
- System.setProperty( “ webdriver.gecko.driver” , “ D:\\ GeckoDriver \\ geckodriver.exe” );
-
-
- DesiredCapabilities功能= DesiredCapabilities.firefox();
- abilities.setCapability( “ marionette” , true );
- WebDriver driver =新的FirefoxDriver(功能);
-
-
- 之后,我们需要编写代码以自动化第二个测试场景(导航到所需的URL)
以下是示例代码,可导航到所需的URL:
-
- driver.navigate()。to( “ https://www.testandquiz.com/selenium/testing.html” );
到目前为止,完整的代码如下所示:
- 导入org.openqa.selenium.WebDriver;
- 导入org.openqa.selenium.firefox.FirefoxDriver;
- 导入org.openqa.selenium.remote.DesiredCapabilities;
-
- 上市 类Link_Test {
-
- 上市 静态的 void main(String [] args){
-
-
- System.setProperty( “ webdriver.gecko.driver” , “ D:\\ GeckoDriver \\ geckodriver.exe” );
-
-
- DesiredCapabilities功能= DesiredCapabilities.firefox();
- abilities.setCapability( “ marionette” , true );
- WebDriver driver =新的FirefoxDriver(功能);
-
-
-
- driver.navigate()。to( “ https://www.testandquiz.com/selenium/testing.html” );
-
- }
-
- }
第四步。现在,我们将尝试通过其链接文本找到所需的Web元素。在Selenium中,查找特定的Web元素涉及对其HTML代码的检查。
请按照下面给出的步骤在示例网页上找到“文本”框。
-
-
- 它将启动一个窗口,其中包含开发链接文本所涉及的所有特定代码。
通过链接文本定位Web元素的Java语法写为:
- driver.findElement(By.linkText()
因此,为了在示例网页上找到链接文本,我们将使用其链接文本的值:
- driver.findElement(By.linkText(< “这是一个链接” >))
第五步为了使我们的第三个测试场景自动化,我们需要编写代码,该代码将单击“链接文本”。
这是单击链接文本的示例代码。
-
- driver.findElement(By.linkText( “这是一个链接” ))。click();
因此,我们的最终测试脚本将如下所示:
- 导入org.openqa.selenium.By;
- 导入org.openqa.selenium.WebDriver;
- 导入org.openqa.selenium.firefox.FirefoxDriver;
- 导入org.openqa.selenium.remote.DesiredCapabilities;
-
- 上市 类Link_Test {
-
- 上市 静态的 void main(String [] args){
-
-
- System.setProperty( “ webdriver.gecko.driver” , “ D:\\ GeckoDriver \\ geckodriver.exe” );
-
-
- DesiredCapabilities功能= DesiredCapabilities.firefox();
- abilities.setCapability( “ marionette” , true );
- WebDriver driver =新的FirefoxDriver(功能);
-
-
-
-
- driver.navigate()。to( “ https://www.testandquiz.com/selenium/testing.html” );
-
-
- driver.findElement(By.linkText( “这是一个链接” ))。click();
-
- }
- }
以下屏幕截图显示了我们的测试脚本的Eclipse窗口。
第六步右键单击Eclipse代码,然后选择“运行方式”>“ Java应用程序” 。
执行后,上述测试脚本将启动Firefox浏览器并自动执行所有测试方案。