Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Testing Assembly: Code or Low Code - Navigating...

Testing Assembly: Code or Low Code - Navigating the Test Automation Options

Being polyglot and polytool in test automation space is a lot of work. A recurring question for our automation efforts becomes choice of languages and tools. How do I know if my choice of tools is the right one? Is the next great thing really the next great thing, when they all promise increased productivity, especially now in the age of GenAI?

After years of experiencing programmatic tests (python + libraries/frameworks; java + libraries/frameworks; javascript + libraries/frameworks) and open source orchestration (robot framework), I have now taken up commercial orchestration (UIPath) with promises of better packaging, low code approach and AI. With an inclination to love open sandboxes that grow to fit the capability of the programmer operating them today and incentives to learn to make the best of operating the commercial tool for real benefits, this talk invites you on a journey of comparison. A comparison of my experience, but also a comparison from six community volunteers lending a newbie automator framing I personally cannot have after years in automation space.

You will learn:

* How learning of code and low code tools differs?
* What is the minimal knowledge level of useful test automation contributions?
* Is there a difference for writing the tests and debugging the tests?

Maaret Pyhäjärvi

November 26, 2024
Tweet

More Decks by Maaret Pyhäjärvi

Other Decks in Programming

Transcript

  1. © 2024 CGI Inc. 1 Code or Low- Code Navigating

    the test automation options Maaret Pyhäjärvi September 2024
  2. © 2024 CGI Inc. 2 Hyperautomation – automating everything that

    can be automated Shared tools Open source prevents licenses from becoming limitation Opportunity cost Time used on warning about test automation is time away from succeeding with it Continuity Executable documentation worth having, when I am gone Explore to build Shift left and shift down, combine into contemporary exploratory testing Collecting key points from years with projects of various states of test automation. 01 03 02 04
  3. © 2024 CGI Inc. 3 3 Programming language = system

    of notation for writing computer programs Low code / No code = using intuitive drag-and-drop tools that reduce need for traditional developers
  4. © 2024 CGI Inc. 4 Agenda for learning 1 Differences

    in learning Code and Low code 2 Minimal knowledge for useful contributions Learning in layers 3 Writing and reading Reading on failures NEW
  5. © 2024 CGI Inc. 7 7 Photo by Clay Banks

    on Unsplash Can’t you just tell us which one to use? Anti-toolist worldwiew Realize that features in tools can be copied. Looking for the one best tool makes little sense. We need to protect our time to a partner of choice. 02
  6. © 2024 CGI Inc. 16 For test automation, you choose

    a language Tradeoffs • Visual / Robot Framework / Gherkin / TypeScript / Python / Java / C# / … • Enable ownership over time when people change positions • Granularity: feedback to where things got broken • Reuse and integrations Usual choice: automation in the language of the implementation.
  7. © 2024 CGI Inc. 17 It’s not just the language

    / tools 03 02 01 04 Tools Language + Libraries. CI/CD pipeline. Test warehouse of results. Environments Conceptual home for where tests run, with needs different for automation. Test Data Business systems, business data. Varying degrees of logic impact and complexity. Long flow knowledge Multiple business expert to test real end to end flow. Analyze and enhance tests It’s a system you react to. Fix and adjust. Enhance with functionality.
  8. © 2024 CGI Inc. 18 Learning in Layers Hello World

    to Proof of Value Learning enough to operate. Installing and upgrading Change with new people and new versions. Integrations Automation belongs to pipeline. Results belong to warehouse. Knowledge beyond syntax Locators and semantic HTML. Object-oriented programming. Property- based testing. Model-based testing.
  9. © 2024 CGI Inc. 20 Failing automation is invitation to

    explore 20 Photo by Jon Tyson on Unsplash
  10. © 2024 CGI Inc. 21 After AI-enabled automation of 80%

    of the work, the 20% that remains is the portion that requires skills 21 Photo by Austin Distel on Unsplash
  11. © 2024 CGI Inc. 22 Looking inside the box …or

    building up the box so that we know what the box contains? 22
  12. © 2024 CGI Inc. 23 Key insights Whole team ownership

    Sharing tests with developers is essential. “The 10 years of success turned into failure within a month after the creator left” Incremental strategy One reliable test already running is better than plans. “The plan for what to automate was obsolete after automating the first scenario" Design for automation Decomposing feedback for automation. “We have 5000 tests and half of them are failing. Can you recommend AI that fixes them?”
  13. © 2024 CGI Inc. 24 Test automation gives us more

    than regression Specification Examples shared before implementation act as specification. Feedback We know when it works as we’re implementing the progress. Regression We safeguard our past intent over lifetime of system ownership. Granularity We know when and what changed without extensive analysis. Documenting Capture examples whenever we discuss them. Extending reach Time. Environments. Data. Alerting to attend Changes, both intended and unintended. Guiding to detail Drives attention to details humans do repair for.
  14. © 2024 CGI Inc. 25 Insights you can act on

    Founded in 1976, CGI is among the largest IT and business consulting services firms in the world. We are insights-driven and outcomes-based to help accelerate returns on your investments. Across hundreds of locations worldwide, we provide comprehensive, scalable and sustainable IT and business consulting services that are informed globally and delivered locally. cgi.com