DEV Community

Cover image for What a W.I.T.C.H!
Paradith
Paradith

Posted on

1

What a W.I.T.C.H!

Exploratory testing using a Witch.

Erm - pardon?

I love a heuristic. Does not mean I always remember them, so take my advice — i’m not using it.

Here’s an exploratory testing heuristic using the acronym W.I.T.C.H.

W.I.T.C.H Heuristic

W — Workflows

  • Explore common and edge workflows: Identify typical user journeys and uncommon paths. Test each step, transitions, and decision points. If you have enough experience, then hell yeah — use your Oracle knowledge!
  • Integration points: Check interactions between different system components and third-party services. Ensure data consistency and flow.
  • Error Handling: Validate how the system handles errors, including user errors, system errors, and edge cases.

I — Inputs

  • Variety of inputs: Test with different data types, lengths, and special characters. Include valid, invalid, and boundary inputs.
  • Data formats: Ensure the system can handle different formats like JSON, XML, CSV, etc., if applicable.
  • Input sources: Test inputs from various sources such as forms, files, databases, APIs, etc.

T — Time

  • Time-based conditions: Check how the system behaves at different times, such as leap years, time zones, and daylight saving changes. Yes it’s 2024 but you might be surprised how often hidden third parties do not cope with time changes.
  • Performance testing: Assess the system’s response time, throughput, and load handling capabilities.
  • Timeouts and delays: Verify the handling of network delays, server timeouts, and user session timeouts.
  • How much time do you have to do your exploratory testing? What is the priority based on that.

C — Context

  • User context: Understand different user scenarios, roles, and permissions. Test features specific to each user type.
  • Environment context: Test across various environments like development, staging, and production. Ensure compatibility with different operating systems, browsers, and devices.
  • Business context: Ensure alignment with business rules, workflows, and objectives. Validate against business requirements and user expectations.

*H — Heuristics and History
*

  • Common heuristics: Use known heuristics like RCRCRC (Recent, Core, Risky, Configuration, Repaired, and Chronic) to guide testing. There are so many available online or via Ministry of Testing.
  • Historical data: Analyse past bugs, user feedback, incident reports and anomaly detection logs — well any logs. Focus on areas with frequent issues or something you think is strange...
  • Exploratory testing: Continuously adapt testing based on findings. Use exploratory charters to guide and document testing sessions.

I am a Staff Quality Engineer, awesome woman in tech, UN Women Delegate and I believe in the value of curiosity and empathy in testing. I do all my own stunts, love food, travel, my friends, family, music and art.

If you enjoyed this story, please share to help others find it. Feel free to leave a comment — I am open to insight, learning and discussion.

Hostinger image

Get n8n VPS hosting 3x cheaper than a cloud solution

Get fast, easy, secure n8n VPS hosting from $4.99/mo at Hostinger. Automate any workflow using a pre-installed n8n application and no-code customization.

Start now

Top comments (0)

Cloudinary image

Video API: manage, encode, and optimize for any device, channel or network condition. Deliver branded video experiences in minutes and get deep engagement insights.

Learn more

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay