Testing on real devices vs simulators

If you work with web, clients often require to test their websites in multiple browsers and mobile devices, including tablet and mobile, you don't get to decide which browsers or devices should be tested, however, if clients don't know a lot about their analytics, you can always propose browsers and devices based on the most used world wide, of course, this needs to be approved by the client.

Sometimes the most used browsers don't matter to clients, they want their webistes to work on the browsers users use when going into them, that being said you may end up testing browsers that people worldwide don't use like old Internet Explorer versions or old OSs, believe me, it happens. Now, let's say you only have a Mac, but you are requested to test on Internet Explorer 10, Internet Explorer 11, Edge, Chrome and Firefox, what would you do ? The correct answer is: you have to test on all those browsers because it is requested by the client although you can suggest some changes and you can describe the level of testing on each browser, in any case, the client decides the scope of the project and you must meet that goal. More important than what you would do is how would you do it, there are several answers here: use simulators, use Browserstack, use virtual machines, use the actual machine with the correct OS and browser. The best answer is to use real browsers and the actual machine, however this is not always possible, companies won't spend a lot of money on old browsers or old OS, if you ask me, if I don't have the actual machines, I use virtual machines because I'm actually on the OS and testing the browser, I think it is the most real approach besides the real machines. When talking about virtual machines, I prefer to use VirtualBox rather than VM Ware, I can't tell you how many differences I have seen between WM Ware and VirtualBox and the most accurate one is VirtualBox. Browserstack is great too and it doesn't need a lot of tools to use it, however I prefer virtual machines.

Now, about mobile devices I think the same way, you must test on real devices and your company or client should be the one that provides those devices for you to test and guarantee the quality on different devices, however, if there's no budget and there are no devices, the only way to test this is using simulators (I don't like them so much), but if you ask me, the best simulator I have used on iOS is the one that comes with X Code (only for Mac), in my tests, I found that what you see in X Code is 95% the same as what you see in a real iOS device, that's why I think it's the best simulator. For Android stuff, you can always download Android Studio and there download different devices, in my experience this has worked good, but I have seen some discrepancies between this simulator and the actual device, that's why I don't recommend it like X Code, however if you have no choice, this is the best one and it will show you a lot of real stuff that actually happens on the real device.

I will always prefer real devices and browsers than simulators or tools, however, some tools come in handy when you don't have the resources to fully test the site, you should mention that on your reports and let the client know about your findings and what you tested, in case you don't have the real devices or browsers, that way you are letting the client and team know that you did what you could and that there may be bugs or not because you are not 100% sure about how the system will look in a real device or browser.

@LuchoAgileQA

Comentarios

Entradas populares de este blog

La forma correcta de reportar fallos o bugs

¿Qué es un líder de QA ?

Pruebas de regresión