zoukankan      html  css  js  c++  java
  • 编写第一个python selenium-webdriver程序(二)

     上节介绍了如何搭建selenium 系统环境,那么本节来讲一下如何开始编写第一个自动化测试脚本。

    Selenium2.x 将浏览器原生的API封装成WebDriver API,可以直接操作浏览器页面里的元素,甚至操作浏览器本身(截屏,窗口大小,启动,关闭,安装插件,配置证书之类的),所以就像真正的用户在操作一样。其实selenium 就是来模拟用户的行为,来实现的自动化测试。

    那么我们现在实现一个百度搜索的selenium的自动化测试用例,下面我们真实的测试过程如何操作。

      1.打开浏览器;

      2.输入网址"http://www.baiud.com";

      3.在搜索框内输入selenium;

      4.点击"百度一下",进行搜索selenium相关信息;

      5.判断搜索结果是否正确

    上述的操作步骤其实就是我们实际测试过程操作过程,也就是我们的测试用例,下面我们将文字转换成为代码

    #-*- coding:utf-8 -*-
    from selenium import webdriver
    import time
    from selenium.common.exceptions import NoSuchElementException
    driver = webdriver.Chrome() 
    driver.get("https://www.baidu.com/") #打开浏览器,输入网址
    driver.maximize_window()
    search_element = driver.find_element_by_id('kw') #定位输入框的位子
    search_element.send_keys("selenium") #输入搜索信息
    button_element = driver.find_element_by_id('su') #定位搜索按钮的位子
    button_element.click() #点击搜索按钮
    time.sleep(1)
    driver.save_screenshot('baidu.png') #获取搜索结果
    time.sleep(1)
    driver.quit() #关闭浏览器

    来看看我们自动化的效果

    这样我们就完成了一个自动化测试用例,具体判断结果是否正确,后面的讲解断言的时候讲解。

    下节介绍,如何定位元素。

  • 相关阅读:
    你对线程优先级的理解是什么?
    Java 中 notify 和 notifyAll 有什么区别?
    线程之间是如何通信的?
    多线程同步有哪几种方法?
    CyclicBarrier 和 CountDownLatch 的区别 ?
    int 和 Integer 有什么区别?
    Thread 类中的 yield 方法有什么作用?
    用最有效率的方法计算 2 乘以 8?
    volatile 关键字的作用 ?
    数组有没有 length()方法?String 有没有 length()方法?
  • 原文地址:https://www.cnblogs.com/mengyu/p/6854389.html
Copyright © 2011-2022 走看看