pytest - 如何将 pytest_addoption 值传递给 pytest 参数化?

2024-05-07

我必须在我存储在 pytest 中的 pytest 命令中传递一个参数addoption。我想在 pytest 中使用这些值parametrize功能。

Command:

pytest --range-from 3 --range-to 5 test.py

测试.py:

def pytest_addoption(parser):
    parser.addoption("--range-from", action="store", default="default name")
    parser.addoption("--range-to", action="store", default="default name")

test.py:

@pytest.mark.parametrize('migration_id', migration_list[range-from:range-to])
def test_sync_with_migration_list(migration_id):
    migration_instance = migration.parallel(migration_id=migration_id)
    migration_instance.perform_sync_only()

我想使用的值range-from and range-to inside parametrize.

我无法使用这些值。请建议如何做到这一点。


一种简单的方法是将命令行参数分配给环境变量并在任何您想要的地方使用。我不确定您想以哪种方式使用变量,所以在这里我将简单的打印语句放入测试中。

测试.py

def pytest_addoption(parser):
    parser.addoption("--range-from", action="store", default="default name") #Let's say value is :5
    parser.addoption("--range-to", action="store", default="default name") #Lets's say value is 7

def pytest_configure(config):
    os.environ["range_from"]=config.getoption("range-from") 
    os.environ["range_to"]=config.getoption("range-to")

test.py:

@pytest.mark.parametrize('migration_id', [os.getenv("range_from"),os.getenv("range_to")])
def test_sync_with_migration_list(migration_id):
    print(migration_id)

Output :
5
7

希望它会有所帮助!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

pytest - 如何将 pytest_addoption 值传递给 pytest 参数化? 的相关文章

随机推荐

  • Auth0 - 无法检索远程 JWK 设置:读取超时

    我正在遭受这一痛苦 无法检索远程 JWK 设置 读取超时 我正在使用 Java 11 和 Spring boot 2 5 3 对于依赖项 弹簧安全 oauth2 何塞 5 5 1 spring boot starter oauth2 客户端
  • 如何将带小数点的字符串解析为双精度型?

    我想解析一个字符串 3 5 到一个双倍 然而 double Parse 3 5 产量 35 和 double Parse 3 5 System Globalization NumberStyles AllowDecimalPoint 抛出一
  • Spring AOP生成的代理类的位置

    只是为了学习和理解代理 我想看看Spring AOP生成的代理类 它不存在于 Eclipse 生成的类文件夹中 有人可以告诉我它的位置吗 如果您使用基于接口的代理 默认 Spring 使用Proxy http docs oracle com
  • IOS 7 UITextField resignFirstResponder 坏

    当我在自定义单元格内使用 UItextField 时 以及当我 resignFirstResponder 文本字段时 我发生崩溃 但它不再可见 表视图滚动到窗口外 我仍然可以找到文本字段 指针继续可访问 它不为空 并且崩溃仅发生在 IOS7
  • WebKit 是否使用 OpenGL 来渲染 CSS 过渡?

    WebKit 是使用 OpenGL 来渲染 CSS 过渡 还是使用软件渲染 WebKit 只是一个前端 这取决于后端和硬件支持 谷歌浏览器使用skia http code google com p skia 作为后端 它可以使用软件或硬件
  • 格式化 mlogit 的数据

    为了通过 mlogit 进行多项 Logit 分析 我正在经历一段艰难的时间来整理我的数据集 我的数据集可从url https raw githubusercontent com sjkiss Survey master mlogit ou
  • 使用三元运算符“不执行任何操作”[重复]

    这个问题在这里已经有答案了 我想像这样使用三元运算符 仅检查true声明的一部分 foo bar Do nothing 是否可以排除该语句的 else 部分的逻辑 我尝试使用return 但编译器给出了错误 基本上我想要实现的是使用三元运算
  • 具有多个输入的 Keras TimeDistributed 层

    我正在尝试使以下代码行正常工作 low encoder out TimeDistributed AutoregressiveDecoder X tf embeddings Where AutoregressiveDecoder是一个需要两个
  • 使用 'gitbranch' 命令显示当前 git 分支

    我在处理太多分支时遇到问题 需要花费很多时间才能找到我现在正在处理的当前分支 有没有办法在使用时显示的列表顶部列出当前分支git branch命令 如果您只想要签出分支 请使用git branch show current
  • 在 git 中编辑分支?

    我在 github 网站上创建了一个分支 该分支不在我的本地存储库中 如何将该分支带到我的本地计算机 对其进行编辑 然后将其推送回我的 github 帐户 在本地工作目录中输入 git fetch origin newbranch git
  • Android FAB 图标始终为黑色,带有 MaterialComponents 主题

    我正在创建一个 Android 应用程序 并使用 AndroidX 库和 Material design 主题 我的应用程序主题为styles xml is 我有来自自定义库的以下 F
  • iOS 中 NSNotificationCenter 的 if 语句

    我正在尝试在一个动画结束时开始另一个动画 我正在检查这样的回调 NSNotificationCenter defaultCenter addObserver self selector selector animationDidStopNo
  • 设置rgl设备的大小

    我的 rgl 设备的全屏 非全屏有问题 目前我使用R 3 00 我将 persp3d 图 库 rgl 绘制到我的设备中 它在一个非常小的窗口中打开 R代码 persp3d x y z theta 50 phi 25 expand 0 75
  • 如何使用 git-svn 使 svn:external 保持最新?

    将我的存储库视为 SVN 存储库 我得到 svn co http myrepo foo trunk foo foo bar baz gt http myrepo baz trunk 将其视为 Git 存储库 我得到 git svn clon
  • 将对象序列化为自定义字符串格式以在输出文件中使用的最佳实践

    我正要在特定的业务类上实现 ToString 的重写 以便生成 Excel 友好的格式来写入输出文件 稍后将拾取并处理该输出文件 数据应如下所示 5555555 LASTN SR FIRSTN 5555555555 13956 STREET
  • 更改 Office UI Fabric React 组件的颜色/主题?

    我正在尝试使用Office UI Fabric React 组件 https dev office com fabric components在我的网络应用程序中 有没有办法改变组件的颜色或主题 例如 我尝试了这样的事情 ReactDOM
  • 在 uwsgi 应用程序中运行子进程

    我正在编写一个 Django 应用程序 它需要执行长时间的异步任务 最初的想法是从执行该工作的视图启动一个子流程 并在另一个视图中监视进度 当应用程序通过以下方式启动时 这个想法运行良好manage py runserver 但是当它在 u
  • JavaScript RegEx 到 CamelCase 连字符的 CSS 属性

    我正在尝试更改 CSS 属性 如下所示 moz border radius 像这样的 JavaScript CSS 属性 MozBorderRadius 我正在使用这个正则表达式 var exp new RegExp a z gi cons
  • Laravel 5 / Lumen 请求标头?

    所以我不太确定如何解决这个问题 我已经尝试了一些方法 我将在下面列出其中之一 但是我想要做的是将 http 请求中发送的信息存储在 PHP 变量中 这是 Chrome Postman 发送我想要发送的请求的视图 注意 pubapi 是一个
  • pytest - 如何将 pytest_addoption 值传递给 pytest 参数化?

    我必须在我存储在 pytest 中的 pytest 命令中传递一个参数addoption 我想在 pytest 中使用这些值parametrize功能 Command pytest range from 3 range to 5 test