<div dir="ltr"><div class="gmail_extra"><span style="font-size:12.8000001907349px">How about using the 3 </span><span style="font-size:12.8000001907349px">parametrize </span><span style="font-size:12.8000001907349px">arg names (</span><span style="font-size:12.8000001907349px">argnames, argvalues, ids) as **</span><span style="font-size:12.8000001907349px">named_args</span><span style="font-size:12.8000001907349px">, as in:</span></div><div class="gmail_extra"><span style="font-size:12.8000001907349px"><br></span></div><div class="gmail_extra"><span style="font-size:12.8000001907349px">def params(n):</span><br style="font-size:12.8000001907349px"><span style="font-size:12.8000001907349px">    fn = range(n)</span><br style="font-size:12.8000001907349px"><span style="font-size:12.8000001907349px">    return {&#39;</span><span style="font-size:12.8000001907349px">argnames</span><span style="font-size:12.8000001907349px">&#39;: &#39;a&#39;, &#39;</span><span style="font-size:12.8000001907349px">argvalues</span><span style="font-size:12.8000001907349px">&#39;: fn, &#39;ids&#39;: [&#39;a: {}&#39;.format(i) for i in </span><span style="font-size:12.8000001907349px">fn]}</span><br style="font-size:12.8000001907349px"><span style="font-size:12.8000001907349px"><br></span></div><div class="gmail_extra"><span style="font-size:12.8000001907349px">named_args = params(3)</span><br></div><div class="gmail_extra"><span style="font-size:12.8000001907349px"><br></span></div><div class="gmail_extra"><span style="font-size:12.8000001907349px"><div>@pytest.mark.parametrize(**<span style="font-size:12.8000001907349px">named_args</span><span style="font-size:12.8000001907349px">)</span></div><div><span style="font-size:12.8000001907349px">def ...</span></div></span><span style="font-size:12.8000001907349px"><div><br></div></span></div><div class="gmail_extra"><span style="font-size:12.8000001907349px"><br></span></div><div class="gmail_extra"><span style="font-size:12.8000001907349px">Date: Mon, 23 Mar 2015 09:43:17 -0400</span><br style="font-size:12.8000001907349px"><span style="font-size:12.8000001907349px">From: dpb dpb &lt;</span><a href="mailto:dpb.mediamath@gmail.com" style="font-size:12.8000001907349px">dpb.mediamath@gmail.com</a><span style="font-size:12.8000001907349px">&gt;</span><br style="font-size:12.8000001907349px"><span style="font-size:12.8000001907349px">Subject: Re: [TIP] both naming a parameter and showing its values</span><br style="font-size:12.8000001907349px"><span style="font-size:12.8000001907349px">To: </span><a href="mailto:testing-in-python@lists.idyll.org" style="font-size:12.8000001907349px">testing-in-python@lists.idyll.org</a><br style="font-size:12.8000001907349px"><span style="font-size:12.8000001907349px">Message-ID:</span><br style="font-size:12.8000001907349px"><span style="font-size:12.8000001907349px">        &lt;</span><a href="mailto:CAJukCzfddgjmDPzp%2BOVHhXkug_GK2VKi76-oKFi3twiRDjRsaw@mail.gmail.com" style="font-size:12.8000001907349px">CAJukCzfddgjmDPzp+OVHhXkug_GK2VKi76-oKFi3twiRDjRsaw@mail.gmail.com</a><span style="font-size:12.8000001907349px">&gt;</span><br style="font-size:12.8000001907349px"><span style="font-size:12.8000001907349px">Content-Type: text/plain; charset=&quot;utf-8&quot;</span><br style="font-size:12.8000001907349px"><br style="font-size:12.8000001907349px"><span style="font-size:12.8000001907349px">...</span><br style="font-size:12.8000001907349px"><span style="font-size:12.8000001907349px">&gt;</span><br style="font-size:12.8000001907349px"><span style="font-size:12.8000001907349px">&gt; def params(n):</span><br style="font-size:12.8000001907349px"><span style="font-size:12.8000001907349px">&gt;     fn = range(n)</span><br style="font-size:12.8000001907349px"><span style="font-size:12.8000001907349px">&gt;     return {&#39;name&#39;: &#39;a&#39;, &#39;args&#39;: fn, &#39;ids&#39;: [&#39;a: {}&#39;.format(i) for i in</span><br style="font-size:12.8000001907349px"><span style="font-size:12.8000001907349px">&gt; fn]}</span><br style="font-size:12.8000001907349px"><span style="font-size:12.8000001907349px">&gt;</span><br style="font-size:12.8000001907349px"><span style="font-size:12.8000001907349px">&gt; named_args = params(3)</span><br style="font-size:12.8000001907349px"><span style="font-size:12.8000001907349px">&gt;</span><br style="font-size:12.8000001907349px"><span style="font-size:12.8000001907349px">&gt; @</span><span class="" style="font-size:12.8000001907349px">pytest</span><span style="font-size:12.8000001907349px">.</span><span class="" style="font-size:12.8000001907349px">mark</span><span style="font-size:12.8000001907349px">.</span><span class="" style="font-size:12.8000001907349px">parametrize</span><span style="font-size:12.8000001907349px">(</span><br style="font-size:12.8000001907349px"><span style="font-size:12.8000001907349px">&gt;         named_args[&#39;name&#39;], named_args[&#39;args&#39;], ids=named_args[&#39;ids&#39;])</span><br style="font-size:12.8000001907349px"><span style="font-size:12.8000001907349px">&gt; def test_funcs_with_naming_func(a)</span><span style="font-size:12.8000001907349px">:</span><br style="font-size:12.8000001907349px"><span style="font-size:12.8000001907349px">&gt;     assert a ** 3 == a * (a ** 2)</span><br style="font-size:12.8000001907349px"></div></div>