zoukankan      html  css  js  c++  java
  • 操作测试对象-概述

    前面讲到了不少知识都是定位对象,定位只是第一步,定位之后需要对这个对象进行操作。鼠标点击呢还是键盘输入,这要取决于我们定位的对象所支持的操作。

    一般来说,所有有趣的操作与页面交互都将通过WebElement 接口,包括上一节中介绍的对象定位,以及本节中需要介绍的常对象操作。


    webdriver 中比较常用的操作元素的方法有下面几个:

    •  clear     清除元素的内容,如果可以的话
    •  send_keys   在元素上模拟按键输入
    •  click   单击元素
    •  submit   提交表单

    登录代码实例

    #coding=utf-8


    from selenium import webdriver


    driver = webdriver.Firefox()
    driver.get("http://passport.kuaibo.com/login/?referrer=http%3A%2F%2Fwebcloud.kuaibo.com%2F")


    driver.find_element_by_id("user_name").clear()
    driver.find_element_by_id("user_name").send_keys("username")
    driver.find_element_by_id("user_pwd").clear()
    driver.find_element_by_id("user_pwd").send_keys("password")
    driver.find_element_by_id("dl_an_submit").click()


    #通过submit() 来提交操作

    #driver.find_element_by_id("dl_an_submit").submit()

    driver.quit()

    clear() 用于清除输入框的默认内容

    比如登录框内一般默认会有“账号”“密码”等提示信息,如果直接输入内容,和可能会与输入框的默认提示信息拼接,从而造成输入信息的错误;这时clear()将变得非常有用。


    send_keys("xx")     用于在一个输入框里输入xx 内容

     
    python 是个容易出现编码问题的语言,有时候当我们在send_keys()方法中输入中文时,然后脚本在运行时就报编码错误,这个时候我们可以在脚本开头声明编码为utf-8,然后在中文字符的前面加个小u 就解决了(表示转成python Unicode 编码):

    #coding=utf-8
    send_keys(u"中文内容")


    需要注意的是utf-8并不是万能的,如果utf-8不能解决,可以尝试将编码声明为GBK;关于python的编码问题,请参考python 相关书籍。

    click() 用于单击一个按钮
    其实click()方法不仅仅用于点击一个按钮,可以单击任何可以点击的元素,文字/图片连接,按钮,下拉按钮等。

    submit() 提交表单
    从上面有例子,我们可看到可以使用submit()方法来代替click()对输入的信息进行提交,在有些情况下两个方法可以相互使用;submit()要求提交对象是一个表单,更强调对信息的提交。click()更强调事件的独立性。(比如,一个文字链接就不能用submit()方法。)

  • 相关阅读:
    Windows脚本转换Liunx识别并执行
    分布式事物常见解决方案
    SIMD加速计算矩阵(组成原理实验5)
    Code-server搭建web IDE
    CentOS 8 修改SSH端口
    Floyd算法的原理和实现代码
    initNativeTransServiceId . ntrans:object componentId :-368613127 微信小程序
    对象搜索算法挑战
    微信小程序小窗无效
    《六层楼》--宋东野
  • 原文地址:https://www.cnblogs.com/jshtest/p/6221442.html
Copyright © 2011-2022 走看看