And this is more or less what you are going to do in the search part with the frameworks that you choose to compare. And for Selenium, starting with Selenium. Selenium is a framework that is here for a long time, and this means that Selenium has a large community supporting it. And you will not be alone working because you will have a Stack Overflow to help you with a large group of people that can help you.
And overall, it is a really good framework, but it will need third parties to work with certain types of tests. So Selenium automates the browser. So it simulates a real browser interaction, meaning that if you need to do API testing, you will need to integrate with a third party to have the API testing. And since Selenium does not support by itself parallel testing, you will need to integrate with Selenium Grid and a cross-browser tool to make it work. And for me, the most downsides for Selenium is it does not have an in-built report tool, so you will need to have a third party like X-Ray or Test Rail, that I'm going to talk a little bit in the end, to support this. And it does not support iframes or popups. So, if your application depends on third party iframes, Selenium is going to be a really not go-to framework. But, if this is something that you can live without, Selenium is really really good to work with a large set of tests, but, like I told you, it will need third parties integration for some type of test, and this will make it more difficult to work in the beginning. I'm not saying that it's impossible because nothing is impossible, but, you will need to have some experience and some expertise to understand what are the workarounds that you need to do here, okay.
So, it is a good tool. If you want something easier to start with, let's move on to the other tool and understand what are the differences here. So, with Cypress, Cypress is a all-in-one tool, meaning that you can have the development team doing unit testing and you doing the other types of tests in your site, and have the whole team working with the same framework, and this is cool because you can take it out with each other and try to understand and review code from each other, and it is very complete, it has an in-built report, you don't need to integrate with any third parties here, but the downside is that you only work with JavaScript here and it does not support parallel testing and multitap testing, meaning that if you need to have certain types of configurations that need to be run at the same time, for example, if you want to have a browser with a device and various configurations about this, you will need to run them separately. So, it will be a very huge time running the test case. If you need to have various set of configurations here, various environments running at the same time, you need to consider if Cypress is going to be a good tool for you. But for starters, and for a small medium group of tests, Cypress is really good. It's a very simple tool to work with if you work with javascript, of course. It's a very simple tool to work with and it has a lot of documentation, the community is growing so you will have help for with Stack Overflow for any type of data that you need. But it has its downsides, just like all frameworks that you will encounter here.
Moving on to Playwright, Playwright is a fair new framework. The first time that I heard about it it was here in 2020, if I'm not mistaken, and it is, I think, the most complete of the three. You can have all types of tests running in Playwright, it supports parallel testing so you can have various sets of configurations and environments running at the same time. It has context isolation so you can have tests for new tabs and clicks open in a new tab, it can capture videos and screenshots so you can have visual testing in comparison. But it is a new framework so be aware there are some types of features that are not completely developed so if you look for a framework that is settled, maybe playwright is not the go-to. And since it is a new framework, the community is not very large compared to the other two, so you will need to have some experience with coding and expertise, programming and searching for things because you are going to be a little bit alone in this. You will have the community of playwrights taking doubts, but Stack Overflow is not really filled with questions and answers for how to move with playwrights. So, be aware that you will need to take a lot of time trying to move with playwrights and documentation is a bit confused because since it does a lot of things it's kind of messy to work around with.
Comments