Friday, 13 April 2018

Cross Browser Testing in the Cloud



Anyone who has tested web application would understand the importance of testing a web page’s compatibility with different browsers and OS combination. This is a very important but time-consuming and costly affair. Considering the fact that there are hundreds of browser/platform combinations to test, you can very well imagine the infrastructure required to cater those needs. It is here that the cloud services come to our aid.
There are different cloud services which offer the multiple platforms that we require for our tests. We can choose one based on our requirement and perform our tests. In this blog I would like to give an overview of how we can do it.
There are many cloud services like TestingBot, Sauce Labs, etc. that offer cross browser testing solutions. Some of them offer automation tools while some offer manual testing platform.

Why choose cloud?

Cross browser tests demand heavy infrastructure, due to the need of different browser and OS combination and also different versions of the same browsers. Sometimes, it is a challenge for testers to downgrade the browser versions to check downward compatibility of particular software. These challenges can be handled by using clod services.
By using for a particular cloud service provider you can choose from a list of browsers available to test your website .Please see the figure below a screenshot from Sauce Labs:

Testing our applications on mobile is yet another challenge. With mobile technology galloping, the challenge of the test management team is to take into account of the Wirth’s Law. Cloud service providers are trying hard to tackle this problem faced by organizations.
By using the service provided by the cloud, you can perform your testing on any of the browsers manually. See fig below the screenshot for testing a website in Linux android 4.0:
The manual tests you perform are recorded and can be revisited at a later point in time.
For those who have difficulty in getting their selenium configuration done and then later maintaining the software, you can use the selenium offering by any particular cloud for your automation activities.





Challenges

Whenever you choose a cloud service provider, it is important to consider the performance of the cloud, so that the speed of your tests does not get affected. Also security of your data is of a major concern when you use a public cloud. If you intend to encrypt the data before sending it to the cloud, it means addition expenditure which has to be taken into account.
And most importantly the reliability of the Service provider is major concern for organizations. An unannounced disruption of service can nullify all the benefits that it offers.

Wrap up

So in view of the above mentioned points, cloud is well suited to browser testing, provided we do it in the right way.  After an analysis of the requirement (like infrastructure) of the company carefully, a test strategy has to be put in place. As the second step, a service provider has to be identified and then the tests have to be executed.


Tuesday, 3 June 2014

SOFTWARE TESTING USING CLOUD

Testing is an integral part of the software development life cycle and no product can be released to the market without testing it efficiently. Organizations often face various challenges like budget, cost for test, geographical distribution of users, deadlines, infrastructure etc. during the test phase. Cloud based testing could be one of the solution for these problems. In this blog I would like to explain how.

There has always been confusion between cloud testing and testing using cloud. Cloud testing is testing cloud applications but testing using cloud refer to tests which use the infrastructure on cloud for software testing.

Selecting the cloud service provider

Once the task of designing the test cases is completed, it is time to select a service provider. There are certain points that need to be kept in mind while choosing the service providers.
  •  The service provider’s configuration model
  •  The cost
  •   Service Level Agreement
  •   Disaster recovery Plan
  •  Security
Considering all the above points, you choose a service provider that best suits to your need and budget.


Setting up the infrastructure

After you decide on the service providers, it’s time you take a look at the infrastructure. There are certain crucial factors that need to be addressed when you decide on the cloud infrastructure.
  •   Reliability and availability
  •   Integration with the existing management tools
  •   Good User interfaces
  •   Scalability

Once you are sure you have everything in place it’s time you leverage the cloud servers and then start testing.

What kind of tests can be done on cloud?

Most of the conventional test activities can be done on cloud. But the most prominent one would be performance testing due to the high infrastructure it demands. Functional tests can be also be done on cloud especially automation and cross browser tests of web based applications. You can use the cloud services for acceptance testing and system integration testing as well due to the real time environment that it offers.

Challenges that need to be tackled

The lack of universal standards in terms of security, pricing etc. pose a big challenge for organizations when they chose cloud service providers. Also using the cloud services without proper knowledge and planning can sometimes incur additional costs, especially if you are opting for the pay per use policy.

Wrap Up


To summarize, testing using cloud can be beneficial to organizations if planned properly and executed carefully. Jumping to a big scale cloud based testing can be sometimes disastrous. Taking small steps first and scaling up would be the ideal process for the adoption of cloud based testing.

Tuesday, 25 March 2014

Mind Maps and Test Activities

In my previous post, I have described about mind Map and its usefulness. In this article I intend to discuss about how we can make use of Mind Map in our test activities. We can leverage the benefits that the Mind Maps offer, in many of our test phases like test planning, Test design, Problem solving,  developing tour during exploratory testing etc.

Plan your test using Mind Map

Test Planning is a phase when you plan your entire test activities for a particular release or a particular year/period. This is usually a large document in black and white. The Mind maps and its visual appearance can be put to use here. The whole planning activities can be depicted or drawn in a single sheet which increases the legibility of the entire document over the conventional approach.

Test design using Mind Map

The advantage of designing tests using mind maps is that the entire feature/functionality that has to be tested can be represented visually thereby giving insight into the various interconnections and hence giving rise to more test ideas.

Mind Map aids Problem Solving

Trouble shooting and problem solving have always been one of the major activities during the test lifecycle. One always does a brain storming session or discussions to analyze a given problem and then find a solution for it. In a conventional approach the brainstorming sessions and the results derived out of it are not structured and hence difficult to document. If you use a mind map during this process, you can structure out the ideas that come from the discussion even without losing the essence of brainstorming process. This document can be used for reference in the future also.

Gaining insight on complex subjects

Understanding and testing integrated scenarios and complex subjects are always a challenge especially during integration testing. Depict them using Mind map – give them a visual feel – and make your testing easy. It goes beyond saying that you can understand things more easily in pictorial form than in writing. Such mind map documents can be created for KT reference also.

Develop tours during exploratory testing from Mind Maps

Exploratory tests are talk of the town now. We understand the scenario and figure out which tour suits the best for it. If you have a Mind Map in place for a particular scenario, it would be easy for you to find out which is the best tour you can use for it.

To make it practical let me put all what I have said in a Mind map so that you can see for yourself.

Mind_map_for_testing