To achieve 100% automation is a pure myth. You will need some % of (manual) testing along with automation in order to deliver a successful project.

  1. Do you think glorification of test automation is gaining more momentum rather than implementing it?

Everyone is talking about test automation these days without actually realizing the real need for it. By “real”, what I meant here is: first, we should analyze whether we really need automation for a given project or not? Do we have skilled resources to work on the project? Do we have the required tools/technologies and most important is the budget estimation in place? Does implementing an automation framework bring ROI to the organization? Some organizations are targeting to achieve 100% automation which does not look convincing to me. To achieve 100% automation is a pure myth. You will need some % of (manual) testing along with automation in order to deliver a successful project.
2)When it comes to testing automation, what has to be done to make sure that it’s effective?
Based upon my experience and knowledge of test automation, here are few tips on how to make it more effective:

  1. Segregate test cases that can be automated. NOT all tests can be automated. So, in order to have effective test automation, first, we should decide what can be automated.
  2. While we are writing tests or scenarios, analyze it parallel if those are GOOD candidates for automation.
  3. Tests that are manually executed (time-consuming), select them FIRST for automation.
  4. Focus on using quality Test DATA for your tests.
  5. Prioritise your tests.

3) Do you think working from home is a safe option considering the vulnerability of computers and networks we use for our domestic purposes?
Since the Govt. has declared the norm of Working from home, we are more prone to cyber-attacks. As an experienced professional, one must understand the security and vulnerability of computer system and network devices.
We should be taking precautionary measures in order to prevent a security breach. When we are working from home, the probability of getting the system attack/data breach/data decryption/data security is at its peak so one must be attentive to avoid such a threat.
So, we should use personal computers to do personal work rather than company’s devices. A basic level of security can be achieved with small steps in a day to day life.
4) what are the challenges you face when it comes to test automation?

  1. You should have strong knowledge of framework design and implementation.
  2. You should be familiar with the programming language core concepts in order for you to understand the framework built and design. For example: If automation framework is built using Java as programming language, then you must know about OOPS concepts.
  3. You should be aware of how to use design patterns in a specific automation project.
  4. How to deal with different exceptions for example: pageLoadTimeout or ElementNotfoundException?
  5. Not all resources in the team have the same level of knowledge on the application.
  6. Thorough product understanding is a must.
  7. Effective communication and collaboration in a team
  8. Sometimes, after using the correct X-Path, unable to locate an element.
  9. To handle pop-ups and alerts in web-based automation projects.

5) What’s the difference between a good test and a bad test?
A good test should be reliable, easy to understand, crisp, and independent from each other. Good tests always add value to a project. Good tests can be automated considering the qualities of the test. Good tests are a result of critical thinking and deep analysis of a given user requirement.
Whereas Bad test which consumes a lot of time but does not provide any value to a project. These are unnecessary lengthy steps and can’t be automated. This does not convey the purpose of the test. Not understandable and not readable as well.

In performance testing, we are focusing to find the bottleneck of an application, but in performance engineering, the focus is to reduce those bottlenecks and improve the performance of that application.

Do you think choosing the right metrics is important for performance testing efficiency?

Any testing process is meaningless without a goal, metrics can often act as the goal when it comes to performance testing. When it comes to performance testing goals the focus should be on metrics like throughput, response time, Latency, Error percentage, etc.
By performing the performance testing, based on these metrics, we can assure the performance of a web application or an API, or any system.
if a tester is not able to identify the right metrics in the early stage itself, it will be hard to reach any consultation and to put an end to the testing process.

What according to you is the biggest performance testing hurdle at present and in the near future

Definitely, the environment setup process,  less information about the expected requirement and the hardest one, not having a clear picture regarding the goal of the performance testing.

Cloud computing is becoming prominent in software testing. What are the things that need to be taken care of while performing tests in a cloud platform?

 

  1. The environment setup
  2. The cloud environment knowledge of that QA engineer, who is responsible for the testing process
  3. Knowledge about the working principle of cloud architecture
  4. Failure due to one user action on the cloud should not affect other users’ performance
  5. The data integrity while performing data-driven testing.
The shift from performance testing to performance engineering. What’s your take on this?

In performance testing, the focus will be on finding the bottleneck of an application, but in performance engineering, the focus is to reduce those bottlenecks and to improve the performance of the application. So, as a QA engineer,  finding the bottleneck or any performance-related issue is not enough nowadays, we must learn or think about how should we overcome those issues.
Moreover we, the QA engineers are responsible for the quality of the application that will reach the end-user.

Why stress testing is important in the current scenario?

In the real-time scenario, we’ll not be able to assume the user traffic of an application, it may increase, decrease or remain constant over a certain period of time
To generate that kind of real-time scenario we must perform spike or stress testing to ensure that the application has what it takes to deal with the sudden change in the traffic volume.

“My mind-mapping technique helped in identifying the requirement and create a test scenario to automate the scripts, which was also helpful to coach my team about the whole setup”

Risk-based testing also means having an idea about what to test, How to test and in what order to test. Do you agree? Do you think that risk-based testing is the next big thing?

Ans: Yes test has to be executed based on the risk priority. It is important to have risk analysis in each phase of the project in order to identify the dependencies and assumptions, to me Risk Analysis is a big thing and it should start from the requirement phase itself to avoid the late changes in requirements of projects

Testing happens in a chaotic environment. Having a peaceful mind is absolutely necessary to work efficiently. What’s the best way to achieve it?

Ans: It is important to have peace of mind when it comes to working despite any field that you are in. The best way to achieve it is through acceptance. You need to understand that there are some things that are beyond your control. Understand and act accordingly.

As a QA lead what’s that one thing that you find challenging?

Testing software with limited knowledge available about a project or a product is something I find challenging. I will tell you an incident which I personally find challenging as well as proud of. I was once deployed on a project as a replacement. There was no documentation about the previous tests and I had to deal with someone who is reluctant to share information. What I did was, I plotted with whatever meager data that was offered to me in the form of mind mapping. Later I would work on it and would link everything with the screenshots I took from the project. As a result, I was able to create a new document for me and the team. The document explained the ultimate goal of the project easily.
Whenever I had doubts popped up in me, I cleared it right away. My mind-mapping technique also helped me to identify the requirement and create a test scenario to automate the scripts, which was also helpful to coach my team about the whole setup.
The project was a huge success.

Do you think that testers should prove their value to customers beyond test cases? At the end of the day, it’s all about finding issues that might disrupt the smooth running of the product in the market. Do you agree?

In my experience testers create test cases, test scripts and other test-related documentation with only the short-term view in mind, there is no detailed documentation about the test and testing
I always use mind mapping which helps me to identify my requirements and define my test cases and test approach. This helps me think beyond test cases and find issues that are not defined in test cases

Companies are nowadays hiring remote testers in huge numbers? Do you think that it’s healthy to practice?

Advantage :
Many people work best in their own space, with peace and quiet.
Working remotely allows employees to spend less time and money traveling to the office, which saves a lot of money
Also, for the present situation for which the country is facing,  this is the best way to work and collaborate with different teams. You can always find the best talent to get the job done, no matter where they’re located.
Disadvantage
It is hard to build the company culture, communication and Collaboration will be harder but you can always invite them weekly one day to meet the team Or do video conferencing, etc
However, disadvantages cannot rule out the fact that a diverse talent pool can only be created using remote testers. Getting stuck with an inefficient team is the worst thing that can happen to any project.

we need to understand that everything cannot be automated and we have to gauge which Test Cases can be automated.

1) Cybersecurity testing is intensifying. How can a software testing company leverage this situation?

As we are moving to a world that’s shrinking due to the Internet as more and more number of people are digitally connected than ever.
The conventional way of paying utility and other bills have been taken over by digital payment where the user can pay his or her bills at his ease.
This has made our life easy, but with such conveniences, there are challenges such as hacking, phishing, etc. where the users’ vital information is stolen for many malpractices.
This is where the Cybersecurity companies have a vast opportunity of testing the applications and systems for Cyber Security.  

2) cross-functional collaboration has become a necessity. Those who are not part of it is in peril. Do you agree? Is it hard to find testers who can keep up with DevOps?

Cross-functional collaboration becomes really important reason being the importance of various departments required to work in unison for a product to be market-ready in minimum TAT (Turn Around Time)
Let us take an example from Software Testing where the maximum effort is to make sure that the best quality product is released in the market, to achieve this the Software Testers have to work in Unison with the dev, Deployment.
Once the QA team has prepared the TestCases  they need to share it with Dev team so that Dev team can be sure that the product they are building is correct (Are we building the Product right ?: Verification)
The world is eventually moving to the DevOps and its just some years down the line that there will be very little to No Automation testers and everything will be taken care of by DevOps.
Automation Testing will become a subset of DevOps.
Yes, it’s hard now to find testers who can keep up with the DevOps, But for sure top pyramid of Automation testers will be there into Devops and in coming future, there will for sure more DevOps personnel available.

3) Every organization has high hopes for automated QA but fails to do achieve so? what would be the reason?

We need to first understand where Automation Testing comes into the picture. Automation Testing is done on an application that is stable and is done to make  regression testing easier. Why it is not done just after the first screen is ready is because there might be many changes that might come in the future and thus creating scripts on changing windows will make a lot of effort for the maintenance of scripts.
Also, we need to understand that everything cannot be automated and we have to gauge which Test Cases can be automated.
If an organization wants to have its regular daily activities to be automated then Robotic Process Automation (RPA) is way forward. Due to RPA, many organizations have been able to automate their day to day activities and thus were able to save costs incurred otherwise. Also due to RPA, there had been an improvement in the quality of work delivered.

4) What’s the most effective test data management strategy?

The best way according to me is

  • By creating our own set of Test Data.
  • Taking a replica of the production Test Data by querying the production DB.
  • Go for comprehensive test data for non-functional testing

5) Websites that do not have super-fast loading speed, supreme accessibility and efficient interface are discarded by the public. owing to the same, do you this is the golden era of usability testing? if it is, what’s the best and effective way to perform the process?

Usability testing has helped business like anything. A recent survey by IBM has revealed that if your invest a dollar in usability testing your will get in 10 or 100 folds in return.
Effective methods to do usability testing

  • Hallway testing:
  • Remote usability testing
  • Expert review
  • Automated expert review:
  • A/B testing:

 

Human involvement will never fade away because automating everything is not feasible

1) Many reports suggest that RPA robots often break. is that the biggest problem in accepting RPA?

I would classify the issue as one of the reasons, but there are other reasons too. Reasons such as complications and failures in testing complex applications, lack of big community, blind following of traditional tools to avoid migration cost, etc. also serve their part.
 

2) There are a plethora of tools available at the moment for test automation, will human involvement fade away or minimize over the course of time?

Human involvement will never fade away because automating everything is not feasible. For example, if a functionality requires just one-time validation, writing scripts for that functionality will be a waste of time. And also, to test the look and feel, human involvement is important. Validation of business rules is hard to automate in certain areas.
 

3) Will test automation gain unimaginable momentum in the future as security issues have become a huge threat for apps?

Yes, every industry is moving towards automation and same is the case of software testing industry. To make the shift easier, there are tools available now for covering both functional and non-functional requirements of software systems.
 

4) What’s the easiest way to perform test automation in DevOps

For CI/CD, I use Jenkins and I feel it is quite helpful because of having a big support community and the availability of various plugins and flexibility. If you view the matter from a broader perspective I firmly believe that both developers and test automation engineers have to work together for better test coverage.  if the test automation engineer has better technical expertise the whole process will become much easier.
 

5) What are the common UI test automation mistakes that affect catastrophically on a project?

  1. Selection of Element locators.
  2. Writing scripts based on just one platform.
  3. Framework selection
  4. Not maintaining object repository separately

 

Yes! Experienced tester helps But User testing is a combined process

1. User-based testing/UAT is gaining momentum at present. Do you think user-based testing is necessary or relying on experienced testers like you is the safest option?

 
– UAT has always been crucial and the most important activity in a testing lifecycle.  The most astounding benefit of UAT is that apart from measuring performance it can be also used to monitor the human interaction level or the engagement level of an app.  Talking about users, in a usual case, the app will be used by many people ranging from technical experts to people who don’t have an idea about how an app works. UAT can be used as a validation tool to make sure that an app has met its requirement specification and can be easily used any kind of users
Answering the second part, yes! “Experience” helps a lot in UAT. To be precise, you need experienced testers to carry out user testing smoothly. So it’s a combined process where user and the tester are equally important.
 

2.  Security threats are increasing day by day Unfortunately app development is not focusing that much on security. On the other hand, even OS is releasing security patches as a safety precaution. Do you think app development companies should give much more focus on security?

 
Users are the king and it is important to ensure that their data is secure in your app database. If you fail to safeguard user’s precious data, there is a high chance that it can be stolen or manipulated, injected with a virus or cloned to create a doppelganger of your app. ultimately you may end up wasting all your resources spent in development and end up ruining your business reputation. Thus app development companies should give more focus on security

3. Apps are now being deployed globally aiming at the market all over the world.
Owing to the same do you think crowdsource testing should be put to practice more or will it gain momentum in the future?

 
-True. We can also say that this is a current trend and future prospect of the mobile app market deploying globally for the world’s customers. Having already seen a huge growth in the crowdsourcing sector, it’s clear that the future holds even bigger and better possibilities for crowd testers.
 

4. When it comes to mobile app compatibility, developers would like to get feedback from testers since testers are more used to various Oss. As a seasoned tester, what advice would you like to give them?

 
An ideal condition for healthy app development would be
Developers and testers working together, Seamless communication between testers and developers and testers included in the very first of the project itself
When it comes to developing the compatibility factor of a mobile app,
Developers should always rely on testers inputs without hesitation and developers should ask for their feedback as much as possible because
1. Testers spend more time testing entire product so they have an added advantage of knowing the product better
2. Testers deal the app from a customer perspective. So they are in a better position in understanding the fitment of the product and the market
 

5. Since testers are used to various types of apps in a particular domain, do you think they can give proper advice to app developers regarding what will work and what won’t? If so don’t you think testers also need to perform the competitive analysis?

 
-Yes, testers can give proper advice to developers regarding what will work and what won’t. Talking about competitive analysis, there is no doubt that testers should perform the task of competitive analysis during their testing activities. The competitive analysis not only gives the amount of knowledge about the similar products in the market but also helps in identifying the strengths & weakness of our product