Back in the day, late 1980s and early 1990s in my case, printers were the bane of every IT department.  There was no common printer format, the same document looked different when printed on different printers, and even the advent of postscript printing didn’t solve all of the problems.  As a developer of software and an integrator of systems in those days we tried to restrict the number of supported printers.  We did this because we had to test document fidelity across that restricted set, especially in regulated industries like pharmaceuticals where the difference between a microgram and a milligram symbol could result in death: death of a patient from an overdose of the active compound or death of a patient from an under dose so they succumbed to their disease.

In today’s world of Smart Phones, Tablets, Windows and MacOS we have largely solved the printing problem and PDF documents abound as a “belt and braces” way of ensuring document fidelity.  However, there’s a new challenge facing software developers, web site designers and app creators, and that is “The Screen”.

Back in the day, again, screens were typically “green screen” monitors with 80 characters across and 40 characters down the screen.  Screen resolution was poor, but it didn’t matter because green pixelated characters on a black background were perfectly legible.  Even as colour screens arrived with those new-fangled PCs, they typically delivered the 80*40 character experience with a common aspect ratio of 4:3 via a cathode ray tube (not a good thing to balance your coffee on top of, they tended to go bang if the drink was inadvertently spilt!).

In today’s world we have different screen sizes on our phones, tablets, laptops and desktops with no common aspect ratio.  Each of these is capable of a range of resolutions in a variety of aspect ratios all of which are configurable by the user to some extent.  Examples include: the Apple Watch (312*240 with 4:5 aspect ratio), Samsung S6 (5.1 inch screen with 2560*1440 with 16:9 aspect ratio), HP Desktop (1680*1050  with 8:5 aspect ratio), Dell XPS13 Laptop (3200*1800 with 16:9 aspect ratio), 4K TV (4096*2160 and an aspect ratio of almost 1.9:1), iPhone 6 (4.7 inches, 1334 x 750 pixels) and iPhone 6+ (5.5 inches, 1920 x 1080 pixels) although Apple has cleverly kept the same 16:9 aspect ratio for its iPhone 6 screens, which means current apps will automatically scale up to fit the device. "They just work," said Apple's Phil Schiller.  But do they?

Responsive Web Design (the screen equivalent of postscript printing or PDFs I guess), goes a long way to solving these problems by making your web page look good on all devices (desktops, tablets, and phones) using CSS and HTML to resize, hide, shrink, enlarge, or move the content to make it look good on any screen.  However, not everyone practices or implements Responsive Web Design.  So we are back to the age old problem of having to test against a range of devices (over which we no longer have the control to create a restricted set because everyone chooses their own personal devices and many companies have a BYOD (Bring Your Own Device) approach.  We need to assure that all our software, websites and apps work as expected on any device, operating system or browser.  In an earlier news article I wrote about “Eating you own dog food”, this referred to the 34 combinations of testing required to test against the last 3 versions of each operating system (Windows, MacOS, IOS and Android), with the current version of each browser, across each type of device.  The article didn’t consider the multiplicity of different PC manufacturers, varieties of Mac, iPhone and iPad or the different Android devices from Samsung, Sony, HTC etc., neither did is take into account the screen resolution or aspect ratio of the device (or the configurability of those parameters by the user).

Suffice to say we have to make informed choices to design a test approach which de-risks this challenge and gives our customers and end users confidence in their software.

If you would like some help to make informed choices and design a test approach to give you confidence in your software, website or apps, or you would like someone to shoulder this burden for you using manual and automated testing techniques, please get in touch with us via www.buitech.co.uk, emailing info@buitech.co.uk or by calling us on 0330 22 33 036.