小编azz*_*msa的帖子

如何使用 Pytest 测试 dockerized Flask 应用程序?

我已经构建了 Flask 应用程序,旨在在 docker 容器内运行。如果标头密钥与我放入docker-composeenvironment中的密钥匹配,它将接受 POST HTTP 方法并返回适当的 JSON 响应。

...
    environment:
      - SECRET_KEY=fakekey123
...
Run Code Online (Sandbox Code Playgroud)

问题是:当涉及到测试时。Flask (pytest)的appclient固定装置当然找不到 docker-compose environment。因为应用程序不是从 docker-compose 启动的,而是从 pytest 启动的。

...
    environment:
      - SECRET_KEY=fakekey123
...
Run Code Online (Sandbox Code Playgroud)

解决这个问题的(最佳/推荐)方法是什么?

我找到了一些插件 来做到这一点。但我在这里问是否有更“简单”/“通用”的方法。因为我还想使用 CI/CD 工具自动执行此测试。

python pytest flask docker

6
推荐指数
2
解决办法
4353
查看次数

如何从python列表中删除仅零位数字?

我只想0从清单中删除:

>>> mylist = [0, 1, None, 2, False, 1, 0]
Run Code Online (Sandbox Code Playgroud)

他们都缺少假物品

>>> list(filter(lambda x: x != 0, mylist))
[1, None, 2, 1]  # missing False

>>> list(filter(lambda x: x != 0 and x is not type(int), mylist))
[1, None, 2, 1] # missing False

>>> list(filter(lambda x: x != 0 and x is not type(False), mylist))
[1, None, 2, 1]

>>> list(filter(lambda x: x != 0 and x is not False, mylist))
[1, None, 2, 1]
Run Code Online (Sandbox Code Playgroud)

所需的输出: …

python python-3.x

4
推荐指数
1
解决办法
96
查看次数

如何控制Common Lisp格式的小数点?

如何将值传递给控制小数点数打印的函数.

我可以做$或者f,例如

(format t "~,3f" 3.141592)
(format t "~2$" 3.141592)
Run Code Online (Sandbox Code Playgroud)

但是如何做这样的事情

(defun control-format (x)
  (format nil "~,xf" 3.141592))
Run Code Online (Sandbox Code Playgroud)

所以我们可以传递任何数字作为参数control-format来控制我们想要的十进制数.

谢谢.

common-lisp

2
推荐指数
1
解决办法
298
查看次数

如何在 Rust 中将无效 JSON 请求正文中的错误描述返回给客户端?

在 Python 中,我可以使用marshmallowPydantic来验证用户输入,只需定义一个模式(很像 Rust 结构)。然后使用该模式,Marshmallow 加载用户输入并返回它发现的错误。如:

图片

图片

我可以通过在 actix-web 中实现自定义错误句柄ResponseError

但是,如何将错误请求正文中的描述(无效值的位置/字段)返回给客户端?

图片

rust actix-web

1
推荐指数
1
解决办法
791
查看次数

标签 统计

python ×2

actix-web ×1

common-lisp ×1

docker ×1

flask ×1

pytest ×1

python-3.x ×1

rust ×1