TekVision Support Take-Home Interview • Chatbot Feature Testing
Candidate Sandbox

Welcome to TekVision Support 👋

This page is part of a take-home interview exercise. You’ll use the chat widget (bottom-right) to test a few key assistant capabilities and build a small “testing app” experience around it—think scenario runner, checklist, notes, and export of results.

How to contact us: Use the chat bubble on the bottom-right.
Goal: Demonstrate a practical QA/testing mindset—clear scenarios, expected outcomes, edge cases, and light automation ideas are welcome.

Take-home task

Design and implement a small application to automate chatbot UI testing, test the sample bot on this page

  • Define at least 5 test scenarios with clear steps and expected outcomes (e.g., expected reply contains keywords, expected button appears, expected handoff message).
  • Build a simple runner that executes scenarios and records results: pass/fail, timestamp, actual response, and optional notes.
  • Use Selenium or Playwright (or a similar tool) to interact with the chat UI (use the bot on this page to test your runner).
  • Export test results to JSON or CSV.
  • Include a short README with setup, how to run, and any assumptions/limitations.
  • Feel free to use code assistants (e.g., Copilot) or any AI tools. You are encouraged to use them to help keep your total development time within a few hours.

Test data you can use

Use these sample values when chatting with the assistant:

Client ID: TV12345 Client ID: TV67890

Usage expectations:
TV12345 → ports_used: 9, minutes_used: 3150
TV67890 → ports_used: 15, minutes_used: 5000

Try support ticket: Provide client name, product name (e.g., “Lens 5.0”), issue description, and a valid email. Also try an invalid email to verify validation messaging.

Try sales demo: Provide name + valid email. Also try missing name / invalid email.

Suggested scenarios

  • Open Ticket (happy path): All fields provided → success + ticket ID returned.
  • Open Ticket (invalid email): Email missing/invalid → error + prompt to correct.
  • Check Usage (TV12345): Should return ports 9, minutes 3150.
  • Check Usage (bad ID): e.g. “12” or “@@@” → error about format.
  • Book Demo (happy path): Name + email → recorded message.
  • Lens info: Ask “Tell me about Lens” → validate completeness/clarity.

What we’re looking for

  • A clean UX for running scenarios and capturing evidence/notes.
  • Thoughtful negative testing and input validation coverage.
  • Clear expected results and how you’d scale the tests.
  • Code quality: readability, structure, and small reusable components.

Demo & presentation

Once you’re done, please reply to the take-home email with:

  • A link to your repository (or a zipped attachment if requested).
  • Any setup notes (env vars, prerequisites, OS/browser assumptions).
  • Optional: a short screen recording (2–5 minutes) showing the runner working.
  • Propose a few 1-hour time slots you’re available to present your solution.

What to be ready to walk us through

During the demo, expect to do a short walkthrough (10–20 minutes) covering:

  • Design choices: architecture, scenario model, assertion strategy, and test reporting.
  • Automation approach: how Selenium/Playwright interacts with the chat UI and why.
  • Reliability: handling timing, retries, flaky UI, and deterministic checks.
  • Product thinking: how you’d expand this into a real product and what you’d add next.

Feature ideas (examples): scenario editor UI, reusable test data sets, screenshot/video capture, CI integration, parallel runs, run history dashboard, and integrations (Jira/Slack).