TODO: Add description
For å kjøre tester har vi tre aliaser (shortcuts):
Denne kommandoen kjører alle "vanlige" tester uten å starte applikasjonen. Alle unit tester bør ikke være avhengige av noen andre moduler eller prosesser enn modulen man tester.
Denne kommandoen kjører alle tester markert med @tag:external
, men her starter man heller ikke applikasjonen,
så man må selv starte prosessene man trenger i setup av testen.
Kjører alle tester markert med @tag:distributed
og starter applikasjonen før testene kjøres.
I tillegg vil man starte opp et antall noder som også starter applikasjonen, samt et antall heissimualutorer.
Dette er for å teste ting som krever flere noder.
I tillegg har vi et par shortcuts:
Starter et antall simulatorer.
NB! Fungerer kun på mac dessverre Starter et antall simulatorer og åpner vinduet
Etter at man har enten startet simulatoren eller kjørt en test kommando som har startet et antall simulatorer kan man koble seg til simulatorene
med kommandoen tmux attach-session -t SimTest
Starter et antall noder. En mindre enn antall simulatorer
NB! Fungerer kun på mac dessverre Starter et antall noder og åpnet vinduet. En mindre enn antall simulatorer
Etter at man har enten startet cluster kan man koble seg til med
med kommandoen tmux attach-session -t ClusterTest
Vi har to moduler for å hjelpe til med testing:
-
Simulator
her er funksjonen
send_key(key, elevator \\ 0)
nyttig for å samhandle med simulatoren til heisene. -
Cluster
her er funksjonen
rpc(node, module, function, args)
nytting for å kalle på en funksjon på en vilkårlig node se dokumentasjon for:rpc.block_call
for mer info.
If available in Hex, the package can be installed
by adding elevator_project
to your list of dependencies in mix.exs
:
def deps do
[
{:elevator_project, "~> 0.1.0"}
]
end
Documentation can be generated with ExDoc and published on HexDocs. Once published, the docs can be found at https://hexdocs.pm/elevator_project.