ui自动化测试如何封装pymysql
时间: 2023-07-05 21:23:48 浏览: 93
web自动化基础(包含常用各种场景)
在 UI 自动化测试中,如果需要使用 PyMySQL 进行数据库操作,可以将 PyMySQL 封装成一个类,使得 UI 自动化测试代码可以更方便地调用数据库操作。
以下是一个 PyMySQL 封装类的示例:
```python
import pymysql
class DBHelper:
def __init__(self, host, port, user, password, db):
self.conn = pymysql.connect(
host=host,
port=port,
user=user,
password=password,
db=db,
charset='utf8mb4',
cursorclass=pymysql.cursors.DictCursor
)
def execute_sql(self, sql):
try:
with self.conn.cursor() as cursor:
cursor.execute(sql)
self.conn.commit()
result = cursor.fetchall()
return result
except Exception as e:
print(f"Error: {e}")
```
在上述代码中,我们定义了一个名为 `DBHelper` 的类,该类接受五个参数:`host`、`port`、`user`、`password` 和 `db`,这些参数分别对应着数据库的主机地址、端口、用户名、密码以及数据库名。
在类的 `__init__` 方法中,我们使用 PyMySQL 创建了一个数据库连接。在 `execute_sql` 方法中,我们可以执行任意 SQL 查询语句,并返回查询结果。
在 UI 自动化测试代码中,我们可以使用以下代码来实例化 DBHelper 类,并调用其中的 `execute_sql` 方法:
```python
db = DBHelper('localhost', 3306, 'user', 'password', 'my_database')
result = db.execute_sql('SELECT * FROM my_table')
```
上述代码中,我们实例化了 DBHelper 类,并传递了相应的参数。然后,我们调用 `execute_sql` 方法来执行 SQL 查询语句,并将结果赋值给变量 `result`。
阅读全文