gpt4 book ai didi

django - 如何在 Django 中测试与时间相关的功能?

转载 作者:行者123 更新时间:2023-11-28 21:34:22 24 4
gpt4 key购买 nike

我正在编写一个记录事件时间的应用程序。对于单元测试,我通常会使用 monkey-patch 将 datetime.time 替换为假的,这样我就可以正确地测试它。我正在尝试使用 Selenium 进行端到端测试,将测试用例放在单独的程序中,而不是使用 python manage.py test。所以我不能打补丁。我确实尝试过使用 manage.py,但它似乎没有帮助。

我确定这是一个已解决的问题。我应该怎么做? Selenium 不是进行此类测试的合适工具吗?我是否缺少如何让测试用例与应用程序对话?

最佳答案

Selenium 与完整的网络服务器对话,但无法访问该网络服务器内运行的 python 解释器。即使您使用 python 编写 SeleniumRC 脚本,解释器的脚本实例与网络服务器实例也是分开的。

如果您通过 manage.py runserver 运行测试网络服务器,您可以编写自己的管理命令以将“runserver”替换为修补 datetime.time 的版本。这并不容易,因此您可以考虑修改您的 Selenium 驱动的测试以应对实时发生的事件,或者将您的时间敏感测试转换为 Django 客户端测试以便您可以使用模拟库。

关于django - 如何在 Django 中测试与时间相关的功能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5470590/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com