How Testers and Developers Can Collaborate Better
Build a shared quality process with testable acceptance criteria, early tester involvement, fast feedback, and a defect workflow that fits your team.
Testers and developers collaborate better when they share responsibility for product quality throughout planning, implementation, testing, and defect resolution. Bring testing expertise into refinement early, agree on observable acceptance criteria, keep feedback close to the work, and use a defect workflow that matches the team’s risk and working conditions.
Shared responsibility does not mean identical skills. Developers contribute implementation knowledge; testers contribute testing expertise, risk-based thinking, and exploratory techniques; product and business representatives help establish intended behavior. The team works toward the same quality goals while each person brings different strengths.
1. Involve testers before implementation is complete
Invite a tester or testing specialist to story refinement, design reviews, and discussions about changed behavior. Early involvement can expose ambiguous requirements, missing examples, risky integrations, and hard-to-test assumptions while the team can still adjust the work.
ISTQB’s Agile Tester guidance describes testers as part of a whole-team approach with developers and business representatives. It includes collaborating across functions, planning test activities, helping define understandable and testable stories and acceptance criteria, and choosing effective communication styles and channels. ISTQB Certified Tester Foundation Level Agile Tester information
Use refinement to make uncertainty visible
For each story, ask questions such as:
- Who uses this behavior, and what are they trying to do?
- What should happen in the normal case?
- What should happen with missing, invalid, slow, or repeated input?
- What existing behavior must remain unchanged?
- Which dependencies, permissions, browsers, devices, or data affect the result?
- What evidence would let the team agree that the story is complete?
The goal is not to predict every defect in advance. It is to surface important assumptions early enough to make a shared decision.
2. Write acceptance criteria people can observe
Acceptance criteria help when they describe visible outcomes rather than implementation wishes. Use examples and edge cases that developers, testers, and business representatives can interpret consistently.
| Vague criterion | More observable criterion |
|---|---|
| “The form handles errors well.” | “When the email is invalid, submission is blocked and an inline message identifies the email field.” |
| “The page works on mobile.” | “At the supported narrow viewport, the primary action remains visible and the form can be completed without horizontal scrolling.” |
| “Loading is fast.” | “While results are loading, show the agreed loading state; if the request fails, show a retry action.” |
These are examples, not universal requirements. Choose criteria appropriate to the product, risk, accessibility needs, and supported environments. When a criterion depends on a business rule, ask the responsible product or business representative to resolve it rather than leaving testers and developers to guess.
A compact example format
Given [relevant starting state]
When [user action or system event]
Then [observable outcome]
And [important boundary or follow-up outcome]
For example:
Given a signed-in user with no saved payment method
When the user opens billing settings
Then the page explains that no payment method is saved
And the add-payment action is available
Keep criteria small enough to review and verify. If a story has many unrelated behaviors, split it or group criteria by scenario so the team can discuss risk and completion clearly.
3. Keep testing and feedback close to the work
Short feedback loops help a team resolve misunderstandings while the relevant code, design, and context are still easy to find. Pair on a risky scenario, review a reproduction together, or ask a focused question in the team’s usual channel.
DORA recommends that testers work alongside developers through software delivery. It also recommends manual exploratory, usability, and acceptance testing throughout delivery, along with continual review and improvement of test suites. Automation supports collaboration when it gives useful feedback, but it does not replace every form of human evaluation. DORA guidance on test automation
Choose the fastest useful feedback channel
- Quick ambiguity or local issue: talk or pair directly, then record a decision if others will need it later.
- Issue that blocks work or needs follow-up: create or update the agreed ticket so ownership and status are visible.
- Cross-team, supplier, contractual, or compliance-relevant issue: use a durable report with enough context and traceability for the people who must act on it.
- Distributed team: put decisions and reproduction details where colleagues in other time zones can find them without needing to be present for a live conversation.
Set explicit expectations for response times, where decisions live, when a conversation becomes a ticket, and who coordinates issues that cross team boundaries. The right level of formality depends on the work; there is no single workflow that fits every team.
4. Make defect reports useful and neutral
A defect report should help someone understand what happened and decide what to do next. Keep the language objective and focused on the product or feature. ISTQB’s ethics guidance says certified testers should be fair to and supportive of colleagues and promote cooperation with software developers. ISTQB Code of Ethics
Include details that help investigation, as applicable:
- Observed behavior: what the product did.
- Expected behavior: what should have happened, tied to a criterion, example, or product decision where possible.
- Reproduction context: steps, input data, account state, and whether the behavior repeats.
- Environment: relevant build, browser or device, configuration, and dependencies.
- Impact: who is affected, what is blocked, and any known workaround.
- Evidence: logs, a recording, or a screenshot when it clarifies the issue and can be shared safely.
This is a practical checklist, not a mandatory field list from ISTQB. Add only useful details; avoid dumping unrelated logs or sensitive data into a ticket.
Example report
Title: Billing settings shows an empty state after adding a payment method
Observed: After saving a valid card, the page returns to billing settings but still says no payment method is saved.
Expected: The saved method appears in the payment-method list, as specified by the billing-settings acceptance criterion.
Reproduction: Sign in with a test account that has no saved method; add a valid test card; return to billing settings.
Environment: Staging build [build identifier], [browser/device if relevant].
Impact: A user cannot confirm whether the payment method was saved. Refreshing the page [does/does not] change the result.
Evidence: [link to approved, access-controlled recording or relevant logs]
Do not frame the report as a judgment about the person who wrote the code. A defect identifies a product condition to investigate; it does not establish individual fault.
5. Agree on defect handling and ownership
Use direct exchange when the team communicates well and the issue is resolved promptly. Create a formal defect report when the issue is blocking, unresolved, crosses team boundaries, involves a supplier, or someone needs a durable record. This distinction follows ISTQB defect-management material. ISTQB TBOK material on defect reports
Decide how much process and traceability the work needs. ISTQB identifies factors such as time-zone distribution, the number and maturity of teams, team size, product risk, and regulatory or contractual requirements. Record the team’s decision so that new members and collaborators know how issues move from discovery to resolution.
A lightweight workflow might define:
- Who confirms the issue and its priority.
- Who coordinates investigation when ownership is unclear.
- What information is required before work can begin.
- How fixes are verified and by whom, according to risk.
- How unresolved or cross-team defects are escalated.
- When the ticket can be closed and what evidence or decision is retained.
Shared quality responsibility does not mean every defect requires a committee or that every team member must perform specialist testing. Assign coordination clearly while keeping relevant people involved.
6. Use test results to choose the next action
Share test progress in a way that helps the team make decisions. Explain what areas were covered, what remains uncertain, what failed, and what is blocked. Avoid using raw defect counts to rank individuals or teams; counts are shaped by scope, discovery effort, reporting practice, and product risk, so they are weak measures of personal performance.
When a defect appears, agree on its next action: investigate now, gather more evidence, defer with an explicit rationale, or stop a release because risk is unacceptable. The appropriate choice depends on impact and obligations. Keep the reasoning visible where future work may depend on it.
7. Keep automation useful and retain human testing
Review test suites regularly for usefulness, speed, reliability, and maintenance cost. A suite that is slow, flaky, or disconnected from user risk can delay feedback and weaken trust. DORA calls for continual review and improvement of test suites, and its guidance retains manual exploratory, usability, and acceptance testing throughout delivery.
- Automate repeatable checks that provide dependable feedback on important behavior.
- Investigate flaky checks instead of normalizing reruns as the only response.
- Use exploratory testing to follow unexpected behavior and probe risks that scripted cases may miss.
- Use usability and acceptance evaluation where observing real workflows matters.
- Remove or repair checks whose value no longer justifies their upkeep.
Automation and specialist testing are complementary. The balance depends on the product, team, and consequences of failure.
8. Capture visual evidence when it helps
A screenshot can make a visual defect, responsive layout issue, or changed page state easier to discuss. It is evidence for a conversation or report, not a substitute for reproduction steps, expected behavior, or appropriate privacy checks. Capture the relevant state and environment, and avoid exposing personal, secret, or customer data.
For a one-off check, a tester can capture a browser screenshot manually. For repeatable review across URLs or environments, a screenshot API can make image collection part of a shared workflow. ScreenshotNeo is a website screenshot API and MCP server from ScreenshotNeo. Its captures can remove known consent platforms, newsletter popups, and chat widgets before capture; the service bills only clean shots, with response headers indicating page verdict and billing status. Use these capabilities when they fit the evidence workflow, and review the API options in the ScreenshotNeo documentation.
Keep captures accessible to the people who need them, label the relevant build or environment, and follow your team’s retention and data-handling rules. Do not treat a screenshot as proof that a feature works beyond the visible state it shows.
9. A practical collaboration routine
- Refine together: include testing expertise while requirements and design can still change.
- Agree on examples: write observable criteria for expected behavior and important boundaries.
- Plan feedback: decide which checks need automation, exploration, usability review, or acceptance input.
- Share progress: surface results and uncertainty while work is in flight.
- Resolve defects objectively: choose a direct conversation or durable ticket based on urgency, distribution, risk, and traceability needs.
- Learn from the work: review misses, delays, flaky checks, and maintenance costs; adjust the team agreement.
Assess the routine using practical questions: How early is testing expertise involved? Are stories understandable and testable? How long does useful feedback take? Does the defect workflow fit the team’s distribution and risk? Are the tests useful, fast enough, and maintainable? These are comparison dimensions synthesized from ISTQB and DORA guidance, not a published ranking or a guarantee of outcomes.
10. Common collaboration problems and fixes
| Problem | Likely cause | Useful next step |
|---|---|---|
| Testing starts only after the feature is declared done | Test planning and risk discovery were left until late | Invite testing expertise into refinement and design discussions; identify high-risk scenarios before implementation finishes. |
| Developers and testers disagree about whether a story is complete | Criteria use subjective words or hide assumptions | Rewrite disputed points as examples and observable outcomes; ask the product owner or business representative to decide product rules. |
| A ticket cannot be reproduced | Steps, data, environment, or account state are missing | Reproduce together if practical, then record the context that made the behavior occur. |
| Issues are lost in chat | No shared rule defines when a conversation needs a durable record | Agree which blockers, unresolved issues, cross-team work, and compliance-relevant decisions belong in the tracking workflow. |
| Reports feel personal or adversarial | Wording assigns blame or assumes intent | Describe product behavior, evidence, expected outcome, and impact neutrally. |
| Automated checks are ignored | They may be flaky, slow, noisy, or poorly aligned with risk | Review suite health and maintenance cost; repair or remove checks that no longer provide dependable value. |
| Remote colleagues repeatedly ask for missing context | Decisions depend on live conversations or undocumented assumptions | Record decisions, response expectations, reproduction details, and coordination ownership in a shared place. |
11. Or skip the browser setup
For a repeatable visual capture in a defect workflow, ScreenshotNeo can return an image from one GET request. See the API documentation for parameters and response details.
curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp
import requests
r = requests.get("https://api.screenshotneo.com/v1/shot", params={"access_key": "YOUR_API_KEY", "url": "https://stripe.com"}, timeout=90)
open("shot.webp", "wb").write(r.content)
const q = new URLSearchParams({ access_key: 'YOUR_API_KEY', url: 'https://stripe.com' });
const res = await fetch(`https://api.screenshotneo.com/v1/shot?${q}`);
- Cookie banners, popups, and chat widgets are removed before the shot; each cleanup step can be turned off.
- Bot checks, blank pages, failed loads, timeouts, and cache hits are not billed; response headers report the page verdict and billing status.
- An MCP server gives AI agents tools to take screenshots, get page information, and capture PDFs.
- 1,000 screenshots per month are free with no card; paid plans start at $5 for 3,000 screenshots. All features are on every plan.
Sign up for ScreenshotNeo’s free 1,000 monthly screenshots, with no card required.
Frequently asked questions
Who is responsible for testing in an Agile team?
The whole team shares responsibility for quality, while testing specialists contribute expertise the team may not otherwise have. ISTQB describes Agile testers working with developers and business representatives; shared responsibility does not require everyone to have the same skills.
When should QA get involved?
Involve testing expertise during refinement and design, then keep it engaged through delivery. This gives the team an opportunity to clarify risks and acceptance conditions before implementation is complete.
Does every defect need a formal ticket?
No. Direct exchange can suit promptly resolved issues in a well-communicating team. Use a durable report when an issue blocks work, remains unresolved, crosses teams, involves a supplier, or needs a record.
Are defect counts a good measure of tester or developer performance?
No. Counts depend on scope, risk, discovery, and reporting choices. Share test results to support decisions and learning, not to rank individuals.
Is collaboration between testing and development a new concern?
No. An ISTQB survey summary from 2017–18 listed communication between development and testing among software-testing improvement areas. That is a historical finding, not a current prevalence estimate or evidence that a particular practice causes better outcomes. ISTQB 2017–18 survey summary


