美文网首页
web自动化

web自动化

作者: 黑咔 | 来源:发表于2020-03-23 18:53 被阅读0次

    1、selenium的工作原理是什么?
    通过Selenium测试脚本调用webDriver驱动相对于浏览器进行测试

    2、你们web自动化是怎么做的?

    1. 先引入selenium的jar包和下载相对应的webDriver版本
    2. 然后用System.setProperty配置webdriver的路径,让系统能找到webDriver
      System.setProperty("webdriver.chrome.driver", "webDriver/chromedriver.exe");
    3. 通过webDriver对象的实例化,完成端口和浏览器的启动
      WebDriver driver=new ChromeDriver();
    4. 通过driver.get方法访问url地址
      driver.get(url);
    5. 通过driver.findElement(By.name)来查找元素名,并实例化WebEelement对象用于定位元素。
      WebElement element = driver.findElement(By.name("wd"));
    6. 通过element.sendKeys完成输入操作
      element.sendKeys("Word");
    7. 通过element.submit完成提交
      element.submit();
    8. 通过driver.getTitle获取页面Title
      System.out.println(driver.getTitle());
    9. 使用driver.quit关闭浏览器和driver的进程
      driver.quit();

    3.三种等待方式,怎么使用?
    1、显示等待 (设定一个预期的超时时间,等待某个事件的发生):

    1. 先实例化一个WebDriverWait填写driver和等待的时间
      WebDriverWait Wait = new WebDriverWait(driver, 10);
    2. 使用until中的ExpectedConditions.presenceOfAllElementsLocatedBy(By.xpath)完成某个元素的等待
      Wait.until(ExpectedConditions.presenceOfAllElementsLocatedBy(By.xpath("xpath")));

    2、隐式等待 (等待driver.findelement方法定位的元素能够被定位到)
    driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
    隐式等待的优势:只需设置一次,在driver实例化完成之后进行设置,在driver关闭之前,全局范围之内只要调用driver.findelement方法,都会生效进行等待。所以在driver实例化之后,直接加上隐式等待。
    3、强制等待 Thread.sleep(1*1000)

    相关文章

      网友评论

          本文标题:web自动化

          本文链接:https://www.haomeiwen.com/subject/ypcbpctx.html