首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我如何才能使用一个标杆夹具作为参数化的论点?

我如何才能使用一个标杆夹具作为参数化的论点?
EN

Stack Overflow用户
提问于 2015-09-22 16:06:06
回答 1查看 781关注 0票数 1

我有一个像这样的最热测试:

代码语言:javascript
复制
email_two = generate_email_two()

@pytest.mark.parametrize('email', ['email_one@example.com', email_two])
def test_email_thing(self, email):
        ... # Run some test with the email parameter

现在,作为重构的一部分,我移动了一行:

代码语言:javascript
复制
email_two = generate_email_two()

进入它自己的夹具(在一个conftest.py文件中),因为它在其他不同的地方使用。但是,除了直接导入夹具函数之外,还有其他方法在这个测试中引用它吗?我知道funcargs通常是调用一个治具的方式,但在这种情况下,当我想要调用该夹具时,我并不在测试函数中。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-03-21 13:40:18

最后,我在测试函数中设置了一个for循环,遍历了每封电子邮件。就测试输出而言,这不是最好的方法,但它可以完成任务。

代码语言:javascript
复制
import pytest
import fireblog.login as login

pytestmark = pytest.mark.usefixtures("test_with_one_theme")

class Test_groupfinder:
    def test_success(self, persona_test_admin_login, pyramid_config):
        emails = ['id5489746@mockmyid.com', persona_test_admin_login['email']]
        for email in emails:
            res = login.groupfinder(email)
            assert res == ['g:admin']

    def test_failure(self, pyramid_config):
        fake_email = 'some_fake_address@example.com'
        res = login.groupfinder(fake_email)
        assert res == ['g:commenter']
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32721657

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档