gpt4 book ai didi

python - 编写需要用户名和密码的 Python 功能测试

转载 作者:行者123 更新时间:2023-12-01 02:28:12 25 4
gpt4 key购买 nike

我有一个用 Python 3 编写的 API 包装类 WfcAPI,我想使用 PyUnit 对其进行测试.

WfcAPIsetUpClass() 涉及登录到外部 API 服务器。当前功能测试实现的密码为 obfuscated with Base64 encoding ,但出于安全原因,这远非理想的解决方案。

import unittest
import base64
from pykronos import WfcAPI

class Test(unittest.TestCase):
@classmethod
def setUpClass(self):
password = base64.b64decode("U29tZVBhc3N3b3Jk").decode("utf-8")
self.kronos = WfcAPI("SomeUsername", password)

我希望能够快速运行 API 包装器的功能测试,但我也希望确保我的用户名和密码不包含在代码中。

如何为需要用户名和密码的操作设置 Python 功能测试?

最佳答案

只是为了澄清:如果它是一个单元测试,您不应该针对真正的外部 API 进行测试,您应该伪造它的响应。单元测试应该只关注被测主题的逻辑 (WfcAPI),而不是它的子依赖性。

现在,如果您进行功能测试,将真实数据发送到 API,您可以通过将它们存储在 .env 文件中来保护您的凭据,该文件不会与其余的一起提交代码。

This python library提供了该功能,并在其自述文件中为您提供了一个示例。你最终会得到这样的结果:

# .env

PASSWORD=some_password
USERNAME=SomeUsername

然后在您的settings.py中:

PASSWORD = os.environ.get("PASSWORD")
USERNAME = os.environ.get("USERNAME")

关于python - 编写需要用户名和密码的 Python 功能测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47143368/

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