<div dir="auto"><div>Thanks Bruno..<div dir="auto"><br></div><div dir="auto">I was trying to find out if I can solve it by having a single fixture itself.. seems like its not possible with a single fixture.. </div><div dir="auto"><br></div>My usecase is a little more complicated.. </div><div dir="auto"><br></div><div dir="auto">My test case structure will be </div><div dir="auto"><br></div><div dir="auto">BaseFolder/scenarioA/test.py</div><div dir="auto"><div class="gmail_extra" dir="auto"><span style="font-family:sans-serif">BaseFolder/scenarioB/test.py</span></div><div class="gmail_extra" dir="auto">.</div><div class="gmail_extra" dir="auto">.</div><div class="gmail_extra" dir="auto"><br></div><div class="gmail_extra" dir="auto"><span style="font-family:sans-serif">BaseFolder/scenarioN/test.py</span></div><div class="gmail_extra" dir="auto"><span style="font-family:sans-serif"><br></span></div><div class="gmail_extra" dir="auto"><span style="font-family:sans-serif">Each of the test.py has its own common_configuration function definition and TCs..(test.py won&#39;t have any class def)</span></div><div class="gmail_extra" dir="auto"><font face="sans-serif">😊</font></div><div class="gmail_extra" dir="auto"><font face="sans-serif"><br></font></div><div class="gmail_extra" dir="auto"><font face="sans-serif">My Conftest.py will be in BaseFolder/</font></div><div class="gmail_extra" dir="auto"><font face="sans-serif"><br></font></div><div class="gmail_extra" dir="auto"><font face="sans-serif">So if these two fixtures would go into the conftest.py can they still call the common_configuration function.?</font></div><div class="gmail_extra" dir="auto"><font face="sans-serif"><br></font></div><div class="gmail_extra" dir="auto"><font face="sans-serif">Regards</font></div><div class="gmail_extra" dir="auto"><font face="sans-serif">Arun Kaliraja</font></div><div class="gmail_extra" dir="auto"><font face="sans-serif"><br></font><div class="gmail_quote" dir="auto">On 09-Feb-2017 12:50 AM, &quot;Bruno Oliveira&quot; &lt;<a href="mailto:nicoddemus@gmail.com" target="_blank">nicoddemus@gmail.com</a>&gt; wrote:<br type="attribution"><blockquote class="m_-2904402537551370944quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hi Arun,<br><br><div class="gmail_quote"><div class="m_-2904402537551370944quoted-text"><div dir="ltr">On Wed, Feb 8, 2017 at 4:56 PM arun kali raja &lt;<a href="mailto:arunsep886@gmail.com" target="_blank">arunsep886@gmail.com</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr" class="m_-2904402537551370944m_-311017948290167044gmail_msg">Hi Bruno,<div class="m_-2904402537551370944m_-311017948290167044gmail_msg"><br class="m_-2904402537551370944m_-311017948290167044gmail_msg"></div><div class="m_-2904402537551370944m_-311017948290167044gmail_msg">yeah this will solve the case of calling the fixture(which doesnt do function level configuration but rather it takes the backup of certain files in the system before the TC executes and restores them to original state after the TC is complete) before each TC execution . </div><div class="m_-2904402537551370944m_-311017948290167044gmail_msg"><br class="m_-2904402537551370944m_-311017948290167044gmail_msg"></div><div class="m_-2904402537551370944m_-311017948290167044gmail_msg">But i need the same to be called before the common_configuration part as well like below:</div></div><div dir="ltr" class="m_-2904402537551370944m_-311017948290167044gmail_msg"><div class="m_-2904402537551370944m_-311017948290167044gmail_msg"><br class="m_-2904402537551370944m_-311017948290167044gmail_msg"></div><div class="m_-2904402537551370944m_-311017948290167044gmail_msg"><pre class="m_-2904402537551370944m_-311017948290167044m_-8984495430666473093gmail-m_-140558713444331243gmail-lang-py m_-2904402537551370944m_-311017948290167044m_-8984495430666473093gmail-m_-140558713444331243gmail-prettyprint m_-2904402537551370944m_-311017948290167044m_-8984495430666473093gmail-m_-140558713444331243gmail-prettyprinted m_-2904402537551370944m_-311017948290167044gmail_msg" style="white-space:pre-wrap;margin-top:0px;margin-bottom:1em;padding:5px;border:0px;font-size:13px;width:auto;max-height:600px;overflow:auto;font-family:consolas,menlo,monaco,&quot;lucida console&quot;,&quot;liberation mono&quot;,&quot;dejavu sans mono&quot;,&quot;bitstream vera sans mono&quot;,&quot;courier new&quot;,monospace,sans-serif;background-color:rgb(239,240,241);color:rgb(57,51,24);word-wrap:normal"><code style="margin:0px;padding:0px;border:0px;font-family:consolas,menlo,monaco,&quot;lucida console&quot;,&quot;liberation mono&quot;,&quot;dejavu sans mono&quot;,&quot;bitstream vera sans mono&quot;,&quot;courier new&quot;,monospace,sans-serif;white-space:inherit" class="m_-2904402537551370944m_-311017948290167044gmail_msg"><span class="m_-2904402537551370944m_-311017948290167044m_-8984495430666473093gmail-m_-140558713444331243gmail-pln m_-2904402537551370944m_-311017948290167044gmail_msg" style="margin:0px;padding:0px;border:0px;color:rgb(48,51,54)">configurationBackup
common_Configuration  
configurationBackup
TC_1
configurationBackup</span><span class="m_-2904402537551370944m_-311017948290167044m_-8984495430666473093gmail-m_-140558713444331243gmail-pun m_-2904402537551370944m_-311017948290167044gmail_msg" style="margin:0px;padding:0px;border:0px;color:rgb(48,51,54)">.</span><span class="m_-2904402537551370944m_-311017948290167044m_-8984495430666473093gmail-m_-140558713444331243gmail-pln m_-2904402537551370944m_-311017948290167044gmail_msg" style="margin:0px;padding:0px;border:0px;color:rgb(48,51,54)">finalizer
configurationBackup
TC_2
configurationBackup</span><span class="m_-2904402537551370944m_-311017948290167044m_-8984495430666473093gmail-m_-140558713444331243gmail-pun m_-2904402537551370944m_-311017948290167044gmail_msg" style="margin:0px;padding:0px;border:0px;color:rgb(48,51,54)">.</span><span class="m_-2904402537551370944m_-311017948290167044m_-8984495430666473093gmail-m_-140558713444331243gmail-pln m_-2904402537551370944m_-311017948290167044gmail_msg" style="margin:0px;padding:0px;border:0px;color:rgb(48,51,54)">finalizer
configurationBackup
TC_3
configurationBackup</span><span class="m_-2904402537551370944m_-311017948290167044m_-8984495430666473093gmail-m_-140558713444331243gmail-pun m_-2904402537551370944m_-311017948290167044gmail_msg" style="margin:0px;padding:0px;border:0px;color:rgb(48,51,54)">.</span><span class="m_-2904402537551370944m_-311017948290167044m_-8984495430666473093gmail-m_-140558713444331243gmail-pln m_-2904402537551370944m_-311017948290167044gmail_msg" style="margin:0px;padding:0px;border:0px;color:rgb(48,51,54)">finalizer
configurationBackup</span><span class="m_-2904402537551370944m_-311017948290167044m_-8984495430666473093gmail-m_-140558713444331243gmail-pun m_-2904402537551370944m_-311017948290167044gmail_msg" style="margin:0px;padding:0px;border:0px;color:rgb(48,51,54)">.</span><span class="m_-2904402537551370944m_-311017948290167044m_-8984495430666473093gmail-m_-140558713444331243gmail-pln m_-2904402537551370944m_-311017948290167044gmail_msg" style="margin:0px;padding:0px;border:0px;color:rgb(48,51,54)">finalizer</span><span class="m_-2904402537551370944m_-311017948290167044m_-8984495430666473093gmail-m_-140558713444331243gmail-pun m_-2904402537551370944m_-311017948290167044gmail_msg" style="margin:0px;padding:0px;border:0px;color:rgb(48,51,54)">(</span><span class="m_-2904402537551370944m_-311017948290167044m_-8984495430666473093gmail-m_-140558713444331243gmail-pln m_-2904402537551370944m_-311017948290167044gmail_msg" style="margin:0px;padding:0px;border:0px;color:rgb(48,51,54)"><wbr>which </span><span class="m_-2904402537551370944m_-311017948290167044m_-8984495430666473093gmail-m_-140558713444331243gmail-kwd m_-2904402537551370944m_-311017948290167044gmail_msg" style="margin:0px;padding:0px;border:0px;color:rgb(16,16,148)">is</span><span class="m_-2904402537551370944m_-311017948290167044m_-8984495430666473093gmail-m_-140558713444331243gmail-pln m_-2904402537551370944m_-311017948290167044gmail_msg" style="margin:0px;padding:0px;border:0px;color:rgb(48,51,54)"> done before common_Configuration</span><span class="m_-2904402537551370944m_-311017948290167044m_-8984495430666473093gmail-m_-140558713444331243gmail-pun m_-2904402537551370944m_-311017948290167044gmail_msg" style="margin:0px;padding:0px;border:0px;color:rgb(48,51,54)">)</span></code></pre><pre class="m_-2904402537551370944m_-311017948290167044m_-8984495430666473093gmail-m_-140558713444331243gmail-lang-py m_-2904402537551370944m_-311017948290167044m_-8984495430666473093gmail-m_-140558713444331243gmail-prettyprint m_-2904402537551370944m_-311017948290167044m_-8984495430666473093gmail-m_-140558713444331243gmail-prettyprinted m_-2904402537551370944m_-311017948290167044gmail_msg" style="white-space:pre-wrap;margin-top:0px;margin-bottom:1em;padding:5px;border:0px;font-size:13px;width:auto;max-height:600px;overflow:auto;font-family:consolas,menlo,monaco,&quot;lucida console&quot;,&quot;liberation mono&quot;,&quot;dejavu sans mono&quot;,&quot;bitstream vera sans mono&quot;,&quot;courier new&quot;,monospace,sans-serif;background-color:rgb(239,240,241);color:rgb(57,51,24);word-wrap:normal"><br class="m_-2904402537551370944m_-311017948290167044gmail_msg"></pre></div></div><div dir="ltr" class="m_-2904402537551370944m_-311017948290167044gmail_msg"><div class="gmail_extra m_-2904402537551370944m_-311017948290167044gmail_msg"><br></div></div></blockquote><div><br></div></div><div>If I understand your example correctly, you can use two fixtures then:</div><div><br></div><div>@pytest.fixture(scope=&#39;session<wbr>&#39;)</div><div>def module_config():</div><div>    configurationBackup</div><div>    common_Configuration</div><div>    yield<br>    configurationBackup.finalizer<br><br><div><br class="m_-2904402537551370944m_-311017948290167044inbox-inbox-Apple-interchange-newline">@pytest.fixture(autouse=True)</div><div>def function_config(module_config)<wbr>:</div><div>    configurationBackup</div><div>    yield<br>    configurationBackup.finalizer</div></div><div><br></div><div>module_config&#39;s &quot;configurationBackup.finalizer<wbr>&quot; will be called last for the module, after TC_3&#39;s &quot;configurationBackup.finalizer<wbr>&quot;.</div><div><br></div><div>Cheers,</div><div>Bruno.</div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr" class="m_-2904402537551370944m_-311017948290167044gmail_msg"><div class="gmail_extra m_-2904402537551370944m_-311017948290167044gmail_msg">
</div></div></blockquote></div></div>
</blockquote></div><br></div></div></div>