Fred's second-half goal against Serbia gave Brazil their 15th win in the last 16 games but Felipe Scolari's side were jeered in Sao Paulo.

The World Cup hosts were frustrated for long periods in their final warm-up game but finally found a way through just before the hour.

Fred cushioned a cross on his chest and stabbed home from close range.

Hulk also had a goal wrongly ruled out for offside but the team were met with boos at both half and full-time.

The Selecao open the World Cup finals against Croatia on Thursday 12 June. They will start the tournament as favourites to win a sixth trophy.

For the best of BBC Sport's in-depth content and analysis, go to our features and video page.

Lineup, Bookings (2) & Substitutions (12)

Brazil

  • 12 Julio César
  • 02 Dani Alves (Maicon - 72' )
  • 06 Marcelo (Maxwell - 74' )
  • 17 Luiz Gustavo
  • 03 Thiago Silva
  • 04 David Luiz
  • 07 Hulk
  • 08 Paulinho (Fernandinho - 65' )
  • 09 Fred (Jô - 75' )
  • 11 Oscar (Willian - 45' )
  • 10 Neymar (Bernard - 81' )

Substitutes

  • 01 Jefferson
  • 05 Fernandinho
  • 13 Dante
  • 14 Maxwell
  • 15 Henrique
  • 16 Ramires
  • 18 Hernanes
  • 19 Willian
  • 20 Bernard
  • 21 Jô
  • 22 Victor
  • 23 Maicon

Serbia

  • 01 Stojkovic (Lukac - 89' )
  • 18 Basta (Vulicevic - 87' )
  • 11 Kolarov
  • 14 Matic Booked
  • 06 Ivanovic
  • 03 Tosic
  • 16 Jojic
  • 08 Petrovic Booked (Mrdja - 86' )
  • 19 Mitrovic (Djordjevic - 80' )
  • 10 Tadic (Tosic - 70' )
  • 21 Markovic (Gudelj - 81' )

Substitutes

  • 02 Vulicevic
  • 04 Pejcinovic
  • 05 Gudelj
  • 07 Tosic
  • 09 Djordjevic
  • 12 Lukac
  • 13 Mitrovic
  • 15 Mrdja
  • 20 Lazovic
Ref: Enrique Cáceres

Match Stats

Shots

14 8

On target

3 2

Corners

7 4

Fouls

13 17

Live Text Commentary

Full time

Full Time Match ends, Brazil 1, Serbia 0.

90:00 +3:05 Full time

Full Time Second Half ends, Brazil 1, Serbia 0.

90:00 +1:37

Corner, Brazil. Conceded by Milan Lukac.

90:00 +1:35

Attempt saved. Jô (Brazil) header from the centre of the box is saved in the top right corner. Assisted by Maicon with a cross.

90:00 +0:56

Corner, Brazil. Conceded by Branislav Ivanovic.

89:54

Willian (Brazil) wins a free kick on the left wing.

89:54

Foul by Miroslav Vulicevic (Serbia).

88:40

Attempt missed. Filip Djordjevic (Serbia) header from the centre of the box is high and wide to the left. Assisted by Miroslav Vulicevic following a corner.

88:25 Substitution

Substitution Substitution, Serbia. Milan Lukac replaces Vladimir Stojkovic.

88:02

Corner, Serbia. Conceded by Maicon.

87:23

Attempt saved. Zoran Tosic (Serbia) left footed shot from the right side of the box is saved in the bottom right corner. Assisted by Milos Jojic.

86:48

Foul by Bernard (Brazil).

86:48

Zoran Tosic (Serbia) wins a free kick in the defensive half.

86:29

Corner, Brazil. Conceded by Branislav Ivanovic.

86:10 Substitution

Substitution Substitution, Serbia. Miroslav Vulicevic replaces Dusan Basta.

85:45 Substitution

Substitution Substitution, Serbia. Dragan Mrdja replaces Radosav Petrovic.

85:18

Hand ball by Nemanja Matic (Serbia).

82:16

Foul by Maicon (Brazil).

82:16

Filip Djordjevic (Serbia) wins a free kick on the left wing.

80:44 Substitution

Substitution Substitution, Brazil. Bernard replaces Neymar.

80:15 Substitution

Substitution Substitution, Serbia. Nemanja Gudelj replaces Lazar Markovic.

79:55 Substitution

Substitution Substitution, Serbia. Filip Djordjevic replaces Aleksandar Mitrovic.

79:36

Attempt missed. Hulk (Brazil) left footed shot from outside the box misses to the left. Assisted by Willian.

78:29

Attempt blocked. Luiz Gustavo (Brazil) left footed shot from outside the box is blocked. Assisted by Fernandinho.

76:08

Attempt missed. Radosav Petrovic (Serbia) right footed shot from outside the box misses to the right. Assisted by Aleksandar Kolarov.

74:31 Substitution

Substitution Substitution, Brazil. Jô replaces Fred.

73:28 Substitution

Substitution Substitution, Brazil. Maxwell replaces Marcelo.

73:17

Offside, Brazil. Neymar tries a through ball, but Hulk is caught offside.

72:45

Attempt saved. Lazar Markovic (Serbia) right footed shot from the centre of the box is saved in the bottom right corner. Assisted by Radosav Petrovic.

71:07 Substitution

Substitution Substitution, Brazil. Maicon replaces Dani Alves.

70:38

Milos Jojic (Serbia) hits the right post with a header from the centre of the box. Assisted by Aleksandar Kolarov with a cross.

69:49

Foul by Luiz Gustavo (Brazil).

69:49

Milos Jojic (Serbia) wins a free kick in the attacking half.

69:25 Substitution

Substitution Substitution, Serbia. Zoran Tosic replaces Dusan Tadic.

68:59

Attempt missed. Neymar (Brazil) right footed shot from outside the box is high and wide to the right. Assisted by Marcelo.

67:10

Attempt blocked. Fernandinho (Brazil) right footed shot from outside the box is blocked. Assisted by Willian.

65:20

Foul by Fernandinho (Brazil).

65:20

Lazar Markovic (Serbia) wins a free kick in the attacking half.

64:53

Foul by Thiago Silva (Brazil).

64:53

Aleksandar Mitrovic (Serbia) wins a free kick in the defensive half.

64:16 Substitution

Substitution Substitution, Brazil. Fernandinho replaces Paulinho.

63:58

Hulk (Brazil) wins a free kick in the attacking half.

63:58

Foul by Aleksandar Kolarov (Serbia).

63:24

Attempt saved. Luiz Gustavo (Brazil) left footed shot from outside the box is saved in the bottom right corner.

62:16

Luiz Gustavo (Brazil) wins a free kick in the defensive half.

62:16

Foul by Dusan Tadic (Serbia).

60:09

Corner, Brazil. Conceded by Dusko Tosic.

59:54

Attempt blocked. Hulk (Brazil) left footed shot from outside the box is blocked. Assisted by Marcelo.

59:18

Corner, Brazil. Conceded by Dusko Tosic.

59:16

Attempt blocked. Paulinho (Brazil) right footed shot from outside the box is blocked.

57:52 Goal scored

Goal! Goal! Brazil 1, Serbia 0. Fred (Brazil) right footed shot from the centre of the box to the bottom right corner. Assisted by Thiago Silva.

55:47

Foul by Luiz Gustavo (Brazil).

55:47

Dusan Tadic (Serbia) wins a free kick on the right wing.

55:16

Foul by Marcelo (Brazil).

55:16

Dusan Basta (Serbia) wins a free kick on the right wing.

54:13

Offside, Brazil. Hulk tries a through ball, but Neymar is caught offside.

50:43

Neymar (Brazil) wins a free kick in the attacking half.

50:43

Foul by Dusan Tadic (Serbia).

45:53

Dani Alves (Brazil) wins a free kick on the right wing.

45:53

Foul by Dusan Tadic (Serbia).

45:00

Second Half begins Brazil 0, Serbia 0.

45:00 Substitution

Substitution Substitution, Brazil. Willian replaces Oscar.

45:00 +0:58 Half time

Half Time First Half ends, Brazil 0, Serbia 0.

44:29

Luiz Gustavo (Brazil) wins a free kick in the defensive half.

44:29

Foul by Milos Jojic (Serbia).

43:48

Offside, Serbia. Dusan Tadic tries a through ball, but Aleksandar Mitrovic is caught offside.

43:00

Oscar (Brazil) wins a free kick in the defensive half.

43:00

Foul by Aleksandar Kolarov (Serbia).

42:07

Foul by Hulk (Brazil).

42:07

Dusan Basta (Serbia) wins a free kick in the defensive half.

41:23

Attempt missed. David Luiz (Brazil) right footed shot from outside the box is high and wide to the right from a direct free kick.

40:35 Booking

Booking Nemanja Matic (Serbia) is shown the yellow card for a bad foul.

40:03

Neymar (Brazil) wins a free kick in the attacking half.

40:03

Foul by Nemanja Matic (Serbia).

38:04

Luiz Gustavo (Brazil) wins a free kick in the defensive half.

38:04

Foul by Dusan Tadic (Serbia).

37:16

Foul by Neymar (Brazil).

37:16

Radosav Petrovic (Serbia) wins a free kick on the right wing.

34:30

Foul by Hulk (Brazil).

34:30

Dusan Basta (Serbia) wins a free kick in the defensive half.

33:03

Attempt missed. Dani Alves (Brazil) right footed shot from outside the box is high and wide to the right. Assisted by Neymar.

32:34

Fred (Brazil) wins a free kick in the attacking half.

32:34

Foul by Radosav Petrovic (Serbia).

31:53

Attempt missed. Aleksandar Mitrovic (Serbia) header from the centre of the box misses to the left. Assisted by Dusan Tadic with a cross.

30:30

Hand ball by Radosav Petrovic (Serbia).

29:41

Corner, Serbia. Conceded by Julio César.

27:40

David Luiz (Brazil) wins a free kick in the defensive half.

27:40

Foul by Dusan Tadic (Serbia).

26:06

Attempt blocked. Milos Jojic (Serbia) right footed shot from outside the box is blocked.

25:30

Corner, Serbia. Conceded by Luiz Gustavo.

24:02

Attempt missed. Fred (Brazil) right footed shot from outside the box misses to the right. Assisted by Neymar.

21:13

Marcelo (Brazil) wins a free kick on the left wing.

21:13

Foul by Milos Jojic (Serbia).

19:08

Foul by Hulk (Brazil).

19:08

Dusko Tosic (Serbia) wins a free kick in the defensive half.

17:50

Attempt missed. Dani Alves (Brazil) right footed shot from more than 35 yards misses to the left. Assisted by Marcelo.

17:05

Corner, Brazil. Conceded by Branislav Ivanovic.

17:04

Attempt blocked. Neymar (Brazil) right footed shot from the centre of the box is blocked. Assisted by Oscar.

14:15 Booking

Booking Radosav Petrovic (Serbia) is shown the yellow card for a bad foul.

14:08

Neymar (Brazil) wins a free kick in the attacking half.

14:08

Foul by Radosav Petrovic (Serbia).

11:06

Corner, Brazil. Conceded by Branislav Ivanovic.

8:07

Attempt missed. Aleksandar Kolarov (Serbia) right footed shot from the left side of the box is close, but misses to the left. Assisted by Radosav Petrovic.

5:42

Foul by Paulinho (Brazil).

5:42

Aleksandar Mitrovic (Serbia) wins a free kick on the right wing.

4:15

Luiz Gustavo (Brazil) wins a free kick on the left wing.

4:15

Foul by Dusan Tadic (Serbia).

2:01

Corner, Serbia. Conceded by David Luiz.

1:16

Foul by Luiz Gustavo (Brazil).

1:16

Dusan Tadic (Serbia) wins a free kick on the right wing.

0:03

Neymar (Brazil) wins a free kick in the defensive half.

0:03

Foul by Dusan Tadic (Serbia).

0:00

First Half begins.

0:00

Lineups are announced and players are warming up.

Live data and text provided by our data suppliers