Valtteri Bottas was fastest in both the morning and afternoon sessions on the second day of the GP3 Series pre-season test at Barcelona's Circuit de Catalunya.

The ART driver went to the top of the timesheets just twenty minutes into the morning session. He then put in a succession of quick laps, at one point getting himself six tenths ahead of anyone else.

Nobody could beat his quickest time before the checkered flag. Nigel Melker ended the morning in second position for Mucke, nearly two tenths off Bottas. Andrea Caldarelli was third for Tech 1, ahead of Nico Muller of Jenzer and Lewis Williamson of Arden.

The teams concentrated on race simulations in the afternoon session, with nobody challenging the kind of lap times seen during the morning. Pedro Nunes held top spot for much of the session, only knocked into second when Alexander Sims went quickest for Status with half an hour remaining.

As drivers fitted new tyres at the end of the session, Bottas moved to the top spot, where he remained until the checkered flag. Williamson was second, ahead of Rio Haryanto for Manor, ART's James Calado and Tuesday's pacesetter Antonio Felix Da Costa.

Morning session times:

Pos # Driver Team  Time  Gap  Laps
1 2 Valtteri Bottas Lotus ART 1:38.004   50
2 31 Nigel Melker RSC Mucke Motorsport 1:38.192 +0.188 35
3 18 Andrea Caldarelli Tech 1 Racing 1:38.396 +0.392 36
4 7 Nico Muller Jenzer Motorsport 1:38.436 +0.432 38
5 28 Lewis Williamson MW Arden 1:38.488 +0.484 45
6 10 Adrian Quaife-Hobbs Marussia Racing 1:38.517 +0.513 27
7 24 Gabby Chaves Addax Team 1:38.551 +0.547 36
8 3 James Calado Lotus ART 1:38.576 +0.572 44
9 30 Michael Christensen RSC Mucke Motorsport 1:38.675 +0.671 23
10 5 Antonio Felix Da Costa Status Grand Prix 1:38.683 +0.679 44
11 25 Daniel Morad Addax Team 1:38.689 +0.685 42
12 1 Pedro Nunes Lotus ART 1:38.694 +0.690 40
13 26 Mitch Evans MW Arden 1:38.696 +0.692 31
14 17 Aaro Vainio Tech 1 Racing 1:38.743 +0.739 23
15 4 Alexander Sims Status Grand Prix 1:38.785 +0.781 54
16 27 Simon Trummer MW Arden 1:38.788 +0.784 40
17 12 Matias Laine Marussia Manor Racing 1:38.794 +0.790 34
18 11 Rio Haryanto Marussia Manor Racing 1:38.823 +0.819 35
19 9 Vittorio Ghirelli Jenzer Motorsport 1:38.887 +0.883 34
20 19 Tamas Pal Kiss Tech 1 Racing 1:38.910 +0.906 23
21 20 Marlon Stockinger Atech CRS GP 1:38.945 +0.941 32
22 21 Nick Yelloly Atech CRS GP 1:39.024 +1.020 27
23 16 Leonardo Cordeiro Carlin 1:39.119 +1.115 38
24 8 Maxim Zimin Jenzer Motorsport 1:39.208 +1.204 27
25 22 Zoel Amberg Atech CRS GP 1:39.235 +1.231 25
26 6 Ivan Lukashevich Status Grand Prix 1:39.265 +1.261 45
27 29 Willi Steindl RSC Mucke Motorsport 1:39.295 +1.291 35
28 14 Conor Daly Carlin 1:39.666 +1.662 46
29 23 Thomas Hylkema Addax Team 1:39.774 +1.770 43
30 15 Tom Dillmann Carlin 1:39.282   33

Afternoon session times:

Pos #  Driver Team  Time  Gap  Laps
1 2 Valtteri Bottas Lotus ART 1:39.335   23
2 28 Lewis Williamson MW Arden 1:39.574 +0.239 41
3 11 Rio Haryanto Marussia Manor Racing 1:39.660 +0.325 38
4 3 James Calado Lotus ART 1:39.742 +0.407 24
5 5 Antonio Felix Da Costa Status Grand Prix 1:39.747 +0.412 22
6 7 Nico Muller Jenzer Motorsport 1:39.772 +0.437 22
7 18 Andrea Caldarelli Tech 1 Racing 1:39.812 +0.477 38
8 4 Alexander Sims Status Grand Prix 1:39.826 +0.491 26
9 1 Pedro Nunes Lotus ART 1:39.917 +0.582 30
10 26 Mitch Evans MW Arden 1:39.941 +0.606 45
11 10 Adrian Quaife-Hobbs Marussia Manor Racing 1:39.992 +0.657 26
12 27 Simon Trummer MW Arden 1:40.048 +0.713 41
13 15 Tom Dillmann Carlin 1:40.101 +0.766 25
14 20 Marlon Stockinger Atech CRS GP 1:40.157 +0.822 50
15 19 Tamas Pal Kiss Tech 1 Racing 1:40.173 +0.838 34
16 12 Matias Laine Marussia Manor Racing 1:40.182 +0.847 39
17 24 Gabby Chaves Addax Team 1:40.212 +0.877 29
18 31 Nigel Melker RSC Mucke Motorsport 1:40.245 +0.910 45
19 8 Maxim Zimin Jenzer Motorsport 1:40.275 +0.940 38
20 25 Daniel Morad Addax Team 1:40.303 +0.968 31
21 17 Aaro Vainio Tech 1 Racing 1:40.308 +0.973 30
22 21 Nick Yelloly Atech CRS GP 1:40.334 +0.999 27
23 14 Conor Daly Carlin 1:40.371 +1.036 31
24 9 Vittorio Ghirelli Jenzer Motorsport 1:40.407 +1.072 34
25 6 Ivan Lukashevich Status Grand Prix 1:40.564 +1.229 46
26 30 Michael Christensen RSC Mucke Motorsport 1:40.706 +1.371 42
27 16 Leonardo Cordeiro Carlin 1:40.710 +1.,375 32
28 22 Zoel Amberg Atech CRS GP 1:40.829 +1.494 39
29 29 Willi Steindl RSC Mucke Motorsport 1:40.908 +1.573 40
30 23 Thomas Hylkema Addax Team 1:41.549 +2.214 33