Logo
blank Skip to main content

How to Use Cloud-Based Software Testing Tools: Apriorit Experience with BrowserStack and VirusTotal

QA

Switching from traditional to cloud-based testing can help your QA team significantly speed up the testing process, test on a broader range of devices and platforms, and better scale the testing environment according to a projectโ€™s needs. The trick is to choose the tools that best fit your project.

There are too many types of software testing that you can perform in the cloud to cover them all within one article. In this article, we focus on cross-browser and antivirus compatibility testing. We overview the two best automation tools for testing Apriorit QA specialists typically use โ€” BrowserStack and VirusTotal โ€” share our experience working with them, and analyze their benefits and pitfalls.

This article will be helpful for QA professionals who are interested in moving cross-browser and antivirus compatibility testing to the cloud.

Why move testing to the cloud?

As an outsourcing development company that simultaneously works on many projects, we often face a lack of physical test devices. Thatโ€™s why we began researching cloud-based testing services.

Cloud-based testing helps you assess the performance, security, and reliability of your software using third-party cloud computing resources instead of your own. Compared to traditional testing, a cloud-based approach provides organizations with lots of benefits including cost-efficiency, accelerated testing processes, and the ability to scale the testing environment.

Reasons for moving testing to the cloud

In theory, itโ€™s possible to move any type of testing to the cloud. Since weโ€™re focusing on cross-browser and antivirus software compatibility testing in this article, letโ€™s look closer at these activities first.

Cross-browser testing is a type of non-functional testing that analyzes how your website or web application works in different browsers and on different operating systems (OSs). The key challenge is to obtain the required test devices that run certain versions of browsers and OSs. The bigger the project, the more browser versions and OSs you need to check, and the harder it becomes to get real-life devices for testing your application.

Read also:
Cloud-Based Testing: Benefits, Challenges, Types, and Tips

Antivirus compatibility testing is another type of non-functional testing that involves checking your URLs and apps with popular antivirus programs to determine whether those programs:

  • Block the application from installing or loading
  • Influence the appโ€™s performance
  • Flag your URLs and executable files as malicious 

After trying different cross-browser testing tools, weโ€™ve settled on BrowserStack. For checking antivirus software compatibility, our specialists have chosen an easy-to-use online service called VirusTotal.

Cross-browser testing with BrowserStack

BrowserStack is a cross-browser testing tool that provides QA teams with access to more than 2,000 browsers and devices to test their web and mobile applications. The tool offers five services:

BrowserStack services

Hereโ€™s how to use BrowserStack for app testing: First, register on the official BrowserStack website and choose the service you need. After registering, simply go to the Live section of the website, select a browser type and version, wait until it loads, and start testing.

To use BrowserStack for mobile testing, go to the App Live section of the website and choose one of the following options:

  • Upload an installation file in APK or IPA format (for Android or iOS, respectively)
  • Upload your app from the Google Play Store (for Android apps)
  • Upload your app from the App Store or TestFlight (for iOS apps)

Related services

Specialized Quality Assurance & Testing Solutions

You can start with a free trial version to check whether BrowserStack meets your testing needs. Itโ€™s best to assess BrowserStackโ€™s services via Google Chrome because this browser has a dedicated BrowserStack extension.

Automated testing session in BrowserStack

 

Figure 1. Automated testing session. Image credit โ€” BrowserStack

Now, letโ€™s take a look at pros and cons of BrowserStack. After using this tool in our projects, we can outline the following benefits:

  • Extensive selection of popular browsers and OSs. You can test your application in different versions of Google Chrome, Microsoft Edge, Opera, Firefox, Internet Explorer, and other browsers running on Android, iOS, Windows, and macOS.
  • Large variety of mobile devices. As one of the best tools that support cloud-based mobile testing, BrowserStack provides access to more than 2,000 physical smartphones that use Android versions 4.4 through 11 and iOS versions 8 through 14. This is a significantly wider choice compared to other testing services.
  • Built-in automation services. You donโ€™t need to purchase and integrate two tools for manual and automated testing. This way, you can save your time and budget when setting up a testing environment.
  • Possibility to change geolocation for mobile applications. Some mobile apps provide different sets of services in different regions. Changing the geolocation on virtual devices helps you test all services from your current physical location.
  • Local testing. Transferring data to public resources such as cloud storage can be a security risk for projects that work with sensitive data. If you donโ€™t want to store data in the BrowserStack cloud, the tool enables you to test web and mobile applications hosted on private servers.

However, we also found some disadvantages to watch out for with BrowserStack:

  • Slow processing speed. Though BrowserStack allows for decent app testing on real devices, virtual devices process data much slower.
  • Limited device settings. If your application requires specific settings like automatic brightness or gyroscope configurations, you probably wouldnโ€™t be able to configure the testing environment in BrowserStack.
  • Inconsistent behavior with push notifications. During our testing activities, we noticed that BrowserStack devices donโ€™t always receive push notifications. Getting a notification can be critical for applications that alert users on home security, medical conditions, financial activities, etc. With inconsistent push notifications, itโ€™s challenging to test the alerting features of such apps.
  • Inconsistent behavior with geolocation data. Sometimes, devices canโ€™t determine their locations when receiving geolocation data. This can be an issue for location-based applications (taxi, delivery, postal, weather forecast services, etc.), since itโ€™s impossible to properly test location-critical services.
Pros and cons of BrowserStack

Despite some drawbacks, BrowserStack is an efficient tool that can help you test your applications on a number of browsers and devices.

Read also:
Top 10 Tools for Cross-Browser Testing

Antivirus software compatibility testing with VirusTotal

VirusTotal offers a simple way to test the compatibility of websites and Windows and macOS desktop applications (*.exe and *.dmg files) with over 70 antivirus programs.

Hereโ€™s how to use VirusTotal: just select a file on your hard drive to analyze it, or input a URL and get results. At this link, you can see the results of scanning a .dmg file. And in Figure 1 below, you can see an example of testing a URL.

VirusTotal scan results

Figure 2. VirusTotal scan results

 

We can outline the following advantages of VirusTotal:

  • Fast testing. VirusTotal helped us reduce the time for testing compatibility with antivirus software to several minutes. Before using VirusTotal, we needed up to three days to install all the necessary antivirus programs and configure a testing environment.
  • License-free testing. Thereโ€™s no need to purchase antivirus software licenses for real-life testing or to buy several compatibility testing tools. However, VirusTotal has a premium subscription with additional services for malware researchers and cybersecurity specialists.
  • Universal testing. VirusTotal covers all major antivirus programs including Avast, DrWeb, ESET, Kaspersky, McAfee, Microsoft Security Essentials, and Tencent. Also, VirusTotal can test both web applications and macOS and Windows installation files.

Read also:
Techniques for Estimating the Time Required for Software Testing

However, VirusTotal has some limitations you should be aware of:

  • False results. With some of our files, the antivirus program reported malware while VirusTotal didnโ€™t. Because of such false results, we still have to manually test some files and URLs when an antivirus program reports them. However, this doesnโ€™t take too much time, since false results are not that frequent.
  • Public access to uploaded files. VirusTotal saves all files uploaded by users and makes them available for download to all users with premium subscriptions. That’s why you shouldn’t use VirusTotal to test files with sensitive data.
  • Upload limitations. You can only upload files smaller than 32 MB to the VirusTotal cloud. To test files up to 200 MB, you need to request a special upload URL using the /file/scan/upload_url endpoint.
Pros and cons of VirusTotal

All in all, VirusTotal is a useful tool if you need to quickly test the antivirus software compatibility of websites and small files that can be uploaded to a public cloud.

Related services

Security Testing

Conclusion

Cloud-based tools for software testing allow you to overcome the scarcity of real testing environments and broaden your range of tested devices and applications. In this article, we showed you how to use BrowserStack and VirusTotal and discussed their pros and cons. These tools make cross-browser and antivirus compatibility testing faster and more convenient. They have some drawbacks, but you can easily compensate for them with some manual testing.

The Apriorit testing team has extensive experience testing desktop, web, and mobile applications. Contact us if your project requires testing expertise.

Have a question?

Ask our expert!

Tell us about
your project

...And our team will:

  • Process your request within 1-2 business days.
  • Get back to you with an offer based on your project's scope and requirements.
  • Set a call to discuss your future project in detail and finalize the offer.
  • Sign a contract with you to start working on your project.

Do not have any specific task for us in mind but our skills seem interesting? Get a quick Apriorit intro to better understand our team capabilities.