输入用户名和密码,通过 pytest 进行断言访问数据库并验证,通过断言结果生成网页测试报告
时间: 2023-12-21 20:04:06 浏览: 78
可以使用 pytest 测试框架和 SQLAlchemy 库来实现这个功能。首先,需要编写一个测试用例来测试数据库访问和验证用户名和密码是否正确。例如:
```python
import pytest
from sqlalchemy import create_engine
from sqlalchemy.orm import sessionmaker
from myapp.models import User
@pytest.fixture(scope='module')
def db():
engine = create_engine('sqlite:///test.db')
Session = sessionmaker(bind=engine)
session = Session()
yield session
session.close()
def test_login(db):
user = db.query(User).filter_by(username='testuser').first()
assert user is not None
assert user.check_password('testpassword')
```
在上面的示例中,我们首先使用 pytest.fixture 装饰器来创建一个数据库连接作为测试用例的参数。然后,在测试用例中,我们使用 SQLAlchemy 查询数据库中的用户数据,并通过断言验证用户名和密码是否正确。
接下来,我们可以使用 Pytest-html 插件来生成一个网页测试报告。可以使用以下命令安装 Pytest-html 插件:
```
pip install pytest-html
```
然后,在运行测试用例时,使用以下命令来生成测试报告:
```
pytest --html=report.html
```
这将在当前目录下生成一个名为 report.html 的测试报告文件。在浏览器中打开该文件,即可查看测试结果。
阅读全文