我想测试我的查询db函数。
> assert result == 'success'
E assert None == 'success'
但它失败了。
C:\xampp\htdocs\l1\blog>php artisan migrate
[PDOException]
SQLSTATE[HY000] [1045] Access denied for user 'homestead'@'localhost' (usin
g password: YES)
该功能无法从DB获得任何结果。
我检查数据库数据,但没有看到任何记录。 (例如用户 tester@example.com )
如何重写我的代码以进行测试?
或如何将数据保存在数据库中?
谢谢,
答案 0 :(得分:0)
这是数据库测试的工作方式。 设置django_db时,pytest将在使用后回滚数据。 但是如果你想在几个测试中使用相同的数据,你应该看看 pytest.fixtures和factory_boy喜欢:
import factory
class UserFactory(factory.DjangoModelFactory):
class Meta:
model = User
@pytest.fixture
def user():
return UserFactory(email = "bla@bla.com", password = "blabla")
现在您在测试代码中应用此引用:
test_test_ok_profile(user):
assert user.email = "bla@bla.com"