CrossBrowserTesting.com

A Design, Development, Testing Blog

  • Product Overview
  • Pricing
  • Back Home
  • Free Trial
  • Design
  • Development
  • Manual Testing
  • Test Automation
  • Visual Testing

The Best Uses for Live, Visual, and Automated Testing

January 9, 2018 By Alex McPeak Leave a Comment

uses for automated testing

uses for automated testing

From our humble beginnings as a manual testing tool with just around 50 browsers, CrossBrowserTesting has come a long way to be the reliable end-to-end testing tool you know today. With a range of offerings as old and problematic as IE6 and as new as Chrome 63 amongst our 1,500 configurations, we’re unquestionably the most complete cross-browser testing platform.

Another part of growing up and expanding was adding visual testing and automated testing capabilities in addition to live testing. Today, individuals and teams across the country depend on these features, but we want everyone to get the most bang for their buck. So, in order to truly understand our core functionalities and the best times to implement them, we’re explaining the best uses for live testing, visual testing, and automated testing for websites.

Live Testing

We started with live testing to give people a way to manually test their website in a variety of browsers. Today, manual testing is as important as ever. As teams adopt Agile and Continuous Testing, it’s important that manual testing isn’t overlooked and continues to be a part of the SDLC into the future. Having dedicated testers who understand software and are focused on finding defects and reporting bugs is quintessential to proper live testing.

Best Use Case – Exploratory testing.

Exploratory testing is not a strict set of rules checking whether or not the application works, like automated testing. While there should be a plan going into exploratory testing, it’s also a somewhat ad-hoc process based on testing the limits of a new integration within the software, or even a completely new application, before it’s deployed. It takes a keen sense of observation and an understanding of the application design and purpose to be executed with value.

Using the live testing feature in CrossBrowserTesting, exploratory testing becomes more manageable with access to browsers, operating systems, and devices that teams may not have had previous access to, but their customers are using. By remotely accessing a variety of configurations rather than just the browser your developers are, owning this detailed observation for a broad user base is much more manageable.

Tips for Live Testing – Check out our tips for exploratory testing an eCommerce site and user personas playbook for ideas on what to look for during an exploratory test. Additionally, our native debugging tools allow you or any of your teammates to fix a bug, on the spot, in the very browser it was found on.

Visual Testing

Applitools Eyes Visual testing CrossBrowserTestingVisual testing is used to assess a web application’s responsiveness across browsers. By performing visual testing, you’re looking at the UI/UX components on the front end to decide whether the application under test is acceptable on a variation of browsers, devices, and screen resolutions since they all provide a different experience.

Best Use Case – Screenshot comparisons for visual validation.

Our screenshot comparison engine lets you take screenshots across multiple browsers in a matter of seconds, allowing you to easily compare full-page layouts. By highlighting the differences from your baselines browser, it’s easier than ever before to decide whether your web page is consistent across browsers without having to manually compare them. With the option to test on hundreds of devices, you can be confident that you’re accounting for every customer.

By performing visual regression testing, you can also compare new changes to historical versions to make sure any added integrations or application updates are supporting improvement rather than adding any glitches to the user experience.

Tips for Visual Testing – Run a risk analysis and pick five to ten of your highest priority pages. Find out what the most popular browsers are that your users are on, and run each of those targeted pages on those configurations to give you a basis as to whether or not the application is visually acceptable for the majority of your users. If you happen to find that a page is faulty, take to live testing to debug.

Automated Testing

Automated testing in CrossBrowserTesting relies on Selenium and Appium open source software to allow you to create test scripts in any major language that can be run across multiple browsers. While effective automated testing with these frameworks does require programming knowledge, teams prefer it to be able to run tests in a fraction of the time without needing to perform every step manually. Alternatively, Record & Replay provides a lightweight, codeless test automation solution for teams that have yet to fully learn how to write Selenium scripts.

Best Use Case – Functional and regression testing.

You can take all the screenshots in the world, but just because something looks great, doesn’t mean it also works like it’s supposed to. Automated testing digs deeper into the backend of a web application to analyze unit, integration, and end-to-end test cases and make sure that code renders properly on different browser configurations. By looking beyond the surface of the application, you can better insight on whether or not it will actually work correctly for users at different stages in their journey through your application.

Test automation is also a preferred method for regression testing since repeated actions of long test suites don’t have to be done manually. Instead, running an automated regression test can check that previously stable code still is functioning as it’s supposed to after a new integration, feature, or bug fix is added.

Automated Testing Best Practices – Running an automated test across browsers in parallel can make testing up to twenty times faster, depending on how many configurations you include. While automation is already a great way to speed up repetitive or boring tests, parallel testing allows you to run that same script on other configurations at the same time rather than waiting until each is done to start the next.

Conclusion

While live testing, visual testing, and automated testing each have it’s own purpose, designing a strategy that involves all three is the key to truly comprehensive testing. As your team and product grow, using these capabilities to help your organization balance speed and quality will be what sets you apart from the competition and ensures your brand’s trustworthiness.

Filed Under: Test Management Tagged With: automated testing, live testing, visual testing

Exploratory Testing Techniques for Your E-Commerce Site

December 13, 2017 By Alex McPeak Leave a Comment

exploratory testing techniques ecommerce website testing

exploratory testing techniques ecommerce website testing

Though test automation has been a saving grace for when checking previously written code coverage, we know that there is no substitute for manual testing. Whether you follow the traditional waterfall method or are practicing agile development with your team, exploratory testing plays a critical role.

Anyone who owns or manages an e-commerce website especially knows this to be true. What’s the use of automating a script you derived out of thin air? Instead, exploratory testing with real, human testers provides insight into functionality, performance, and usability of the application.

In order to better understand some of the most important areas to cover when conducting exploratory tests on an e-commerce site, we put together a few steps to consider when live testing.

  1. What happens when someone tries to log in? Is the user directed to the correct page after they logged in and does it load properly? What happens if they put in the wrong information — do they have to re-enter email and password every time or does it stay in the field? What do any error messages say and is it easy to retrieve a forgotten password or use existing login data? Whether your web application prompts a login as soon as someone lands on the home page or just in order to log into their account at payment, you want this to be a seamless experience because if someone has trouble logging in, there’s a good chance they won’t end up purchasing.
  2. How user-friendly are the form fields? If your website is good enough that a customer can easily make it to check out, you don’t want to trip them up on the last few steps of their purchase as the fill out form fields like name, address, and payment information. Unfortunately, however, this is still something many websites have yet to master. Are you asking too much information or not enough? How long does it take to get one from their shopping cart to a finished checkout? Make sure that promotion boxes and purchase total calculations function correctly. Additionally, you’ll want to make sure that all payment processing works, so that customers who are trying to use PayPal won’t encounter an issue that someone charging to their credit card wouldn’t get.
  3. What’s the experience like on mobile? Speaking of form fields, they can pretty much make or break the mobile user experience. You want to make sure that each field takes up most of the screen when a user goes to fill it in, or someone going through checkout might become frustrated at how hard it is to see and type their information to make the purchase. You’ll generally want to make sure the website design is responsive, which may mean implementing different types of features and designs for users that do not access the site on a desktop in order to make it easier to use and look at. Consider all the ways that the buying process differs with a touch screen and a scaled down keyboard. Of course, it’s best to test for mobile on a few real devices to truly understand how these different functions come into play.
  4. How long do different pages take to load? First of all, you want your homepage to load quickly because this is where new and returning traffic will start, and you want to make a good first impression. However, you also have to consider other areas of your application that don’t get the same level of traffic but are equally as important. Does the last product page load as fast as the first or second one? Do some categories perform better than other? What happens in the shopping cart — is the site laggy when it tries to process a user’s input information? Basically, where does the site trip up that could affect the buyer’s journey and deter them from fulfilling their purchase? Don’t forget about load and performance testing.
  5. What happens when you abandon the site and come back? How much progress does the page save and for how long? What about if the page is reloaded? Will someone be logged out or have their cart emptied if they leave for a few minutes? You have to consider the fact that not every user will have the same consistent experience with your application from beginning to end. They might view a product on multiple devices or keep the tab open while they check your competition, and you would hate to lose them when they come back to buy because you haven’t made it easy enough to pick up where they left off.
  6. What could be better from a usability perspective? You know what they say — if it’s not broken, don’t fix it. Except, this isn’t necessarily true when you’re talking about developing and testing a web application. Just because you don’t find a bug in your exploratory tests, doesn’t mean there’s no feedback to give the developers. Consider not just how to fix the application, but what would make it more intuitive for your users. Could the navigation be in a better place or the contact information easier to find? Are there design components that could be more appealing and is the site accessible to a broad range of users? Is there a to make searching for specific products easier such as different a filter? Usability testing will assure your website remains a popular destination.
  7. How functional are different elements? It takes a testers eye to look beyond just the surface of the website to assess whether it really works the way it’s supposed to. Test search algorithms and results. Experiment with different filter combinations. Check calculations and confirm results. Any time a user has to input information or interact with the website, you should be testing whether or not that the application is responding correctly.
  8. What happens after a customer has completed their purchase? You’ve made it through and impressed (or avoided-annoying) a customer long enough. But you also want to make sure their experience is excellent from beginning to end so that they come back next time. Make sure that the page redirects to something thoughtful so that the customer understands their order is being processed. Give them options to review and cancel their order, contact customer support, and access tracking information. Each of these components needs to be tested to make sure that data is accurate and the functions work.

Filed Under: ecommerce Tagged With: ecommerce, live testing, manual testing, mobile testing

Getting Started with Manual Testing

March 17, 2017 By Alex McPeak Leave a Comment

Manual Testing
Manual Testing

Manual testing is a must

What exactly is Manual Testing?

When any tester, developer, or QA team begins a functional or performance testing process for the first time, they’ll likely start with manual testing. Regardless of the size of the company or web application, manual testing is an essential component of any testing strategy because it gives deep insight into the user experience.

This is because manual testing is done completely by human hand, without the assistance of automation tools or scripts of any kind. For this reason, manual testing is the ideal way to assess the details that are relevant to the end-user including how the application functions, how well visual elements render, and other GUI qualities.

Manual testing is specifically valuable in exploratory testing or other test cases that are only run once or twice and ensures that you discover bugs and other issues early on in the development cycle. These tests are an optimal environment for incorporating human observation without an urgent need for the speed and in-depth accuracy that’s characteristic of automated testing.

Manual testing also allows testers to build test cases, which are needed for automation so that you can repeat those actions. No matter how much time you’re willing to put into manual testing, it’s the first step to creating a script that can be run in parallel in other browsers, or many times over.

For this reason, it’s crucial to understand some of the stages and techniques before executing manual tests.

Types of Software Tests

These stages of testing are sequential, starting with the smallest component of the application and progressing to make sure that all parts are working together.

Unit

Unit testing is at the bottom of the testing pyramid because, as the smallest testable part of an application, it focuses on one individual function within the entire application. Although this type of test is better performed in an automated manner – it’s still the base of our pyramid and most plentiful type of tests out there.

Clicking a button to make sure it takes you to the correct destination would be a unit test. For example, making sure that the “Next page” button will actually take to you the next page.

Integration

Integration testing is the next step after unit testing and is the process of integrating multiple units to test them together. This lets testers observes how different components of the software harmonize to ensure functionality.

An example of an integrated test could be your applications log-in process. Now, you’re testing whether entering a username and password and clicking login will bring you to the Welcome screen. These types of tests match two or more unit tests together.

It is important to have an inverse amount of tests as you go down the testing pyramid. This allows for easy debugging and error locating, speeding up both testing and development. Have unit tests along with integration and other test lets you diagnose the exact location of bugs.

System

A system test refers to testing completely integrated software in order to evaluate that system meets the requirements of the other hardware or software systems that it’ll come in contact with.

This is actually a series of multiple tests including end-to-end scenario testing, verifying inputs and output and testing the user experience. There are also multiple types of system testing such as stress, regression and functional testing, the uses of which will differ from tester to tester depending on available time and resources.

Again, all the components that would be tested in a system test have already passed integration testing. System testing after is necessary for testing the design and behavior of the software.

Acceptance

Acceptance testing or User Acceptance testing is the beta testing of the software performed by actual end users. This, of course, is to bring the product into a real life environment to see how well it measures up to a user’s standards in case the tester misses an essential user function, specification or request.

As you can see, manual testing requires a thorough and sequential completion of these stages in order to properly measure a software’s functionality at different points in the testing process in order to target or fix various areas.

Black Box vs White Box Testing

Black box testing and white box testing are two techniques of testing that can be applied to the above stages.

Black box testing is where the internal structure of the software being tested isn’t known to the test, while the internal structure is known within white box testing.

Black box testing is the most common for testers because they don’t have to be expert in coding, making it easier and simpler to execute. It’s also quicker to do because testers only have to look at the GUIs that users are interacting with and looking at.

However, black box testing has restricted coverage in this way and can only evaluate a percentage of every possible test case or scenario, rather it just considers inputs and outputs.

In comparison, white box testing is a little more in-depth and looks at the programmatic structure of the system. In this way, it allows the developer or tester to spot errors and bugs quicker and more accurately and provides a more thorough insight.

Keeping Manual in Your Testing Strategy

While the testing environment is largely moving to automated testing as today’s developers focus on a strategy that embodies agile CI, there will always be a very specific and important place for manual testing. Those hoping to move towards 100 percent automation will find that their results will fall short from complete and efficient web development.

Instead, getting to know your code through the methods and techniques of manual testing will prove to be invaluable when it comes to present and future web testing practices.

Filed Under: Manual Testing Tagged With: exploratory testing, live testing, manual testing

Try CrossBrowserTesting

Everything you need for testing on the web. Browsers & Devices included.


  • Grid In The Cloud
  • Simple CI Integrations
  • Native Debugging Tools
  • Real iOS and Android
  • 2050+ Browser/OS Combinations
  • Intuitive REST API

Start Testing Today

Want Testing Tips?

Want the latest tips & strategies from industry experts right to your inbox? Sign up below.
 

Join Over 600,000 Testers & Developers And Start Testing Today

Learn more Free Trial

Features

  • Live Testing
  • Selenium Automation
  • Automated Screenshots
  • Screenshot Comparison
  • Local Testing
  • Real Devices

Solutions

  • Automated Testing
  • Visual Testing
  • Manual Testing
  • Enterprise
  • Internet Explorer

Resources

  • Browsers & Devices
  • Blog
  • Webinars
  • Integrations
  • ROI Calculator

Company

  • About Us
  • Careers
  • Plans
  • Terms of use
  • Security

Support

  • Help Center
  • API Docs
  • Schedule A Demo
  • Contact Us
  • Write For Us