Python python 连接 mysql 的使用

Gavin · January 05, 2019 · Last by aliucrazy replied at January 06, 2019 · 1636 hits

首先简述一下自动化测试对于数据库的应用场景:无论在接口自动化还是UI自动化的测试中,我们都需要准备一些测试数据,类似于账号信息。比如我们需要一个未注册的手机号,我们不能保证给出的测试数据是未注册的,这个时候就需要通过数据库的相关操作将此条数据更改为我们需要的状态。但是手动的操作不能实现完全的自动化测试,所以学习了通过python连接db实现相应的操作,完善测试数据的准确性。

1.安装部分:

1)先准备Python 3以上的版本(安装不再赘述)。

2)安装pymysql,在命令行中输入如下命令

pip3 install PyMySQL
2.创建连接部分

import pymysql #导入MySQL的包
db = pymysql.connect("host","username","password","dbname ",charset='utf8')
#使用pymysqlconnect方法,配置host数据库地址,username用户名,password密码,dbname库名等信息
cursor = db.cursor # 创建一个游标 ,这个是连接数据库最重要的,相当于创建一个连接对象

3.主要的语句使用
1)查询语句
例:user表下有id、name、phone三个字段,查询ID为1的name和phone

select_sql = "select name,phone from user where id = '%s' " %(1) #需要执行的sql语句
data = cursor.fetchone #获取查询出的数据
data = cursor.fetchall #获取查询出的数据(以数组的方式展示)
db.close() # 关闭连接

2)更新语句
例:user表下有id、name、phone三个字段,更新ID为1的name为小白和phone为123456789

update_sql = "update user set name = '小白',phone = '%s' where id = '%s'"('123456789','1')
try :
cursor.execute(update_sql) #执行sql
db.commit() #提交到数据库
expect:
db.rollback() #如果出现错误进行回滚操作
finally:
db.close() #关闭连接

实践后小结:
1.查询跟更新是我们在测试中比较常用的方法,另外插入和删除操作都不建议使用。
2.sql中很多函数或方法不能直接在python 代码中使用,需要使用python的方法进行处理
3.在实际的使用过程中可以将数据库操作直接写成方法进行调用会比较方便,在完成相应的数据库操作时一定要记得关闭数据库连接。

共收到 3 条回复 时间 点赞

最好把对数据库的两个基本操作:search,insert 封装好,调用就不用考虑如何连接,如何释放了

Gavin #2 · January 05, 2019 作者
Jerry li 回复

感谢分享,这确实是很好的思路

配合orm框架会更爽

需要 Sign In 后方可回复, 如果你还没有账号请点击这里 Sign Up