一、創建數據庫連接
#!coding:utf-8
import pymysql
'''
Python3之后不再支持MySQLdb的方式進行訪問mysql數據庫;
可以采用pymysql的方式
連接方式:
1、導包
import pymysql
2、打開數據庫連接
conn = pymysql.connect(host='10.*.*.*',user='root',password='123456',db='self_dev',charset='utf8',cursorclass=pymysql.cursors.DictCursor)
備注:其中cursorclass=pymysql.cursors.DictCursor 可有可無,配置的是每個字段的展示方式,按照字典的形式進行展示(方便通過列名進行訪問),默認元組形式。
3、使用cursor()方法獲取操作游標
cur = connection.cursor()
4、SQL 查詢語句
sql = "SELECT * FROM table t where t.name='政協'"
5、執行SQL語句
cur.execute(sql)
6、獲取所有記錄列表
rows = cur.fetchall()
7、輸出
8、關閉數據庫連接
connection.close()
'''
class dbClection:
connection = pymysql.connect(host='10.*.*.*',
user='root',
password='123456',
db='self_dev',
charset='utf8',
cursorclass=pymysql.cursors.DictCursor)
def getOrgid(self):
cur = self.connection.cursor()
sql = "SELECT t.id FROM org t where t.name='自動化添加(行政區域)' and t.status='1'"
try:
cur.execute(sql)
results = cur.fetchall()
for row in results:
org_id = row['id']
return org_id
#print(org_id)
except:
print('Error:unable to fetch data')
self.connection.close()
'''
if __name__ == '__main__':
db = dbClection()
res = db.getOrgid()
print(res)
'''
二、引用上述創建的dbClection下的getOrgid()方法
#!coding:utf-8
from selenium import webdriver
from time import sleep
import unittest
from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.support.ui import Select
from mySql import dbClection
----------主體省略----------------
def test_add_fenwei(self):
u'''登錄'''
username = 'org-admin'
password = '123456'
self.login(username,password)
sleep(2)
#進入組織管理界面
self.dr.get(self.org_url)
sleep(2)
db = dbClection() xzjd_org = db.getOrgid() # print(xzjd_org)
self.by_xpath('//*[@id="%s"]/i'%xzjd_org).click()
sleep(2)
self.dr.find_element_by_partial_link_text('自動化添加(地域)').click()
sleep(2)
self.by_id('addDept').click()
sleep(3)
self.by_id('orgName_add').send_keys('自動化添加(分類)')
sleep(2)
Select(self.by_id("govDeptType_add")).select_by_visible_text("分類")
sleep(2)
self.by_id('saveDeptAdd').click()
備注:變量在使用在頁面定位中時,需要進行%格式化,否則無法傳入。
例如:
db = dbClection()
xzjd_org = db.getOrgid() # print(xzjd_org) self.by_xpath('//*[@id="%s"]/i'%xzjd_org).click()