Towards Test-Driven Development for Mobile Robots
Luc Fabresse, Jannik Laval and Noury Bouraqadi http://car.mines-douai.fr
@SDIR - ICRA - May 2013
Towards Test-Driven Development for Mobile Robots @SDIR - ICRA - - - PowerPoint PPT Presentation
Towards Test-Driven Development for Mobile Robots @SDIR - ICRA - May 2013 Luc Fabresse, Jannik Laval and Noury Bouraqadi http://car.mines-douai.fr Outline 1. Test-driven Development (TDD) 2. TDD for Mobile Software Robotics 3. BoTest 4.
Luc Fabresse, Jannik Laval and Noury Bouraqadi http://car.mines-douai.fr
@SDIR - ICRA - May 2013
!""#$%%&'()*+,-./012'+)3( 4'56789:;6<=>?@6/6?A@B
2
!""#$%%&'()*+,-./012'+)3( 4'56789:;6<=>?@6/6?A@B
3
!""#$%%&'()*+,-./012'+)3( 4'56789:;6<=>?@6/6?A@B
4
!""#$%%&'()*+,-./012'+)3( 4'56789:;6<=>?@6/6?A@B
5
!""#$%%&'()*+,-./012'+)3( 4'56789:;6<=>?@6/6?A@B
6
!""#$%%&'()*+,-./012'+)3( 4'56789:;6<=>?@6/6?A@B
7
!""#$%%&'()*+,-./012'+)3( 4'56789:;6<=>?@6/6?A@B
8
!""#$%%&'()*+,-./012'+)3( 4'56789:;6<=>?@6/6?A@B
9
!""#$%%&'()*+,-./012'+)3( 4'56789:;6<=>?@6/6?A@B
10
!""#$%%&'()*+,-./012'+)3( 4'56789:;6<=>?@6/6?A@B
11
!""#$%%&'()*+,-./012'+)3( 4'56789:;6<=>?@6/6?A@B
12
!""#$%%&'()*+,-./012'+)3( 4'56789:;6<=>?@6/6?A@B
13
!""#$%%&'()*+,-./012'+)3( 4'56789:;6<=>?@6/6?A@B
14
!""#$%%&'()*+,-./012'+)3( 4'56789:;6<=>?@6/6?A@B
15
!""#$%%&'()*+,-./012'+)3( 4'56789:;6<=>?@6/6?A@B
16
!""#$%%&'()*+,-./012'+)3( 4'56789:;6<=>?@6/6?A@B
17
!""#$%%&'()*+,-./012'+)3( 4'56789:;6<=>?@6/6?A@B
(http://www.pharo-project.org)
18
!""#$%%&'()*+,-./012'+)3( 4'56789:;6<=>?@6/6?A@B
19
Specifications / Requirements
!""#$%%&'()*+,-./012'+)3( 4'56789:;6<=>?@6/6?A@B
20
Test
!""#$%%&'()*+,-./012'+)3( 4'56789:;6<=>?@6/6?A@B
Test
21
!""#$%%&'()*+,-./012'+)3( 4'56789:;6<=>?@6/6?A@B
Test
22
!""#$%%&'()*+,-./012'+)3( 4'56789:;6<=>?@6/6?A@B
Test
23
!""#$%%&'()*+,-./012'+)3( 4'56789:;6<=>?@6/6?A@B
Test
24
!""#$%%&'()*+,-./012'+)3( 4'56789:;6<=>?@6/6?A@B
25
!""#$%%&'()*+,-./012'+)3( 4'56789:;6<=>?@6/6?A@B
26
!""#$%%&'()*+,-./012'+)3( 4'56789:;6<=>?@6/6?A@B
27
!""#$%%&'()*+,-./012'+)3( 4'56789:;6<=>?@6/6?A@B
28
!""#$%%&'()*+,-./012'+)3( 4'56789:;6<=>?@6/6?A@B
29
!""#$%%&'()*+,-./012'+)3( 4'56789:;6<=>?@6/6?A@B
30
PBLaserTest
!""#$%%&'()*+,-./012'+)3( 4'56789:;6<=>?@6/6?A@B
31
!""#$%%&'()*+,-./012'+)3( 4'56789:;6<=>?@6/6?A@B
32
!""#$%%&'()*+,-./012'+)3( 4'56789:;6<=>?@6/6?A@B
33
!""#$%%&'()*+,-./012'+)3( 4'56789:;6<=>?@6/6?A@B
34
!""#$%%&'()*+,-./012'+)3( 4'56789:;6<=>?@6/6?A@B
35
the robot should move straight 4m with 3% of error at most
Specifications / Requirements
testStraightLineMotion
...
!""#$%%&'()*+,-./012'+)3( 4'56789:;6<=>?@6/6?A@B
36
the robot should move straight 4m with 3% of error at most
Specifications / Requirements
testStraightLineMotion
...
!""#$%%&'()*+,-./012'+)3( 4'56789:;6<=>?@6/6?A@B
37
the robot should move straight 4m with 3% of error at most
Specifications / Requirements
testStraightLineMotion
...
1 run, 1 passes
!""#$%%&'()*+,-./012'+)3( 4'56789:;6<=>?@6/6?A@B
38
the robot should move straight 4m with 3% of error at most
Specifications / Requirements
testStraightLineMotion
...
1 run, 1 passes
1 run, 0 passes, 1 requirementFailure
!""#$%%&'()*+,-./012'+)3( 4'56789:;6<=>?@6/6?A@B
39
the robot should move straight 4m with 3% of error at most
Specifications / Requirements
testStraightLineMotion
...
1 run, 1 passes
1 run, 0 passes, 1 requirementFailure
!""#$%%&'()*+,-./012'+)3( 4'56789:;6<=>?@6/6?A@B
40
Requirements are executed first
!""#$%%&'()*+,-./012'+)3( 4'56789:;6<=>?@6/6?A@B
41
!""#$%%&'()*+,-./012'+)3( 4'56789:;6<=>?@6/6?A@B
42
1 run, 0 passes, 1 requirementFailure
!""#$%%&'()*+,-./012'+)3( 4'56789:;6<=>?@6/6?A@B
43
Robotics Software development would benefit from TDD Tool support is needed
!""#$%%&'()*+,-./012'+)3( 4'56789:;6<=>?@6/6?A@B
43
BoTest Write repeatable and reusable tests Testers in the loop Support expressing dependencies between tests Run tests based on dependencies
!""#$%%&'()*+,-./012'+)3( 4'56789:;6<=>?@6/6?A@B
44
Luc Fabresse, Jannik Laval and Noury Bouraqadi
!"#$%&'()*&#$%&'(+',-(#./01&,)2" @SDIR - ICRA - May 2013
http://car.mines-douai.fr/2013/03/postdoc-position/
More infos:
Keywords: Robotics Software, Agile development, Dynamic Languages, ...
Starting: ~Sept 2013