Blog

Image and screenshot comparison tools for UI testing

There is a simple case for why end-to-end UI testing is impossible without automated image comparison. If you’re not using a screenshot comparison tool, your product is at risk of shipping with visual bugs which rarely go unnoticed by users. Obviously, no sane QA engineer is willing to accept this risk. So do you automate image comparison when testing UIs? And if yes, what automation tool do you use? Is it simple module for WebDriver — or other code-based solution — or a dedicated visual CSS regression testing tool? Let’s look at the popular tools and platforms that QAs use to compare screenshots when testing web UIs. In this post, we’ll find out if these tools’ functionality meets the real-life requirements of UI testing. WebdriverCSS WebdriverCSS is a part of the WebdriverIO, which makes for a lot of neat functionality. It allows you to write scripts in JavaScript while supporting Selenium, and it’s compatible with major TDD and BDD frameworks. One more reason to like this tool is the WebdriverCSS Adminpanel — a clean, nothing-extra-style dashboard with a slider for manual image comparison. Sure, setting up the admin panel adds overhead, but the overall experience of using the dashboard seems... More

Using Jenkins CI for UI testing. Will Selenium do?

If you’ve ever used Jenkins CI for UI testing automation, you probably know it’s a terrific scheduler. Sure, Jenkins isn’t the only tool of its kind, but continuous integration with Jenkins has several advantages over other CI platforms. Namely: Jenkins is open-source, award-winning, and supported by an independent board of programming veterans from Yahoo!, Microsoft and RedHat. Being a mainstream CI tool, Jenkins has great documentation and a vibrant, booming community. Even though Jenkins CI is not as easy to configure as TeamCity, it's still pleasantly manageable. Jenkins has hundreds of plugins available. Moreover, developers often give Jenkins higher priority over its Oracle-controlled counterpart Hudson when rolling out updates and new plugins. Okay, Jenkins is uber-awesome… unless you use it to schedule Selenium UI tests Jenkins does everything you’d expect from a robust CI solution. It’s great when used with most types of automated testing tools, too — as long as we’re talking unit and API tests. Things tend to get trickier, however, once you try using Jenkins with an old-school UI testing automation tool like Selenium. Okay, that last statement might irk some Selenium fans, so let me explain myself while they’re getting their pitchforks and torches ready:). Or... More

Regression testing tools compared: Screenster vs Sauce Labs

In the brave new world of 2017, UI regression testing tools shouldn’t take days to set up. Elimination of setup and configurations pains makes one solid case for taking your QA infrastructure to the cloud. Another obvious case for running tests on the cloud is streamlined collaboration — after all, software testing is a team effort. A matter of question, however, is what type of a cloud-based platform is best-suited for your project. In this post, we will consider two regression testing tools that demonstrate radically different approaches to UI testing automation. The first one is Sauce Labs, arguably the most popular automated testing cloud for running Selenium or Appium tests. The other one is Screenster, our very own cloud-based platform that enables codeless UI testing. Sauce Labs Sauce Labs builds on the flexibility of Selenium and Appium tests, and it provides a readymade cloud infrastructure for running them. The solution offered by Sauce Labs mainly functions as a code-based regression testing tool. The platform enables QAs to run Selenium and Appium tests on remote virtual machines that mimic the environment of different OS and browser versions. All in all, there are 700+ OS and browser combinations available for the... More

Regression testing techniques and best practices

If you’ve been following this blog, you know that our team is pretty serious about regression testing, as well as regression testing techniques and best practices. Visual regressions have been the arch-enemies of our product AjaxSwing, and we’ve even created our own automated regression testing tool to overcome them. Today, we’d like to talk about regression testing, it’s key concepts and main challenges, and tools that help you overcome these challenges. Let’s start with addressing some of the basics. What is regression testing? Regression testing is a QA process that tells you if a previously written and tested program continues to work correctly after you’ve introduced some changes. In other words, it helps you notice if you’ve unknowingly broken something in your code by an update or a fix of some sort. New bugs introduced with these updates and fixes are called regressions, hence the name of this type of software testing. How to do regression testing? Okay, so how exactly do you test for regressions? In a nutshell, you do it by continuously re-executing the same tests to ensure that system continues to function as expected. Once a test that passed during previous runs fires a failure, you know... More

Most important facts about regression testing tools in 2017

Why visual regression testing is so important The World Wide Web is swarming with sites and web apps of all sorts. Each year, the competition keeps growing hotter in every segment. For instance, this year there were almost 2.5 million of applications in Google Play alone. Nearly each day, a fresh new project gets released somewhere. Pick a specific niche, do a quick research, and you will find several rivaling companies competing in it. UI or CSS testing of a web project is, therefore, a crucial part regardless of what your app is designed to do. Functionality and performance have long been the key factors that keep that influence user retention. In the brave new world of today, UI and UX are just as important. Let’s face it, adding a new killer feature to your product will do little good if your lead-generating landing page is broken. The best cure against this trouble is visual regression testing performed constantly, as often as you can afford. In 2017, regression testing automation isn’t an extra activity any more Things are getting automated in our daily life, step by step. First of all we pass to robots or programs most burdensome and least... More

5 reasons to choose Screenster over your current UI testing automation tool

Looking for an efficient codeless solution for UI testing automation? Meet Screenster, a new cloud-based platform that brings speed and simplicity to UI testing. Here are five reasons why we’re different from (and better than 😉) our competition. 1. Super-short learning curve with no coding skills required Okay, we all know that every other UI testing automation tool boasts having a smooth learning curve. Here’s why Screenster is different: when we say our platform is easy to pick up, we mean it. Screenster requires, precisely, zero programming skills. Instead of relying on scripted tests, the functionality of this platform revolves around record-playback and screenshot comparison. This allows manual QAs and product owners to cover the whole UI and test actual UX scenarios instead of hand-coding verifications. Now isn’t this what UI testing automation is all about? When working on Screenster, we’ve put a lot of effort into making it accessible to non-testers. You don’t need to read manuals to automate basic UI tests, and most of the things are easy enough to learn while actually working with the platform. 2. Maintainable tests created in 3 minutes … And I’m not talking about all those “hello, world!” mock tests. Take a... More

12 features that every UI testing automation tool must have

What software do you use for UI testing automation? For that matter, how did you come to choose the solution that you’re currently using? Making lists is always handy, so let’s do exactly that. Below, you will find a list of requirements that we deem must-have for every modern tool used for automated user interface testing. When working on it, we’ve used the feedback from our customers — and from our competitors as well. Besides, the checklist below pretty much mirrors our roadmap for Screenster, our very own platform for UI testing automation. Without further ado, read on. 1. Speed Higher speed equals higher ROI. This is why it’s paramount that the solution you’re using for UI testing automation allows you to quickly create, edit and debug your suites. So if creating a basic test suite takes more than 30 minutes, you should probably start looking for another tool. 2. Codeless UI tests Don’t get me wrong, coding is fun — but we think the real fun is to code features, not tests. And let’s face it, there’s really no such thing as a robust suite of hand-coded UI tests that covers the whole user interface, not just its separate... More

Let’s talk about Selenium competitors for UI regression testing

With so many UI testing tools posing themselves as direct competitors to Selenium, which one do you choose? And why opt for a Selenium competitor in the first place? Don’t get me wrong, Selenium is awesome. Well, sort of... Even today, 13 years since its launch, Selenium remains the number-one choice for testing in the browser. It supports the widest range of programming languages, it works with every major browser, and it runs on every major OS. No other testing automation tool can rival the flexibility and the functional scope of Selenium. Besides, none of the competitors is as popular as Selenium. The above doesn’t mean, however, that Selenium is the best solution for every use case that its functionality covers. Namely, you wouldn’t want Selenium for end-to-end regression testing of complex UIs — or, at least, that’s the conclusion we’ve arrived at when testing own product, AjaxSwing. In fact, our scepticism about Selenium grew to a point where we abandoned the tried-and-true framework and started looking at Selenium competitors in search of an alternative. Eventually, this led us to building our own tool for visual regression testing, but that’s a different story. When working with Selenium, we’ve faced three... More

The Rise of Automated Testing Platforms

It’s 2017, and software testing is as important as ever — so is choosing the right automated testing platform. So how do you make the right choice given the number of available automated software testing tools? In a sense, testing software features is like shipping goods. Your clients don’t care about what means of transportation you used to ship the product — as long as it gets there in time. You, however, will definitely want to make sure you’re using a vehicle that delivers goods in time, in pristine condition, and at the right cost. Just for fun, let’s stick with the shipment analogy and examine both paid and open source automation testing tools for web applications. Horse (Manual Testing) If you’re shipping something small and time isn’t a priority, you can hand your package to a guy on a horse. This sort of logistics is as reliable as the delivery guy, but it’s simple to implement. Need to ship more? Hire a couple more horsemen. Just like horse transportation, manual testing works fine as long as your product is small. But once things get bigger, testing manually becomes costly and time-consuming, so it’s not sustainable in the long run.... More

How to run tests from Selenium IDE in Chrome

Ever wondered if you could use Selenium IDE for Chrome? You've probably heard that the IDE only runs in Firefox, which means Google’s much-famed browser is out of reach. Actually, there’s a neat little feature that lets you run Selenium IDE in Chrome. The feature is called WebDriver Playback. Here's how you can use it: Launch Selenium IDE. Go to ‘Options’ and select “Options...” in the drop-down menu. In the Options menu, select the ‘WebDriver’ tab. Check the ‘Enable WebDriver playback’ checkbox. Find the ‘Browser choices’ input field right below the checkbox. Below the input field, you will see browser options including ‘android, chrome, firefox, htmlunit, internet explorer, iPhone, iPad’. Substitute ‘firefox’ with ‘chrome’. Note that both variants are lowercase. Download Selenium standalone JAR file and ChromeDriver. Add both files to the same folder on your local computer. Use Terminal to navigate to the folder with the downloaded files. Start Selenium server and ChromeDriver server via Terminal: java -jar selenium-server-standalone-2.43.1.jar -Dwebdriver.chrome.driver=chromedriver.exe Open Selenium IDE and run the test script. Note that the script will run in Chrome. So if you wanted to find out how to run Selenium tests in Chrome, follow the 10 steps mentioned above and enjoy the... More
WordPress Image Lightbox Plugin