Skip to main content

Why Automation? Why Tools? Where is it useful?

Nowadays everywhere automation, automation, automation...

Most of the QA people talking about or willing to learn about UFT, Selenium, Webdriver, Appium, Perfecto, BDD, Cucumber, Specflow, etc...

Lot of common questions keep on asked by us...
1. Is manual testing replaced with AUTOMATION CODE?
2. Most of the recruiters asking Do you any tools in today's market? 
3. Is everything can be achieved by automation?
    and so on...

Let's discuss with the information we have and feel free to post your comments as well.

FACT:
Manual testing never replaced with automation code

UNDERSTANDING:
We cannot implement or code whatever a human tester will think or his intuitions: how a requirement should work.
Automation will be useful where;
1. Bulk set of repeated tests to be executed for each release
2. Test should be executed for multiple set of inputs
3. Validation or comparison kind of task with huge set of data
4. Data generation, etc.

Doing repeated tasks should be considered for automation and human tester should use his/her skill set to think about the ideas, solutions or suggestions for betterment of the application.

FACT:
Yes. Every tester should know some tools and coding stuffs.

UNDERSTANDING:
For example, you are executing some set of test cases which includes; UI navigation, UI values validation against database, some calculation and validation against some UI values, DB to DB comparison, web service response XML validation, etc.

Now think, if you know only pure manual execution but not VBscript or some excel macros or some DB queries. You will take 1 hour to complete first test and may be 50 mins for further tests based on your experience with the application.
What if you know some coding stuffs: you can compare the DB values using vbscript/macros with in mins and your execution time will be in 5-10 mins.
The same way if you know some basic automation frameworks like UFT or Selenium, you can write your own code (may not be with high level framework because you are going to use it locally) and execute it. Parallel you can think about the requirements and real-time scenarios on how the application should behave, how it is improved, what kind of possibilities end user will try, etc.

FIND PRODUCT FOR YOUR CUSTOMER INSTEAD OF FINDING CUSTOMER FOR YOUR PRODUCT - said by CEO of some company.

Also today's world providing lot of platforms and opportunities to work with and consumers are always interested in getting their job done ON THE GO through various channels. So by default testing with multiple browsers in desktop and mobile, testing with multiple mobile devices with different resolutions, manufactures, tablets and with different type of applications like Native, Hybrid, etc.
So automation is the only best solution to provide coverage for all type of possibilities without quality compromise.

And today's AGILE world willing to accept only the people who are trying to utilize the best possible ways for each and every type of tasks instead of doing it in traditional way. Sometimes pure manual testing will be best choice, sometimes different small unit testing frameworks and somewhere good framework tool set.

So utilize the technology to maximum and have fun !!!

Comments

  1. Thanks for sharing great information in your blog. Got to learn new things from your Blog . It was very nice blog to learn about Selenium

    ReplyDelete

Post a Comment

Popular posts from this blog

QTP - Object Identification - Prerequesties

While starting a new project or proof of concept or after new QTP installation, we would face the issue in identifying objects as QTP built objects like WinList, WebEdit, etc.; instead everything will be identified as WinObject.

Here are some steps to ensure you did the environment setup RIGHT before start automating.
Did you enabled required Add-ins only while launchingDid you selected "Record >> Record and Run Settings" - This should be based on what type of application you are working with
Windows app - Windows >> Record and run test on any windows applications. Web app - Web >> Record and run test on any open browser.
Did you tried to launch UFT/QTP and then AUT.If its web, ensure browser zoom level set to 100%Try disabling the protected mode in IE for web.Launch UFT and AUT using RUN AS ADMINISTRATORAlso see the Object Identification Methods if you are interested.

Change IE Browser ZOOM settings

Lot of UI automation testers could have faced this problem as we could change the zoom settings while operating manually for our convenience and forgot to reset to 100%.
But our QTP and some other related tools would operate the browser perfectly if browser zoom is 100%. So wee need to change the zoom before start to run the scripts. Its better to have a code snippet in our framework to change this zoom setting right?
Here we go...

1. We can simply change the Registry values before Invoking IE
Function ChangeRegistry Dim objShell Set objShell = CreateObject("WScript.Shell")  objShell.RegWrite "HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Zoom\ZoomFactor", "100000", "REG_DWORD" Set objShell = Nothing EndFunction This option is very useful. But in real time, lot of customers could have restricted write access to windows registry. So we can try other options.

2. Use IE COM object and Change Settings
Function ChangeIEZoom Dim intZoomLevel, objIE  intZoo…

Run JavaScript from QTP

Yeah, You can run your pure JavaScript from QTP using RunScript method. Lot of times, we are in need of firing events or simulating actions on web page which is not supported by QTP. At that time, you can use your direct DOM methods and directly execute your script on the web page from QTP like,
Dim MyPage, SearchBox Set MyPage = Browser("title:=Google").Page("title:=Google") Set SearchBox = MyPage.RunScript("document.getElementsByName('q')(0);") SearchBox.Value="testing"
'if objects available in frames, Set SearchBox = MyPage.RunScript("document.frames(4).document.getElementsByName('q')(0);")
'OR
Set objFrame = Browser("title:=Google").Page("title:=Google").Frame("title:=something")
objFrame.RunScript("document.getElementsByName('q')(0);") Also, you can execute by obtaining actual browser window object if you have IE app like, Dim IEApp Set IEApp = CreateObject("Internet…