自动化之selenium通用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了自动化之selenium通用相关的知识,希望对你有一定的参考价值。

UI自动化
    1.webdriver的findElement方法可以查找页面某元素,通常使用方式是通过id和name进行查找
        1.By ID根据id进行定位
            WebElement element=driver.findElement(By.id("id_name"));
        2.By Name根据name进行定位
            WebElemnet element=driver.findElement(By.name("name"));
        3.By Xpath根据xpath定位
            WebElement element=driver.fingElement(By.xpath("//a[@di=‘id_name‘]"));
        4.By Class Name 根据class名进行定位
            WebElement element=driver.findElement(By.className("class_name"));
        5.By Link Text 根据标签中的文本内容进行定位
            WebElement element=driver.findElement(By.linkText("linkText"));
        6.定位下拉选择框
            Select select=new Select(driver.findElement(By.id("id_name")));

对找到的元素进行操作
    1.输入框textarea
        在输入框中输入内容:  element.sendkeys("文本");
        清空输入框:      element.clear();
        获取输入框中的文本内容:element.getText();

    2.下拉选择框select
        选择对应的选项:    select.selectByValue("value");
                    select.selectVisibleText("value");

        不选择对应选择:    select.deselectAll()全不选择        
                    select.deselectByValue("value");
                    select.deselectVisibleText("value");

        获取选择项的值:    select.getAllSelectedOptions();获取所有的选项值
                    select.getFristSelectedOption();获取第一个选项值

    3.单选项 radio button和多选框 checkbox
        找到单选框元素     WebElement redioButton=driver.findElement(By.id("id_name"));

        选择某个单选框     redioButton.click();

        清空某个单选项     redioButton.clear();

        判断单选项是否被选择: redioButton.isSelected();

    4.按钮 button
        判断按钮是否可点击   element.isEnabled();

    5.弹出对话框
        Alert alert=driver.switchTo().alert();

        确认:         alert.accept();
        取消:         alert.dismiss();
        获取alert文本:      alert.getText();

    6.windows和frames切换
        切换至窗口A主框架:  driver.switchTo.defaultContant();

        从窗口A切换至新窗口B:    driver.switchTo.window("B widowTitle");

        从窗口切换frame(frame需逐级切换)  driver.switchTo.frame("frame控件定位符");

    7.导航 navigation
        打开新页面       driver.navigate().to("https://www.baidu.com");

        通过历史导航前进/后退 driver.navigate().forword();前进

                    driver.navigate().back();后退

以上是关于自动化之selenium通用的主要内容,如果未能解决你的问题,请参考以下文章

selenium之调用Javascript

Selenium Xpath元素无法定位 NoSuchElementException: Message: no such element: Unable to locate element(代码片段

Selenium之脚本编写页面通用定位方法

3爬虫之selenium模块

python+selenium之框架设计

爬虫之Selenium