Steps to reproduce: imperatives and the zero conditional in bug reports

About this lesson

Students learn how to write a bug report in this B1 English for IT lesson plan: steps as imperatives, and what always happens in the zero conditional.

Grammar
Imperatives for each step (Tap Refund. Don't tap Confirm yet.) and the zero conditional for what happens every time: If you rotate the phone, the amount disappears.
Topic
Bug reports for a merchant app at a fictional payments startup, with words such as steps to reproduce, expected result, actual result and severity.
Activities
Mozilla's bug-writing guide, a QA ticket, a call that turns a story into steps, self-checking drills, a chat and open boxes, then a bug report to write and steps to record.

What's inside

  1. Chapter 1Warm-up: Can You Make It Happen Again?

    • PictureUnlock
    • Spin the wheel and answerSpin the wheelUnlock
    • Study the words for bug reportsVocabularyTry it
    • Look at the pictures and chooseChoose by pictureUnlock
  2. Chapter 2The Story: “It Doesn't Work”

    • Read the story: “It doesn't work”ArticleUnlock
    • True or false? Check the storyTrue or falseUnlock
  3. Chapter 3At Work: Ticket MOB-273

    • Read Jordan's ticketReal-life documentTry it
    • Choose the correct answer about the ticketQuizUnlock
    • Put the steps in the correct orderDrag and dropUnlock
  4. Chapter 4Listen: From a Story to Steps

    • Listen to Iryna and Jordan's callListeningTry it
    • Transcript, for the teacherUnlock
    • Choose the correct answer about the callQuizUnlock
  5. Chapter 5Grammar: If You Tap It, It Breaks

    • Study the scheme: steps and what always happensGrammar schemeTry it
    • Choose the correct optionChoose the optionUnlock
    • Fill in the steps: use the verb from Erin's storyFill in the gapsTry it
    • Fill in the gaps: from test notes to a ruleFill in the gapsUnlock
    • Drag the words into Iryna's ticketDrag and dropUnlock
    • Sort the results: expected or actual?Sort into columnsUnlock
  6. Chapter 6Speak Up: Works on My Phone

    • Choose the best replies: Wes can't reproduce itChatTry it
    • Open a box: give the stepsOpen the boxUnlock
  7. Chapter 7Homework: Your Own Bug Report

    • Read your phrase bankReal-life documentUnlock
    • Choose the correct sentenceQuizUnlock
    • Match the words with the examplesMatchUnlock
    • Write a bug report with steps to reproduceWriting, checked by the teacherUnlock
    • Record the steps for a colleagueSpeaking, checked by the teacherUnlock

Bug report vocabulary

12 words and phrases from the lesson, each with a picture and audio in edio.

+9 more with pictures and audio in the lessonMore words

  • environment
  • bug tracker
  • severity
  • test device
  • toggle
  • attachment
  • tap
  • scroll
  • rotate

Grammar: imperatives and the zero conditional for bug reports

A bug report gives instructions and states facts: Tap Refund is a step, and If you rotate the phone, the amount disappears is what happens every time. Learners write each step as an instruction, turn a user's past simple story into imperatives, and state the bug with if or when and the present simple.

Imperatives and the zero conditional

Write each step as an instruction. Say what happens every time with if / when + present simple.

Steps to reproduce: the imperative

Each step starts with the base verb, with no you: Open Payments. Tap a card payment. Type 12.50 in the Amount field. A step not to take starts with Don't: Don't tap Confirm yet. First, Then and After that keep the steps in order.

UseFormExample
Do somethingbase verb + …Open Payments. Tap a card payment.
Don't do somethingdon't + base verbDon't tap Confirm yet.
Say where or whatbase verb + detailsType 12.50 in the Amount field.
Put the steps in orderFirst, … Then … After that, …First, log in. Then tap Refund.

From a story to steps

Users tell what happened in the past simple; a ticket turns each sentence into an instruction. I opened the app becomes Open the app, and a negative turns into Don't + the base verb: I didn't close the page becomes Don't close the page.

The story: what I did (past simple)

  • I opened the app.
  • I tapped Payment links.
  • I didn't close the page.

The steps: what you do (imperative)

  • Open the app.
  • Tap Payment links.
  • Don't close the page.

The zero conditional: what always happens

If or when + present simple, and the present simple in the result, says what happens every time: If you rotate the phone, the amount disappears. A negative condition works the same way: If you don't rotate the phone, the refund works fine.

The zero conditional: what always happens

If / When + present simplepresent simple

If you rotate the phone, the amount disappears.

When the file is over 10 MB, the upload fails.

Today's bugs

  • If you rotate the phone on the refund screen, the amount disappears.
  • If you type a comma, the link shows the wrong price.
  • When you type the amount without a comma, the link works.
  • If you don't rotate the phone, the refund works fine.
  • Type 12.50 in the Amount field. Don't tap Confirm yet.

Steps, expected result, actual result

A report has three parts. The steps come first, one action each; then the expected result, what should happen (The amount stays in the field.), and the actual result, what really happens (The Amount field is empty.). Both results are facts in the present simple.

  • Steps to reproduce: one action in each step, as an instruction (Tap…, Type…, Don't…)
  • Expected result: what should happen. The amount stays in the field.
  • Actual result: what really happens. The Amount field is empty.

If or when? And will?

For things that happen every time, if and when both work: If you type a comma, the link shows the wrong price. Never put will after if or when. In the result, will is possible, but the present simple shows it happens every time.

If or when? And will?

For things that happen every time, if and when both work: If / When you type a comma, the link shows the wrong price. Never use will after if or when. In the result, you may also hear will (the app will crash), but the present simple shows that it happens every time.

Typical mistakes

  • If you will click Save twice, the app crashes.

    If you click Save twice, the app crashes.

    never will after if / when

  • If you clicks Export, the page goes blank.

    If you click Export, the page goes blank.

    you + base verb; he / she / it + -s

  • Don't to refresh the page.

    Don't refresh the page.

    don't + base verb, no to

  • Step 3: You click Export.

    Step 3: Click Export.

    a step is an instruction: no you

More lessons on this grammar: Zero and first conditional lessons and exercises

Try the imperatives and zero conditional exercises

Try them yourself: these are the same exercises your students do in edio.

What's in the lesson

  • 13 auto-checked exercises
  • 2 games
  • 2 teacher-checked tasks
  • 2 real-life documents
  • 1 article
  • 1 grammar scheme
  • 1 set of word cards
  • 1 audio clip
  • 1 picture
  • 1 transcript

The main objectives of this lesson are to:

  • write a bug report someone can reproduce: a clear title, the environment, numbered steps, the expected result and the actual result
  • turn a user's story into steps with imperatives: I opened the app becomes Open the app. I didn't close the page becomes Don't close the page.
  • say what happens every time with the zero conditional: If you type a comma, the link shows the wrong price.
  • put steps in order with First, Then and After that, and give exact steps to a colleague who can't reproduce a bug

Lesson 8 is the middle lesson of Bugs and tickets, unit 3 of English for IT B1 · Inside the Team, where learners describe problems others can reproduce and write clear tickets. Lesson 7 told a bug as a story in the past; this lesson turns such stories into steps with imperatives and states each bug with the zero conditional of A2.2 lesson 14. Lesson 9 then rewrites a vague report as a clear ticket. A step is an instruction to the reader, so tickets speak in imperatives.

The warm-up teaches twelve words with pictures and audio, from steps to reproduce and severity to tap, scroll and rotate; the story then presents Mozilla's public Bug Writing Guidelines and why the steps matter most. At work comes a QA ticket for a refund bug, with steps and expected and actual results, and an AI-voiced call in which a developer and a tester turn a merchant's story into steps. Five drills after the scheme check themselves, from rewriting a user's sentences as steps to sorting expected and actual results.

The speaking chat puts students opposite a developer who can't reproduce their ticket: they give exact steps and the expected result. Open boxes follow, with steps for everyday app problems and questions about ticket habits. For homework, a phrase bank comes with a sentence quiz and a word match that check themselves; students then write a bug report with steps and record the steps for a colleague, both for the teacher to review.

Grammar:
imperatives · zero conditional
Topic:
bug reports · steps to reproduce · QA and testing

Teaching tips

  • Collect vague tickets: write It doesn't work and Software crashes on the board, and let the group ask questions until each becomes a title, numbered steps and two results.
  • In an in-company group, use the team's own tracker: learners bring one real ticket, remove anything confidential, and rewrite its steps as imperatives with one action each.
  • Turn test notes into rules: write I rotated the phone and the amount disappeared, and pairs turn it into If you rotate the phone, the amount disappears, then find two rules of their own in a phone app.
  • One-to-one, play the developer who can't reproduce it: say Works on my phone to every step the learner gives until the steps are exact and include a Don't…

Liked it?

Teach the whole lesson in edio

25 exercises in 7 chapters, ready to teach. edio is an online platform for language schools and teachers: ready-made interactive lessons, live classes, homework and student progress in one place.

  1. Start a free trial

    7 days, no credit card.

  2. Open the lesson

    Find it in the library of 621 ready lessons. Teach it as it is, or copy any chapter into your own lessons.

  3. Teach it live or as homework

    Students work in their own accounts, in sync with you during the lesson, and the practice exercises check themselves.

The whole course: English for IT B1 · Inside the Team

24 lessons at B1 for people who build, test or run software, in American English. Learners follow Iryna, a junior developer, through her first year at Kestrel Cloud, a fictional payments startup: standups, tickets, code review, chats across time zones and job interviews. Each lesson is built around a true story from software history.See the course

  1. Unit 1 Hello, team

    roles, stacks and first days: the present simple, the present perfect with for and since, question forms

    1. Lesson 1How big is a two-pizza team?Present simple for jobs and responsibilities
    2. Lesson 2Your first "Hello, World"Present perfect with for and since
    3. Lesson 3Write your personal READMEQuestion forms for getting to know colleagues
  2. Unit 2 The daily standup

    updates and blockers: the present simple and continuous, just, already and yet, have to and need to

    1. Lesson 4Why is it called a scrum?Present simple vs continuous and state verbs
    2. Lesson 5Done, not done yetPast simple, present perfect and going to for updates
    3. Lesson 6Help, I'm blocked!Have to, need to, don't have to and can't
  3. Unit 3 Bugs and tickets

    clear bug reports: the past continuous, imperatives and the zero conditional, quantifiers

    1. Lesson 7The first actual bugPast simple and past continuous for bug stories
    2. Lesson 8 · you're hereSteps to reproduceImperatives and the zero conditional for bug reports
    3. Lesson 9The email that couldn't go 500 milesQuantifiers in bug tickets
  4. Unit 4 Code review

    kind, useful comments: -ed and -ing adjectives, modals for suggestions, the first conditional

    1. Lesson 10What's a nit?-ed and -ing adjectives in review comments
    2. Lesson 11Could we maybe…?Modals for suggestions in code review
    3. Lesson 12Your first pull requestThe first conditional and unless in code review
  5. Unit 5 How it works

    explaining systems step by step: time clauses, the passive, relative clauses

    1. Lesson 13What happens when you type a URL?Time clauses with as soon as, until and once
    2. Lesson 14How is a barcode read?The present and past simple passive
    3. Lesson 15Draw it, then say itDefining relative clauses
  6. Unit 6 Remote and async

    chat, email and time zones: polite requests, future forms, the present perfect continuous

    1. Lesson 16Just say what you needPolite requests and indirect questions
    2. Lesson 17Your 9 a.m. is my noonFuture forms for plans across time zones
    3. Lesson 18Write it downPresent perfect continuous for status updates
  7. Unit 7 Users and clients

    user stories and plain explanations: verb + to or -ing, reported speech, comparisons

    1. Lesson 19As a user, I want…Verb + to or verb + -ing
    2. Lesson 20"The client said it was broken"Reported speech for client calls
    3. Lesson 21Explain it in ten hundred wordsComparisons for plain explanations
  8. Unit 8 Your next job

    resumes and interviews: used to, the past perfect, the second conditional

    1. Lesson 22A resume that shows resultsUsed to for your career path
    2. Lesson 23Tell me about a time when…The past perfect for STAR stories
    3. Lesson 24What would you do if…?The second conditional for interviews

Questions about this lesson

How do you use the zero conditional in a bug report?
In a bug report, the zero conditional states what happens every time: if or when + present simple, then the present simple again. If you rotate the phone, the amount disappears. When you type the amount without a comma, the link works. It turns a test into a rule a developer can check, so add how often: every time, or 5 out of 5 tries. Never put will after if or when.
How do you use imperative sentences in a bug report?
In a bug report, every step is an imperative sentence: the base verb first, with no you. Open Payments. Tap Refund. Type 12.50 in the Amount field. For something the reader must not do, use Don't + the base verb: Don't tap Confirm yet. One action per step keeps it easy to follow. The ticket in Steps to reproduce, a B1 English for IT lesson on edio.ai, is written this way.
Is it "If you will click" or "If you click"?
It's If you click, with no will after if: If you click Save twice, the app crashes. The same goes for when. In the result, will is possible (the app will crash), but the present simple shows the bug happens every time. A chat in Steps to reproduce on edio.ai sets If you will need a screen recording as a trap.
Should a step say "You click Export" or "Click Export"?
Write Click Export, with no subject: a step is an instruction to the reader. You click Export describes what someone does; Click Export tells the reader what to do. Negative steps work the same way, with Don't and no to: Don't refresh the page, not Don't to refresh the page. Keep the subject for the results and notes: If you click Export, the page goes blank.
What is a bug report?
A bug report is a ticket that lets others reproduce a problem: a clear title, the environment, the steps to reproduce, the expected result and the actual result. Expected result: the Amount field still shows 12.50. Actual result: the Amount field is empty. Mozilla's public Bug Writing Guidelines call the steps the most important part, because a bug a developer can reproduce is very likely to get fixed.
What's an example of a good bug report?
A good example names the problem, the device and every step: Title: Refund amount disappears when you rotate the phone. Environment: merchant app, latest beta, Android test phone. Steps: 1. Open Payments. 2. Tap a card payment, then tap Refund. 3. Type 12.50. Don't tap Confirm yet. 4. Rotate the phone. Expected: the field still shows 12.50. Actual: the field is empty. How often: every time.
What does "steps to reproduce" mean?
Steps to reproduce are the exact actions that make a problem happen again, written as a numbered list of instructions. Reproduce means to make the same problem happen on purpose, so a developer can watch it and fix it. Each step is one action in the imperative, and First, Then and After that help when you say them aloud: First, close the app completely. Then send a test payout.
How do you write a bug report in English?
Stick to facts and exact words: a title that says what goes wrong and when, numbered steps in the imperative, and the expected and actual results in the present simple. Write the number you see, not a feeling: The link shows $1.00, not The link is crazy. Say how often it happens, and add the environment and a screenshot. The call in Steps to reproduce on edio.ai sums it up: facts, not feelings.
How do I teach bug report writing to B1 learners?
Start with a story and turn it into steps: a user says I opened the app, I tapped Payment links, I typed the price, and the class rewrites each line as an instruction. Then test the steps on a partner's phone and state the result as a rule: If you type a comma, the link shows the wrong price. Finish with the expected and actual results.
Are there interactive exercises for imperatives and the zero conditional?
Yes: gap-fills that mark every step and chat role-plays suit it well. Four parts of Steps to reproduce, a B1 English for IT lesson on edio.ai, can be tried here without an account: a QA ticket for a refund bug, a call that turns a merchant's story into steps, a gap-fill that rewrites her sentences as imperatives, and a chat with a developer who can't reproduce a bug. Other exercises stay locked.
What's good homework for practicing bug reports?
Good homework is a real bug report from the learner's own apps: a title, the environment, three to six numbered steps, the expected and actual results, and one If… or When… line. In Steps to reproduce on edio.ai, a sentence quiz and a word match check themselves, then students write the report and record the steps for a colleague, both for the teacher to review.

Teach this lesson with your students

No credit card required