Deprecated: Function create_function() is deprecated in /home/qualit96/public_html/wp-content/plugins/revslider/includes/framework/functions-wordpress.class.php on line 258
Ali Khalid, Author at Quality Spectrum - Page 24 of 43

alikhalid

About Ali Khalid

This author has not yet filled in any details.
So far Ali Khalid has created 426 blog entries.

What is Compatibility Testing

By |2018-08-07T20:31:45+05:00August 7th, 2018|daily post|

How to do Compatibility Testing?

Wrong question, first let’s talk WHY compatibility testing.

We all know it’s meant to test our AUT’s UI on different front-end platforms (browsers, devices, OS etc.)

But it’s paramount to understand what creates the difference when running on different platforms

Let’s take a web app running on a browser for example,

It would help to understand the different components of a ‘browser’ and what portions are different

Each browser has a different ‘driver’, e.g. Chrome uses the Gecko driver.

This causes it to probably display a piece of JavaScript slightly differently than let’s say Firefox.

I’ve seen compatibility tests meaning “Run ALL tests on each device / combination)

Instead, just run tests which are checking the ‘JavaScript’ or ‘UI’ functionality of your app

The rest will be the same on every browser

#QsDaily #Automation #CompatibilityTesting #Testing

Jenkins just for Automation

By |2018-08-06T21:12:41+05:00August 6th, 2018|daily post|

Jenkins benefits even if you are not using a CI process,

Having the collective results in one place has a lot of advantages

Can get results from different tools (might be using separate ones for UI, API and unit level) in one place

Even for one tool, having all parallel runs in one place is a big blessing

Secondly can have a combined history of all the results (in Junit format used by Jenkins by default)

Thirdly, it allows for parallelization to your tests

To scale your automation, this is going to be a must

Number Four: One can centrally control the automation execution resources from one place

Having parameterization will make things even more easier

Evolution in Automation

By |2018-08-05T19:29:50+05:00August 5th, 2018|daily post|

Evolution in automation didn’t start just few years ago.

It’s been around for decades and here’s a crude synopsis:

> 1980’s: computers found their way into businesses.

> 1985: First wave of automation tools started.

> 1990’s – Advent of GUI bases OS like Windows 3.0, UI based automation tools start to pop up.

> 1995 onwards: In the race to dominate the UI automation market, eventually WinRunner dominated.

> Around 2000: New technologies like Java jump in; web takes off. New paradigm shift, from desktop to web.

> Around 2004: First version of Selenium RC introduced.

> Around 2005: WinRunner becomes QTP after the acquisition by HP.

> Web has built a lot of momentum, big push to support web UI automation started.

> 2007: Selenium Webdriver’s first version launched.

> 2007 – 2008: iOS v1.0.x released, Android v1.0 released, Mobile is born.

> 2008: Cucumber is introduced.

> 2009: Mike Cohn introduces the Automation Pyramid.

> 2014: Appium v1.0 is launched.

> Meanwhile mobile has taken off, cloud computing is picking momentum and CI/CD is spreading in the backdrop.

> 2016: Jenkins 2.0 released.

> 2018: Docker CE is launched.

* Dates are BALLPARK VALUES, just to give a crude timeline

hashtag#QsDaily hashtag#Automation hashtag#HistoryofAutomation

Automation ROI

By |2018-08-03T19:52:19+05:00August 3rd, 2018|daily post|

Automation ROI calculation

It’s not about calculating man hours saved

While automation has a lot of benefits,

Equating time spent by a tester to a machine running the test is not accurate.

Most people (including myself in the past) calculate automation ROI by man hours saved

Automation is provides only data points, they do not necessarily mean a failure.

A person has to interpret the data and conclude if we have a failure.

But then how does automation benefit us?

Some high level points in the linked article:

#QsDaily #Automation #ROI

Learning API automation

By |2018-08-02T21:24:40+05:00August 2nd, 2018|daily post|

How to learn API automation?

I’d follow the following steps:

1)

Don’t start with instaling an API automation tool

2)

Do NOT START with installing an API automation tool, learn what are API’s first then think about tools.

3)

Understanding how APIs / the HTTP request / response works. Lots of tutorials out there.

A video covering the basics linked in the comments.

4)

Test some sample APIs with POSTMAN.

That would give you an idea of how API calls are constructed and some common responses

You can try using this website as a sample:
https://jsonplaceholder.typicode.com/

5)

Look into learning RestAssured.

There are a bunch of courses out there on it. It can work in parallel with Selenium.

All you need to do is just add the Maven dependency –

P.S.
I’m using RestAssured with spring Boots!

#QsDaily #ApiAutomation #Automation #API

Automation is NOT just UI Automation

By |2018-07-31T19:30:50+05:00July 31st, 2018|daily post|

TestAutomation != Ui_AutomationOnly;

AutomationInTest == UI_Automation + API_Automation + UnitTests + WhateverYouCanComeUpWith; // This can be a long list

Any mundane test programmed to be checked through a tool would classify under automation

Since UI automation is the most widely implemented form of automation, it has become synonymous with automation

API automation is very valuable and should come directly under an automation engineer’s core responsibilities

Often since we start off ‘not as aware’ about the technology stack, we’re not really sure how API testing is done

Linked article stacks up UI vs API automation to illustrate the benefits.

http://quality-spectrum.com/ui-automation-vs-api-automation/

#QsDaily #ApiAutomation #UiAutomation #Automation

McCabe Code Complexity

By |2018-07-30T20:46:34+05:00July 30th, 2018|daily post|

Configurability and complexity go hand in hand

Thanks to Thomas J McCabe for proving this concept

I have to say, over time things do get streamlines when layers upon layers of abstraction are added

But while developing a product, or automation framework, the more configurable we try to make it, the more complex it becomes

For that reason, Thomas McCabe came up with this algorithm to calculate complexity

Embedded / IoT devices standards dictate to keep the McCabe cyclomatic complexity (Code complexity) below 30

It’s not a bad idea to calculate your code’s complexity level and stick to a limit

Makes life a lot easier down the road.

#QsDaily #Automation #CodeComplexity

Learn automation or go technical

By |2018-07-29T16:52:14+05:00July 29th, 2018|daily post|

Want to learn or hire for automation?

“To be technical or not to be, that is the question”..

While speaking at a conference I tried to outline the journey of a tester

While there were a lot of lessons to learn, the premise was to focus on learning the underlying technology

Familiarity with just an automation tool will not bring the results you want, for both, as an employer or as an employee

What you really are looking for is a technical background AND be able to program tests at the same time

#QsDaily #TestersGoingTechnical #Automation

DevOps and Tenacity

By |2018-07-28T19:56:34+05:00July 28th, 2018|daily post|

DevOps and Tenacity

Here’s the relationship..

The differential between the good and the great is Tenacity

The great know to hashtag#NeverBackDown / hashtag#NeverGiveIn, and that’s what makes them great

Success consists of going from failure to failure without loss of enthusiasm (Winston Churchil)

In delivering software there are a lot of unknowns, many things can go wrong, and you’ll never get it right the first few times

So, keep on improving and at an accelerating speed. For which you and your team must be tenacious

And to me that’s what DevOps is, keep improving at speed, keep going from failure to failure without loss of enthusiasm, or simply put ‘fail fast’

#QsDaily #NeverBackDown #DevOps #FailFast

Programming an important skill

By |2018-07-28T19:54:54+05:00July 27th, 2018|daily post|

I’m often asked how to learn automation

On of the most important skill is programming..

Firstly, often times this subject is not approached the right way

Folks attempt at ‘codeless’ or ‘keyword based’ automation at first

IMHO, while it might work for a finite scope and technology stack, generally it’s seen not to deliver

In the end, to do automation well you’ll have to program. there is no way around it

Secondly, learning programming is not about being good with Java or any one language’s syntax

It’s about building the right APTITUDE and the right ATTITUDE

With those two, the language becomes irrelevant. And without them your skill in any language will not create desired results

#QsDaily #Automation #Programming #TestersGoingTechnical

Go to Top