Super, j'ai une solution qui fonctionne "correctement" (POC) et qui
convient pour mon usage personnel.
J'ai posé la question pour savoir si je devais passer un peu de temps à
l'améliorer afin de la partager.

Tu peux tester, j'utilise 3 outils que j'ai du modifier (de façon crade):

- ino auxquel j'ai rajouté 2 commandes: build-tests, upload-tests parce que
j'utilise une arborescence de projet avec un dossier src, tests et build
avec les sous-dossiers src et tests.
Tu as juste besoin d'un fichier python qui vient wrapper ino:
https://gist.github.com/apieum/8eba241e80c0019bcfcd
que tu peux éditer pour changer tes répertoires.
et pour installer ino: $ sudo pip install ino

- ncore, que j'ai modifié pour lancer une seule commande et afficher
uniquement les évènements série.
le repo est ici: https://github.com/apieum/ncore c'est la branche
serialprint

Dans tes jamrules il faut supprimer le cflag -std=c++11 et peut être même
préciser -std=gnu++11
Je t'ai mis en ligne le jamfile et jamrules que j'utilise dans mon dossier
tests, il te faudra modifier quelques variables, notamment CORE_DIR pour
indiquer où se trouve tes sources de ncore.

- arduinounit dans 2 versions différentes, l'originale pour compiler sur
arduino et une modifiée que j'ai mis dans mon repo ncore dans le dossier
extras/arduinounit, de la branche serialprint.

Il te faut un compilateur gnuc et perforce jam (à la place de make).


TODO:
- upgrader ncore à la dernière version de la lib Arduino (plusieurs
fonctionnalités en patissent notament les interruptions... et je pense que
c'est ce qui bloque pour utiliser la version originale d'arduinounit)
- améliorer le scheduler et logger de ncore (si tu as beaucoup de tests il
te faudra peut-être modifier le fichier extras/runner.cpp )
- utiliser la version originale d'arduinounit (include et exclude ne
fonctionnent pas sur ncore et les assertions autres qu'avec des types
simples ne compilent pas à cause de Serial.print, il faut passer par bool
given a==b; assertTrue(given))


C'est encore expérimental, mais avoir le résultats de ses tests arduino en
moins d'une seconde c'est cool. ;)








Le 26 mai 2015 13:02, Enguerran <[email protected]> a écrit :

> Salut,
>
> Je n'avais pas encore creusé le sujet, mais ça m'intéresse fortement.
> Notamment pour uploader ensuite le programme dans un petit robot makeblock
> : tester sur le robot c'est long et fastidieux.
> Peu importe le format, mais je pense qu'une publication fera très bien
> l'affaire dans un premier temps.
>
> Je reste à disposition si besoin.
> Merci
>
> Enguerran
>
>
> On Friday, May 22, 2015 at 2:51:36 PM UTC+2, Grégory Salvan wrote:
>>
>> Hello,
>> est-ce qu'il y en a parmi vous qui font du TDD pour de l'arduino ?
>>
>> J'ai mis pas mal de temps à trouver une solution pour compiler les mêmes
>> tests sur mon pc (pour avoir un feedback rapide) puis en intégration
>> continu sur la board.
>> Je me demandais si ça vallait la peine d'en parler ou de publier quelque
>> chose...
>>
>  --
> Vous recevez ce message, car vous êtes abonné au groupe Google Groupes
> "Software Craftsmanship Toulouse".
> Pour vous désabonner de ce groupe et ne plus recevoir d'e-mails le
> concernant, envoyez un e-mail à l'adresse
> [email protected].
> Pour obtenir davantage d'options, consultez la page
> https://groups.google.com/d/optout.
>

-- 
Vous recevez ce message, car vous êtes abonné au groupe Google Groupes Software 
Craftsmanship Toulouse.
Pour vous désabonner de ce groupe et ne plus recevoir d'e-mails le concernant, 
envoyez un e-mail à l'adresse 
[email protected].
Pour plus d'options, visitez le site https://groups.google.com/d/optout .

Répondre à