Skip to main content

Acceptance test

Acceptance testing demonstrates that functional and non-functional requirements are met through manual execution and recorded observations. It is also automated by running pytest from the project root to execute tests and report pass/fail results.

Acceptance tests should be documented using this spreadsheet:

Download Acceptance QA Testing Doc.xlsx


TypeCategoryRequirementProcedureOutcome
F-1Chatbot ControlsUsers can create their own promptsAttempt to create a custom prompt through available user controls in Slack.User-generated prompts can be created and used by the bot.
F-2Chatbot ControlsChatbot must enforce quick-time eventsConfigure prompt timing mode. Verify prompt behavior around configured windows.Prompt timing is constrained by configured/preset windows.
F-3Chatbot ControlsChatbot must send a message once a day that encourages team engagementSet active channel and schedule. Observe daily prompt delivery.One daily engagement prompt is posted to configured channel.
F-4Chatbot ControlsChatbot must group users based on post detailsTrigger grouping workflow based on user content.Users are grouped by post details.
F-5Chatbot ControlsChatbot must display a leaderboard of streak scoresRun leaderboard or streak summary flow.Ranked streak leaderboard is returned.
F-6Data CollectionTrack how many times each user respondsSend multiple user replies after a prompt. Query analytics/statistics output.Response counts are tracked and visible.
F-7Data CollectionTrack individual user streak scoresSimulate daily participation for one user.User streak is updated and retrievable.
F-8Data CollectionTrack late postsSubmit responses after expected window.Late posts are flagged and stored.
F-9Data CollectionTrack missed postsLeave prompt unanswered during cycle.Missed post event is tracked.
F-10PromptsMake picture-based promptsTrigger prompt generation repeatedly. Verify image-type prompts are selected.Image-oriented prompt types are produced.
F-11PromptsMake text-based promptsTrigger prompt generation and inspect message content.Text prompts are generated and posted.
F-12PromptsMake photo-encouraged promptsReview generated prompt content for photo encouragement language.Prompts encouraging photo responses are present.
F-13PromptsMake text-encouraged promptsReview generated prompt content for text response language.Prompts encouraging text responses are present.
NF-1ScalabilityAvailable on multiple messaging platformsReview architecture implementation and adapter extension points. Attempt onboarding for a second platform (prototype stage).Platform abstraction supports extension beyond Slack.
NF-2ScalabilityHandle large numbers of requests/responsesRun high-volume message simulation in staging.Bot remains responsive and records events correctly.
NF-3ScalabilityRespond to events near-instantlySend slash commands and message events. Measure response latency.Responses occur within acceptable latency threshold.
NF-4ScalabilityRemain consistent via environment-based configurationRun deployment/startup in two environments with different env var values. Verify the bot loads environment-specific values correctly.Environment-driven configuration works consistently across environments.
NF-5SecurityEnsure stored data is secure and minimize loss/duplication/corruptionValidate upsert-based writes for installation/prompt stats. Validate failure-path logging for DB write errors.Writes are controlled and idempotent where designed.
NF-6SecurityEnsure events do not lose data or repeat promptsObserve repeated cycles across day boundaries. Verify prompt posting and event logging consistency.Event handling remains consistent without unintended duplicate prompts.