English Grammar Test: Present Perfect vs Past Simple
- Present Perfect vs Past Simple
- 15 questions
- 12 minutes
This test checks when to use the present perfect (have/has + past participle) and when to use the past simple. Tip: a finished time such as yesterday, in 2015 or two weeks ago calls for the past simple; since, for (up to now) and so far point to the present perfect.
Tap an option to mark your answer. You can change your mind, or tap the same option again to leave the question blank. The correct answers and explanations appear when you finish the test.Tap an option to answer; tap it again to leave the question blank.
Your result
- 0 correct
- 0 wrong
- 0 blank
-
Question 1
Ana ____ in Chicago since she was ten.
Correct answer: B
With since and a situation that continues up to now, use the present perfect: has lived. The present simple lives and the continuous is living cannot be used with since in standard English.
-
Question 2
My grandparents ____ married in 1975.
Correct answer: C
In 1975 is a finished time in the past, so the past simple got is needed. The present perfect (have gotten) cannot be used with a specific past year.
-
Question 3
So far this season, our team ____ four games.
Correct answer: A
So far means "from the start until now", and the season is not over, so the present perfect has won is correct. Was winning describes an action in progress at one past moment.
-
Question 4
When ____ your current job?
Correct answer: C
A question with when asks about a specific past time, so it takes the past simple: did you start. After did, the main verb stays in the base form, so did you started is wrong.
-
Question 5
This is the first time I ____ sushi.
Correct answer: A
After This is the first time, English uses the present perfect: I have eaten. The past simple ate would only fit with It was the first time.
-
Question 6
I ____ Mark for ten years, and we are still close friends.
Correct answer: A
The friendship started ten years ago and continues now, so use the present perfect have known. I know Mark for ten years is a common learner error, and know is not used in the continuous form.
-
Question 7
William Shakespeare ____ Romeo and Juliet.
Correct answer: B
Shakespeare died long ago, so his writing belongs to a finished period: use the past simple wrote. The present perfect suggests the writer could still add to it now.
-
Question 8
"How long ____ in this apartment?" "Since last spring."
Correct answer: A
The answer since last spring shows the situation continues up to now, so the question needs the present perfect: How long have you lived…? Did you live would ask about a finished period.
-
Question 9
Which underlined part of the sentence contains an error?
We have visited Rome last summer, and we loved it.
Correct answer: D
Last summer is a finished time, so the verb must be past simple: We visited Rome last summer. Loved is already correct for the same finished time.
-
Question 10
Which sentence is correct?
Correct answer: C
Yesterday is a finished time, so use the past simple saw. Have seen cannot be used with yesterday, and seen is a past participle that needs have.
-
Question 11
She ____ her leg two weeks ago, so she can't play in tonight's game.
Correct answer: B
Two weeks ago names a finished past time, which requires the past simple broke, even though the result is still felt now. Has broke also uses the wrong participle (broken).
-
Question 12
Prices ____ a lot since 2020.
Correct answer: D
Since 2020 covers a period up to now, so the present perfect is needed. The past participle of rise is risen, so have rose is wrong.
-
Question 13
Last night we ____ dinner at a new Thai restaurant.
Correct answer: D
Last night is finished, so the past simple had is correct. Have had cannot go with a finished time expression.
-
Question 14
Have you ever ____ a horse?
Correct answer: C
The present perfect is have + past participle, and the past participle of ride is ridden. Rode is the past simple form and cannot follow have.
-
Question 15
Which underlined part of the sentence contains an error?
Maria has worked at the hospital since five years, but she wants a change.
Correct answer: B
Five years is a length of time, so it takes for: has worked … for five years. Since is used with a starting point, such as since 2021.
Questions you leave blank are not counted as wrong.