您的位置:首页 > 编程语言 > Python开发

python基础,教你从零开始学(第五讲:Selenium+Python实现UI自动化,定位元素后付值方法、框架跳进跳出、链接数据库等)

2020-07-17 15:27 316 查看

本章节我们讲一下UI自动化的一些常用的知识点:
一般B/S架构的项目,多会有文本框录入方式和下拉框录入方式。接下来我们说一说下拉框的三种录入方式,以及文本框如何付值

下拉框选项的三种实现方法


上图中所示的下拉框,该如何实现自动化脚本定位及录入选项呢?请看下面三种方式:

- 方法一:根据目标值在下拉框中的排列顺序选择,从上到下从1开始计算

Select(browser.find_element_by_id("dtoproductType")).select_by_index("2")

- 方法二:根据text内容选择

Select(browser.find_element_by_id('prodType')).select_by_visible_text("信贷产品")

- 方法三:根据value值选择

Select(browser.find_element_by_id('prodType')).select_by_value("PTL150400001")

定位到元素后,付值用send_keys()

browser.find_element_by_id("username").send_keys("admin")
browser.find_element_by_id("pwd").send_keys("Cs654321")

跳进框架和跳出框架

  • 首先定位一个框架的路径,一般用包含这种方式实现,也就是("//iframe[contains(@src,‘XXXX’)]")这种方式。因为框架的src一般里面包含参数,我们需要根据固定值来定位这个框架
  • 下面的代码块,是定义这个框架的路径,然后跳到这个框架里面的实现方法
iframe =browser.find_element_by_xpath("//iframe[contains(@src,'lbTIntoInfo/prepareExecute')]")
browser.switch_to.frame(iframe)  #跳进框架

下面这行代码是跳出框架的方式

driver.switch_to.default_content()  #跳出框架

python实现连接 数据库 及sql语句中参数化

sql = "select card_id from LB_T_RESERVE_CUSTOMER where card_id='%s'"%a
def getSQLResult(sql=None):
dsn = cx_Oracle.makedsn("IP地址", 端口, "数据库名")  # cx_Oracle.makedsn
conn = cx_Oracle.connect("username", "password", dsn)  # cx_Oracle.connect
cursor = conn.cursor()  # conn.cursor
cursor.execute(sql)  # execute
res = cursor.fetchall()  # fetchall
cursor.close()  # cursor.close
conn.close()  # conn.close
return res
print(getSQLResult(sql))

comment:注意要将上面的ip地址、端口、数据库名、以及登录用户名、密码更换成你要连接的数据库配置

本章节就先讲到这里,大家有问题可以在下方留言,测试修行者会定期给来平台处理。

  • 下章节会带领大家学习如何用python封装一些函数。比如:自动生成身份证号、手机号、姓名、银行卡号等方法。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: