Driving Software Quality & Building Confidence in FinTech & Crypto | Coaching Teams about Quality | Mentoring QA Talent | Lead Automation QA | Playwright
Developing Automation Testing Frameworks, Teaching, Learning, Collaboration
Hi Misha, page-object-fixture.ts purpose is to create a separate fixture for every single POM we develop. In that case, we received already prepared classes in our test. The goal of test-options.ts is to merge all custom fixtures (POMs, API, etc) in a single test fixture, which we are going to use in our tests. The setup is inspired from Murat Ozcan but I think there some tweaks to it. You can see in the next article how these custom fixtures of POMs are used in actual tests. Hope the answer is clear enough :)
Hi, Misha, First apiRequest, created in the file plain-function.ts is an abstraction of playwright requests, which takes a few mandatory parameters as request (playwright default fixture), Method and url, and a few optional - baseUrl,body and headers. After that we use it to create a custom fixure, where we attach automatiocaly the request, coming from Playwright, in order to have direct access to it through our tests. Hope this is helpful to you. The best part is that the complete setup can be used in every Playwright Framework with minor reworks
Misha , yes, I agree with you! The main goal of my blog was to document every major topic, relevent to my work, so I have one place where I can find everything I need. In my articles you will find great insights from many great guys - Stefan Judis, Murat Ozcan, Artem Bondar and Filip Hric. If you are curious, you can check their fantastic work.
You are welcome, Misha! My goal was to explain in details one method, which I found most suitable for huge real world app with test integration in CI/CD. Keep in mind that Artem shared a few different ways to do it and has the boundary to do it in a set timeframe. The goal of his course is to show everything from getting the locators all the wau to custom fixtures. It is not a straight forward task, and in my opinion he has done a fantastic job. For example, I begin with his course too, and I am very thankful for great fundamentals he tought me.