Hoe het bouwen van een aangepaste "bed of nails" tester voor uw 3D-printer elektronica (13 / 14 stap)

Stap 13: Tester software


Als u een RAMBo board echter niet gebruikt, moet u zich aan te passen de software aan uw Raad van bestuur. De software werd onlangs herschreven van kras om een eenvoudig poort in de andere boards. Basiskennis van Python programmeren is wel vereist.

Het nieuwe ontwerp zorgt voor een meer modulaire aanpak waar elke proef wordt vertegenwoordigd door een uniek object en elk testtype wordt uitgevoerd in de eigen klas. Een paar basisklassen zijn beschikbaar om te zorgen voor de basisfunctionaliteit van de testgevallen, vastleggen mechanisme en testen van de logica.

De tests / module bevat basisklassen en testen modules. De basisklassen zijn:

  • Proefproces: Dit is de basisklasse voor een test-case geïmplementeerd om te testen van een specifieke functie
  • TestContext: Dit is de basisklasse voor de context gegeven aan de proeven terwijl ze worden uitgevoerd
  • TestRunner: Dit is de basisklasse voor de runner-klasse die de testverzameling elke test wordt uitgevoerd.

Er zijn een paar algemene tests, zoals de TestGPIO in gpio.py en TestAnalog analog.py die zelf hebben meer specifieke testen klassen die zijn afgeleid van hen zoals TestMosfets en TestEndstops die zijn afgeleid van TestGPIO en TestThermistors, TestVRefs en TestSupplyRails die uit TestAnalog voortvloeien. Er zijn ook enkele specifieke tests zoals de ProgramFirmware , die een test-wrapper voor avrdude is en TestMotors zal testen stappenmotoren en controleer of dat ze werken allemaal goed.

Ter uitvoering van een nieuwe test, moet u afgeleid van de klasse van de TestCase en negeren de methoden _test en _verify . De _test methode moet uitvoeren van de test met wat is beschikbaar in het context-object (meer daarover later) terwijl de methode _verify moet zelf de 'self.status' naar een waarde in de TestStatus enum.

De context-object dat wordt doorgegeven aan de methoden _test en _verify is een object dat is afgeleid van TestContext, het doel ervan is om rond de informatie tussen de tests die kunnen worden gebruikt door de testcases. Bijvoorbeeld, is de interface voor toegang tot de DUT is beschikbaar in context.target , terwijl de controller beschikbaar als context.controller is. Ook de meeste tests zal zijn vereist toegang aan specifieke velden van het object context.pinmapping.

U moet een klasse ontlenen aan TestContext om de vereiste informatie verstrekken aan test cases. Meest in het bijzonder in de afgeleide klasse moet u een self.pinmapping -object instantiëren. Wilt u stroom aan/uit de voeding aan voordat en nadat een test uitgevoerd bijvoorbeeld, kunt u het doen door het overschrijven van de methoden TestingStarted en TestingEnded .

Ten slotte moet u een nieuwe klasse voor uw Raad van bestuur die is afgeleid van TestRunnerimplementeren. Dit men is eenvoudig, dat u hoeft enkel een self.tests -variabele met een lijst van proefproces objecten definiëren en terug te keren van de context die u hebt gemaakt via de eigenschap context .

U kunt vervolgens uw TestRunner -object maken en roep de methode Run om alle tests uitvoeren, of kun je het een lijst van specifieke tests uit te voeren als u dat wenst.

Er is veel meer dat kan worden gezegd over de software, zoals dodelijke, verplichte, _finally, test gevallen, of het configureren van de logging systeem als een database wilt gebruiken, of hoe om de samenvatting van de uitvoering van de proeven te krijgen, of om te schakelen van specifieke tests, wat elke test status betekent, enz... Echter de broncode is vrij eenvoudig en goed gedocumenteerd en je kunt een heleboel dingen ontdekken door het lezen van de code.

Ik laat u met een mockup voor een potentiële GUI voor de test software waarin de GUI kan dynamisch worden gegenereerd vanuit een willekeurig exemplaar van de TestRunner en die geeft controle van elke proef aan de gebruiker.

Gerelateerde Artikelen

Hoe het bouwen van een platform bed

Hoe het bouwen van een platform bed

het klopt dat er een heleboel online handelaren bieden ruime keuze aan bedden van het platform, maar wat als je echt niet kan vinden dat perfect past bij uw behoeften?Dan wilt u misschien een te bouwen voor jezelf, omdat je enerzijds weet precies wat
Hoe het bouwen van een aangepaste PC (UPDATED!)

Hoe het bouwen van een aangepaste PC (UPDATED!)

Alright, dus is het weer MrNintendo. Ik heb vrijwel al mijn modding (behalve Case Mods case mods en spullen) gedaald en overgeschakeld naar ontwerp/upgrade/reparatie van de computer. Ik heb een paar Instructables over het bouwen van een computer, maa
Hoe het bouwen van een aangepaste geweer rek

Hoe het bouwen van een aangepaste geweer rek

ik nodig voor het maken van een aangepaste formaat geweer rek om te passen in een kast die was niet wordt gebruikt. U kunt dit ontwerp voor vrijwel elke toepassing met voldoende diepte aan de geweren.Dit heb ik gemaakt met behulp van de tools en voor
Hoe het bouwen van een aangepaste plank eenheid: Recycling op hetzelfde moment

Hoe het bouwen van een aangepaste plank eenheid: Recycling op hetzelfde moment

Hallo en welkom!Dit Instructable bestaan uit een How to Build een aangepaste plank eenheid; en recyling op hetzelfde moment. Het is een idee van de spin-off van Innerbubba van insperational Instructable 60-minuut-boekenkast. Dus zoals altijd ik kredi
Hoe het bouwen van een aangepaste fiets

Hoe het bouwen van een aangepaste fiets

ik zag een toevoegen (http://www.dreambike.com/home.htm) onlangs voor aangepaste fietsen online en ik dacht dat ik weet hoe te doen dit te fietsen heb ik al eigen dus dit een groot project, is hebt u een stuk van fietsen rondslingeren u kon maken een
Hoe het bouwen van een Awesome stoep met gerecycled hout voor slechts $50.00

Hoe het bouwen van een Awesome stoep met gerecycled hout voor slechts $50.00

Na het lezen van die titel u vraagt zich misschien af, waarom zou iemand maken een trottoir van hout? Nou, zijn er een paar zeer goede redenen om dat te doen.Een beetje geschiedenisMeer dan 25 jaar geleden mijn houten trottoir begon als een experimen
Hoe het bouwen van een externe operationele ALL-Terrain Robot voor onder 300 dollars!

Hoe het bouwen van een externe operationele ALL-Terrain Robot voor onder 300 dollars!

Heb je ooit die films met robots in het? heb je ooit willen eigen zelf en niet wilt betalen paar duizend voor 1? Nou, ik zal je laten zien hoe een te maken en kost je minder dan 300 dollar dankzij th boek 101 gadgets van de spion voor het kwade genie
Hoe het bouwen van een "Flexi-Perch" eekhoorn-proof birdfeeder voor $10 of minder

Hoe het bouwen van een "Flexi-Perch" eekhoorn-proof birdfeeder voor $10 of minder

wie zet een birdfeeder hoop om te genieten van de vogels zal binnenkort het aantrekken van ongewenste gasten - eekhoorns. Deze cute maar roofzuchtige kleine monsters chase uit de vogels, eten alle zaden en birdfeeders naar bits kunt kauwen.Ik heb gep
Hoe het bouwen van een aangepaste pine-logboektabel

Hoe het bouwen van een aangepaste pine-logboektabel

Heres een ander Instructable tonen hoe gemakkelijk het is to make cool meubels uit natuurlijke ponderosa pine!  Deze tabel is echter gebouwd zonder nagels, schroeven, of elke andere metalen bevestigingsmiddelen.  Hier gaan we...Stap 1: materialen...
Hoe het bouwen van een snelle en eenvoudige pneumatische prop voor Halloween

Hoe het bouwen van een snelle en eenvoudige pneumatische prop voor Halloween

een tijdje geleden, iemand gepost een instructable op een Halloween pneumatische die "schoot" uit een giftig afval kan.  Ik wilde bouwen, maar ik heb niet een van de apparaten en ik ben enigszins zuinig dus ik uiteengezet te zien als ik zou kunn
Hoe het bouwen van een huis gemaakt Coil kronkelende Machine voor Bifilar Trifilar spoelen en daarna

Hoe het bouwen van een huis gemaakt Coil kronkelende Machine voor Bifilar Trifilar spoelen en daarna

dit is een Video van de Coil kronkelende machine die ik heb gemaakt, meestal zetten samen met behulp van schroot items, alleen een paar dingen werden gekocht in de store (Verdeeldozen, Counter), de rest ik afkomstig uit een magnetron, schroot hout ha
Hoe het bouwen van een vrachtwagen hotrod in 3 gemakkelijke stappen

Hoe het bouwen van een vrachtwagen hotrod in 3 gemakkelijke stappen

In dit instructable I 'm gonna u kennismaken met het programma knippen. Volg mee als we een hotrod van start bouwen tot finish. We hadden wat hulp van beroemdheid en vele, vele mensen die vrijwillig dit idee tot leven te brengen. De bovenstaande foto
Hoe het bouwen van een 1 deel gebonden zand schimmel

Hoe het bouwen van een 1 deel gebonden zand schimmel

dit is hoe het bouwen van een gekleefde 1 deel zand mal voor het gieten van metaal. Ik maakte dit op Techshop. www.techshop.WSStap 1: Stap 1: Maak een patroon Eerste stap in het creëren van een gekleefde zand schimmel is het creëren van een patroon t
Hoe het bouwen van een kid's loft bed

Hoe het bouwen van een kid's loft bed

Gebouw van een loft bed voor mijn dochter was een van mijn favoriete DIY projecten. En het was iets wat die ze me en Theresa kreeg te maken en samen genieten. Ze is nu 13. Dingen zijn veranderd. Maar ik hou van dit project, dus ik ben blij dat ik het