Search This Blog

Monday, November 6, 2017

Hunger for Perfection

Hunger for Perfection
Word Perfection means "the action or process of improving something until it is faultless".It means to say that an act or rather an action performed by an individual or a group of individuals involved in something and doing that repeatedly in the right manner will achieve what is being referred as faultless. But are we able to achieve this act yes we can any act done with dedication and focus can achieve this. 

Perfection ensures that the anything that act or to be performed is being done in that right manner with proper rules and regulations. Perfection ensures and delivers Quality and Standard improvement. When we will look at the Business Prospective it gives you happy consumers which will ensure loyal consumers who buy only because they are assured that the standard and quality of the product they buy is their perfect choice.

Continuous Improvement 
To attain Perfection we need to take care of so many aspects of business and foresee things before they come and address those issues so that your business and your relationship with your consumers is complete and flawless. For that matter its not only for this relationship of business it is for every individuals we are connected to. If we take care and address issues, respond and foresee things am sure not only in business but in every relationship we will be very successful.

So what it takes to be a Perfectionist, you are either scolded or hated as you expect everything to be in order with proper rules and regulations adhered to the act that we associate with.I personally experienced this as i try follow the rules and regulations and the result being bullied and pushed and laughed but that didn't stop me from shying away from my duties and responsibilities. 

Even in our daily walks of life in the road out there when we travel how many of us as actually followed the Traffic Rules. Few Traffic Policeman standing and whistling will not make it proper it is us within us to do it. Pledging ourselves that i will drive safely and properly i will follow the traffic rules will make things Perfect. That is  what will make our lives a place to live.

Perfectionist as described in Wikipedia is that " Perfectionism, in psychology, is a personality trait characterized by a person's striving for flawlessness and setting high performance standards, accompanied by critical self-evaluations and concerns regarding others' evaluations". 

So Flawlessness is what we all are striving towards. Are we convinced to accept anything in life other the best in terms of clothes,what we drive ,how we live , how we travel etc., So for us it is very important that we get the best of everything. So Aren't we all Perfectionist then. 

Yardstick of Quality
Steve Jobs was a Great Entrepreneur his attitude towards perfection is mind blowing and the products he invented are so as well. Today Apple stands as the worlds best company in terms of Technology  and devices they make. How did he do it? He focused on what is to delivered he saw himself as a customer and his act of perfection is what made him do this. Whatever he learnt in life either it is learning the calligraphy or design of first iPod (the initial design of iPod was rejected by Steve Jobs as it was found to be too bulky). His vision and commitment to perfection is what has made Apple stands completely innovative and different from the rest of the companies in the World.

But is Perfection good yes of course it is good and we discussed on this above as well but can we find the same in individuals . Yes, I personally feel that the day you follow the act of perfection you attain divinity. But in practical life not all five fingers are the same and so is human beings as well. Not all people are perfect and not at all minds of the people are perfect . The Act of Forgive and Forget is important for us to maintain any relationship and as they" To Error is Human , To Forgive is Divinity"

So to Conclude i would say we should not look for Perfection alone we should strive for Continuous Improvement in everything we do and individually we need perform be a better person than what we were yesterday. And we focus and follow this am sure in any business or anything you perform Success will always be with you.

Wednesday, October 25, 2017

Artificially Testing

My 50th Blog

Hello Readers very happy to share with you that i have completed my first milestone of writing 50 articles in my area of interest.On this special occasion today i have written on a very interesting topic of Artificial Intelligence with Software Testing. Read On... 

It has been a very big learning curve for me. Thanks to all who have been part of this journey learning and unlearning and this journey of knowing and sharing will go on... thanks to all. 

Monday, October 23, 2017

Software is Insanely Smoking

 Smoke vs Sanity

Smoke Testing 
Smoke Testing is the initial of testing which is basically done to ensure that all the basic functions of an application is working fine. Smoke Testing is also called as a Build Verification Testing shortly called as BVT. A Set of Test focusing on the Core Functionalities of the application is run along with its test cases is executed on every new build to verify that  the build is good enough to proceed in testing .This type of testing is very essential to perform in the early stages of Testing as it identifies the bugs or issues that are inside the code. The results of this testing is used to decide if a build is stable enough to proceed with further testing and thus reduces the time and cost of Testing. 

Sanity Testing is usually an unplanned activity done with a unscripted approach when we do not have much time to test. This type of testing is done to ensure that the basic menus,commands,functions etc are working well after a small change in the code. It helps to identify the dependent missing functionalities. It is narrow way of testing where it focus on one or few functionality to test to ensure that the application or a software is working fine.

Difference between Smoke and Sanity 

Difference Between Smoke and Sanity 
Smoke Testing is a methodical way of execution of testing where we have a set of test cases written for it and executed whereas Sanity is a unscripted rather non documented approach of testing where we execute the act of testing without any test cases to execute.

Smoke Testing is done in the initial stage of testing when the build is deployed in the Test Environment to ensure that Build given for testing is working fine to proceed further on testing while Sanity Testing is done in the later stage of testing .

Smoke Testing is performed on end to end testing to ensure that stability of the application where as Sanity Testing is performed for a particular part of the system or component of the application to ensure that the fix or code change is not affecting the behavior of the system.

To Conclude on the above topic i would say in the Industry both these words are often confusing use them wisely according to your needs.

Lets Explore One More Time


Regression Testing a testing which has lot of significance in ensuring that the application is working well even after a code change or enhancements. Generally this type of testing plays its role after the functional testing is done. Its more likely done when after a patch for a code is fixed. Regression Testing is done to ensure the application as whole is working fine.

Regression Testing 
Regression is an act or an instance of going back to an earlier and lower level especially of intelligence or behavior the regression to really childish behavior that boys often undergo when put in large groups.

So here in Software Testing, Regression Testing is a Verification Process where we go back to the Software Application that has been changed by the act of a patch or fix due to its already existing program which put together should make the application work properly as it was functioning before.

Guru99.com defines Regression Testing as 

"Regression Testing is defined as a type of software testing to confirm that a recent program or code change has not adversely affected existing features."

ISQTB Defines as :

When any modification or changes are done to the application or even when any small change is done to the code then it can bring unexpected issues. Along with the new changes it becomes very important to test whether the existing functionality is intact or not. This can be achieved by doing the regression testing.

Difference between Regression and Re-Testing 

There is a difference between Re-Testing and Regression Testing. Though both has a common approach verifying the application after a fix in a code is done.
REG vs ReT

While Re-Testing tests the functionality to ensure that the code is fixed and no bug is comes back. If the Code works well then it is closed else if the defect raises its opened again. Here we focus more on the Failed Test Cases. 

But in Regression testing, verifying your software application when the code is changed and ensuring that the this code is not affecting the application as whole . Here we focus more on the application as a whole whether the new code is not affecting the other areas of the software.

Regression Testing is useful when
Regression Testing Useful Areas
  • Code is modified due to change in requirement
  • Any New Feature is added to the Application
  • Any Performance issue and there is a fix for it 
  • Resolving Bugs and Defects Raised to ensure a quality software  delivery.

Regression Testing is a very effective strategy which actually helps big organisation save lot on time and money. As bug fixes cost a lot and an effective Regression will help companies in reducing this cost and produce a quality product.

Friday, October 20, 2017

Let your Case Begin on Testing!!!

                                               Is Test Case Necessary

Few days back an interesting topic came in for a discussion in one of my LinkedIn group. Where a topic on Test Case came into light on "Is Test Case Necessary" Though i have replied to it . I felt i will not do justice to it if i not talk in detail about this topic so hence.

Here we go...

What is a Test Case?

My Definition a Test Case 

Test Case is a Step by Step Approach of achieving our expected result by fulling the functional requirements of a Customer.

Let us now see definition of a Test Case from Various sources

ISTQB Definition of a Test Case:

A test case is a document which consists of a set of conditions or actions which are performed on the software application in order to verify the expected functionality of the feature.

Guru99.com Defines a Test Case:
A Test Case is a set of actions executed to verify a particular feature or functionality of your software application.

If you see the above two definition both describe one common point is that a Test Case is a set of actions or condition to verify the requirement of a customer where in the functionality is been given importance.
Test Case a Right Approach

Yes - functionality is a very important in order to ensure the smooth operation of an application. Functionality is a the quality of being suited to serve a purpose well practically.  

So let us come to the topic now. Is Test Case Necessary ... Yes according to me it is a very important aspect of Verification where we Validate the very existence of an application and ensuring that it works functionally. 

So What exactly a Test Case Contains... There are so many ways the test case template has evolved over a period of time .

In General a Test Case Contains

Test Cases 
  • Test ID
  • Test Case Scenario
  • Test Steps
  • Test Data
  • Expected Result
  • Actual Result

The above are the basic for any testing but there is no had and fast rule for this in how a test case template should be to me it is very important u have your Scenario / Situation i would say defined well and to achieve them write steps for it and have your Expectation on what will be the out come for this situation and record your actual result. If you can derive this i would say you are in right path of Test Case execution. You name the heading in any name for your Test Case Template but ensure that the above basic are available to make your Test Cases effective. Thus to conclude to me a Test Case indeed plays a very pivotal role in Software Testing and without which there will not be a correct approach or rather right way to ensure the actual requirement and functionality are compared.

Thursday, October 12, 2017

Mobile Testing ...Get Connected

Mobile Testing an interesting topic to discuss about a device that has become a part of our daily life the "Mobile phone". Its pretty much a small world inside for every person who has a Phone. Mobile Phones has come a long way from being a phone with keypads with small screen and also heavy to carry today phone's are advanced technically with touch screen , Internet enabled which makes an user to do everything right paying his bills to check his email and every individual is well connected.So in this advanced version of the current Mobile Phone its very important it delivers what it is designed for. 

Mobile Testing is split into Mobile Application Testing and Mobile Device Testing. So lets dig more on what is Mobile Application Testing is all about in brief then we will discuss on Mobile Device Testing. 
Application inside the Mobile
Applications inside a Mobile  
Mobile application testing is a process by which application software developed for handheld mobile devices is tested for its functionality, usability and consistency.The applications that work on mobile devices and their functionality is tested. It is called the “Mobile Application Testing”. Even in the mobile applications, there are few basic differences that are important to understand:
a) Native apps: native application (native app) is an application program that has been developed for use on a particular platform or device. Because native apps are written for a specific platform, they can interact with and take advantage of operating system features and other software that is typically installed on that platform.( As Defined in whatis.com)
Native - Hybrid- Combination 
b) Mobile web apps : Web apps are not real applications; they are really websites that, in many ways, look and feel like native applications, but are not implemented as such. They are run by a browser and typically written in HTML5
c) Hybrid apps are combinations of native app and web app: Hybrid development combines the best (or worst) of both the native and HTML5 worlds. We define hybrid as a web app, primarily built using HTML5 and JavaScript, that is then wrapped inside a thin native container that provides access to native platform features.
When Testing a Mobile there are certain important areas which we need to look into to ensure that the application is working fine.They are as below:

  • Application should be able to initialize the process of a proper download from any place it is stored. More Precisely from any Store.
  • The Application devised for should be able to perform across various platforms like Android, IOS, SymbianWindows Phone, and BlackBerry (RIM). Each operating system has its own limitations.
  • The Mobile Phone should be able to take up a phone call when we are working on a application.
  • Mobile devices should work well with different screen input methods (QWERTY, touch, normal) with different hardware capabilities.
  • When Testing a Mobile Application there different ways of approach one is Testing on Real Devices and the other Testing on Emulators.Though both approaches are perfect There are certain limitations as well when we test in emulators as they often miss issues that can only be caught by testing on real devices. Since Real Devices are expensive to purchase and time consuming to use for testing we tend to go back to emulators.
We execute various levels of Testing in Mobile Application which includes:
  • Functional
  • Performance
  • Interrupt 
  • Cross Browser
  • Installation
  • Lab Testing 
  • Memory Leakage
  • Certification
  • Usability
  • Security
  • Location
  • Load testing etc., 
The above we discussed more on what is mobile application testing is all about now let us learn more on what is mobile device.

Mobile Device Testing 
Mobile-device testing involves a set of activities from monitoring and trouble shooting mobile application, content and services on real handsets. Testing includes verification and validation of hardware devices and software applications.

Mobile Device Testing is done to ensure that the function of the devices are working as per expectation and in this type of testing both the hardware and software are tested to ensure that both are compatible to each other. A Mobile Device Goes through various levels of testing like the Unit Testing, Factory Testing and finally the Certification Testing.

Unit Testing

Unit testing is a test phase when portions of a mobile device development are tested, usually by the developer. It may contain hardware testing, software testing, and mechanical testing.

Factory Testing

Factory testing is a kind of sanity check on mobile devices. It is conducted automatically to verify that there are no defects brought by the manufacturing or while assembling. It mainly includes the following testing −
  • Mobile application testing
  • Hardware testing
  • Battery (charging) testing
  • Signal receiving
  • Network testing
  • Protocol testing
  • Mobile games testing
  • Mobile software compatibility testing

Certification Testing

Certification testing is the check before a mobile device goes to the market.
The Future of Technology is moving towards more into Hand Held Devices and in this Mobile Phones plays a very important role. And for the Software Testing Professionals a new venture of Opportunity to look out and to work on.

Tuesday, October 10, 2017

Functional Testing -- Is all Working Fine

Functional Testing is a "software testing process used within software development in which software is tested to ensure that it conforms with all requirement".The Actual Requirement that the customer requires is that being developed correctly is what a Functional Testing. It actually verifies and validates the output against the Requirement of the customer. 

For this it approaches a step by step method called test case.A Test case again to define them is a step-by-step approach of verifying the Software or rather to be precise we can does it in par with the Business requirement of the Customer.

A Series of Tests is performed in a Functional Testing to validate the products 
behavior,feature by feature, using a wide range of normal as well as erroneous input data. This can involve testing of the product’s user interface, APIs, Database, Security, Installation, Network, etc.

Functional testing is a way of checking software to ensure that the Application/Software has all the required functionality that's specified within its functional requirements.It also checks the software for usability meaning "a software can be used by specified consumers to achieve quantified objectives with effectiveness, efficiency, and satisfaction in a quantified context of use" as Wikipedia says.

A Functional Testing not only checks for the usability like by ensuring that the navigational functions, are working as required it also ensures that the basic functions for which the system is proposed works properly making it ready for a quality release of the software.