What can disrupt mobile app testing in 2025?

In STC 2019 conference, pCloudy hosted a contest “What can disrupt mobile app testing in 2025?”. I participated and won the contest. Below are my thoughts on mobile app testing in 2025:

Intelligent Digital Mesh:

Intelligent Digital Mesh is the mesh of people, devices, digital content and services. It will transform the mobile businesses and apps.

1. Intelligent apps use AI and machine learning to interact in a more intelligent way with people and surroundings. A recent example is Google’s Motion Sense feature in pixel 4 (radar-based technology developed by Google) where you can control apps on mobile by moving hand/fingers in air without touching the mobile screen.

Soon this will be adopted by mobile apps and the challenge will be how to test such features. Next is what if we implement AI/ML in Motion Sense tech where system learns the user gestures.

2. Conversational platforms (like Alexa, Google Assistant, Siri) when integrated with digital twins or AR/VR and mixed reality are changing the way that people perceive and interact with the digital world and devices.

3. Block chain, event driven when combined with AI/ML and Conversational platforms will make the testing further complicated.

We need to build strong AI/ML automated algo for mobile testing to test all the above mentioned stack.

Contest winners:

pCloudy Contest


Connect with me on LinkedIn | Download android app Software Testing – Full Stack QE and get the early access.


Note – Intelligent Digital Mesh is in the Gartner’s Top 10 Strategic Technology Trends for future from last couple of years.

Gartner – Top 10 Strategic Technology Trends for 2017
Gartner Top 10 Strategic Technology Trends for 2018
Gartner Top 10 Strategic Technology Trends for 2019
Gartner Top 10 Strategic Technology Trends for 2020

 

AI in Test Automation – Part 1

A couple of years back, the focus of Testing was “Shift Left”. It is still the focus for the companies who are not able to adopt the Shift Left practices.

Now after Shift Left / CI/CD, Automation tool companies are now looking how to bring intelligence in Test automation which can help in better test coverage and delivering quality at speed.

In this post, we will go over some intelligent features of Functionize and how they are using AI in bringing intelligence in automation and efficiency in Quality and Delivery.

(more…)

Who is a Full Stack Quality Engineer (a.k.a Test Engineer)?


A Full Stack Quality Engineers (a.k.a. Testers) is the opposite of a traditional black box tester. In contrary, a Full Stack Tester, creates business value by giving fast feedback loops on all layers of a technical process. Full Stack Testers can provide the information about the software quality faster by automating the testing activities of each layer. They are adaptive, collaborative, responsive and culturally fit in as an agile team member. 

Full Stack QEs are professionals, or “nerds”, with knowledge of operating systems, databases, web servers, server side codes, browsers and client side code. These skills and flexibility allow the tester to deliver quickly and efficient.

Full Stack Testers also go deeper and specialize in automated testing with usage of different tools e.g. Tosca, Selenium, more examples. Therefore, a base knowledge in programming languages like Java is very normal within this chapter.

Their focus is on building quality in the software rather. They gave priority to Defect Prevention over Defect detection.

How to become a Full Stack Tester:

  • Continuous Learning – Reading, Conferences, Sharing
  • Continuous Practicing – Practice new techniques
  • Continuous improvement – retrospect your practices, process being followed at set intervals and Seek for better solutions.

REMEMBER: Being technical is not enough. Understanding the need for Continuous Delivery, Continuous Integration, Continuous Testing, Its about using the right skills at right time. Technical skills can be gained easily, but change in mindset and ownership are the difficult things to adopt.

In upcoming posts, we will learn in detail about – Skills required for Full Stack Quality Engineer and How to become a Full Stack Quality Engineer.

References:
https://www.valori.nl

https://www.slideshare.net/kmstechnology/
https://www.slideshare.net/NalinGoonawardana/


Top 15 reasons – Why Software Projects Fail?


Top 15 Reasons – Why Software Projects Fail?

Why Software Project Fails

Why Software Project Fails

  • Poor Communication
  • Lack of Collaboration
  • Lack of Leadership
  • Lack of Executive Support
  • Choosing the wrong Tech Stack
  • Technology Incompetence
  • Lack of Non-functional requirements
  • Lack of getting faster feedback
  • Failure to address feedback
  • Lack of requirements
  • Solving the wrong problem
  • No feasibility analysis
  • Lack of planning – Planning the project backwards from a deadline.
  • Move Testing towards the end – or even skip the testing
  • No Retrospectives or not working on retrospective action items.


Simplified – Shift Left in Software Testing


– Article by Sumit Kalra

Shift Left is a buzzword in Software Testing. It is not new, in fact it has always been around. Shift left is all about creating a culture where testers can be involved early in the software development life cycle to start testing activities early. Idea is to reduce the risks.

Perhaps inspired by the maxim, “a stitch in time saves nine”, Shift Left is a practical attempt to actually ensure a timely stitch; to check for errors in the software testing process earlier than the conventional time to do so.  Shift Left testing means testing earlier in the software development cycle, so that risks and unknowns can be reduced which enables smooth deliveries to the clients.

Performing testing activities late in the cycle results into – failure at managing the evolving demands and requirements, and as such soon produces unhealthy consequences for the organization ranging from higher production costs to extended sales time, and accidental defects.

Traditional Software Testing Practices

Studies put forward explicitly where it is indicated that cost of fixing bugs late in the software development life cycle is very high. A must Read – http://softwaretestingtimes.com/2010/04/why-start-testing-early.html

When Shift Left practices are put in SDLC, the software system testing activities takes place much earlier in software development life cycle. The goal is to fix any minor looming issues that might crop up in the future of the project, and thereby meeting the marks of quality in delivery. So when organizations adopt the Shift Left strategy, they are able to test, analyze project, pass judgment on the system and refine it into something much better bit-by-bit.

Shift Left in Software Testing Practices

Few Examples of Shift Left:

  • Pair with the developers – More Collaboration and brainstorming on the requirements / test scenarios with the Team (including Devs and PO) so that unknowns and risks can be discovered earlier in the phase. Both Devs and QEs will have the same understanding on the requirements.
    • Rework (Issue fixing & retesting) will be less.
    • Scope creep will be less.
  • Test different layers – In SOA applications, APIs are developed first. Team should plan the API testing so that issues can be identified early in the cycle (rather than just testing from the UI).
  • Plan Non-functional Testing early in the cycle (Performance Testing, Security Testing etc) – Identifies issues early and reduces the risks.
  • Automate the “Automation Test Case Execution” – Integrate the automation scripts with Jenkins/any Build automation tools that automation scripts should run in CI region before the new code deployment. It will help in ensuring that new code change is safe or not.
  • Automate Unit Tests, Integration tests, API Tests – These tests runs faster and help in identifying the defects early in the cycle.

Advantages of Shifting Left:

  • Faster delivery – Accelerate the release cycles – Ensure smooth deliveries.

By carrying out a Shift Left operation, it is possible to efficiently improve the speed of delivery of the project. This is because they get to find out all the flaws quickly enough in the development phase of the software, reduce the time interval between releases while making the necessary adjustments, and finally producing a refined and quality software. A well-calculated procedure can in fact lead to the quality development and timely completion of tasks. The idea of Quality Assurance is the eventual improvement of these procedures after their development and documentation.

  • Software Development free of Hassles

All the project requirements become clear to every member of the organization when the errors are detected at an earlier time in the requirement phase.

  • Meeting Customer Demands sufficiently

Shift Left technique improves your client satisfaction mark, as the approach enables you deliver faster and more quality tasks.

  • Rework is reduced – Defects caused by humans to be minimized.
  • Time can be saved and team can focus more on Automation Testing.
  • Risk is reduced – Cut-down complications that could surface in the production phase.

To Summarize, Shift Left is a step towards:

Delivering QUALITY @ SPEED

Reduce the  COST without cutting the RESOURCES

Here is an awesome video (less than 5 minute) to understand the Shift Left concept – 

— Article by Sumit Kalra