internet things testing
Testarea internetului obiectelor (IoT):
Când o întrebare precum „Care sunt necesitățile de bază ale vieții” este aruncată asupra oamenilor, cei mai mulți dintre ei ar răspunde „Mâncare, adăpost, îmbrăcăminte”.
Dar, acesta a fost cazul înainte de un secol. Ființele umane au evoluat pentru a dezvolta o mână de necesități suplimentare pentru a trăi. Am evoluat pentru a ne face viața mai simplă, mai bună, mai ușoară.
cum să faci un plan de testare
Am încetat să folosim comutatoare pentru controlul luminilor, am încetat să plătim la chioșcuri pentru a depune taxe de trecere, ne-am monitorizat inteligent starea de sănătate, am urmărit mișcările vehiculelor mai eficient și multe în listă.
Cum o facem acum? Cum este atât de diferit?
Trebuie să le înțelegem mai întâi, după care putem învăța cum să le testăm.
Ce veți învăța:
- Ce este Internetul obiectelor (IoT)?
- Exemple IoT
- Tehnologie utilizată în IoT
- Testarea IoT
- Provocări de testare IoT
- Instrumente de testare IoT
- A rezuma
- Lectură recomandată
Ce este Internetul obiectelor (IoT)?
IoT este conexiunea vehiculelor, aparatelor de uz casnic, echipamentelor medicinale care utilizează electronice încorporate, microcipuri etc. pentru a colecta și a face schimb de date de un fel diferit, se numește IoT. Această tehnologie permite utilizatorului să controleze dispozitivele de la distanță printr-o rețea.
Exemple IoT
Unele dintre exemplele de IoT în implementarea vieții reale sunt după cum urmează:
# 1) În tehnologia purtabilă:
Gadgeturi purtabile precum benzile Fitbit și ceasurile Apple se sincronizează ușor cu dispozitivele mobile.
Acestea ajută la captarea informațiilor necesare, cum ar fi starea de sănătate, monitorizarea ritmului cardiac, activitatea de somn etc. Acestea ajută, de asemenea, la afișarea datelor, a notificărilor de pe dispozitivele mobile pe ele.
# 2) Infrastructură și dezvoltare:
Cu utilizarea unei aplicații precum CitySense , este mai ușor să obțineți datele de iluminare exterioară în timp real și pe baza acestora, luminile stradale sunt aprinse sau oprite. Există, de asemenea, diverse aplicații pentru a controla semnalele de trafic și disponibilitatea parcării într-un aspect sofisticat al orașului.
# 3) Sănătate:
Există numeroase aplicații pentru a monitoriza starea de sănătate a pacienților.
Pe baza datelor de referință, serviciile controlează dozajul medicamentelor la diferite ore ale zilei. Există aplicații precum UroSense care pot monitoriza nivelurile de lichide din corpul pacientului și, în funcție de necesitate, pot iniția transferul de lichide. În același timp, datele pot fi transmise fără fir către diferite părți interesate.
Tehnologie utilizată în IoT
Următoarele sunt câteva dintre cele mai utilizate tehnologii în IoT:
- RFID Etichete (Cod frecvență radio) și EPC (Cod produs electronic)
- NFC (Near Field Communication) este utilizat pentru a permite interacțiuni bidirecționale între dispozitivele electronice. Acest lucru este practic pentru smartphone-uri și este folosit în principal pentru a efectua tranzacții de plată fără contact.
- Bluetooth: Acesta este utilizat în cazul în care comunicațiile pe distanțe scurte sunt suficiente pentru a rezolva problema. Acest lucru este utilizat în cea mai mare parte în tehnologiile purtabile.
- Z-Wave: Aceasta este o tehnologie de comunicare RF cu putere redusă. Acesta este utilizat în principal pentru automatizarea casei, controlul lămpii etc.
- Wifi: Aceasta este cea mai des utilizată alegere pentru IoT. Când vă aflați pe o rețea LAN, acest lucru ajută la transferul de fișiere, date și mesaje fără probleme.
Testarea IoT
Să luăm un exemplu a unui sistem de urmărire a asistenței medicale în care instrumentul monitorizează sănătatea, ritmul cardiac, detaliile privind aportul de lichide și trimite un raport către medici. Aceste date sunt înregistrate în sistem și datele istorice pot fi vizualizate ori de câte ori este necesar.
Medicii pot iniția consumuri de medicamente, suplimente de lichide pe baza datelor. Acest lucru poate fi declanșat de la distanță de la oricare dintre dispozitivele (computere sau dispozitive mobile) la care este conectat dispozitivul medical.
Acum, pentru a testa o astfel de arhitectură, trebuie să parcurgem mai multe abordări de testare, cum ar fi;
Abordări de testare IoT
# 1) Utilizare:
- Trebuie să ne asigurăm că utilizabilitatea fiecărui dispozitiv utilizat aici.
- Dispozitivul de urmărire a asistenței medicale utilizat trebuie să fie suficient de portabil pentru a fi mutat în diferite segmente ale medicului.
- Echipamentul trebuie să fie suficient de inteligent pentru a împinge nu numai notificările, ci și mesajele de eroare, avertismentele etc.
- Sistemul ar trebui să aibă opțiunea de a înregistra toate evenimentele pentru a oferi claritate utilizatorilor finali. Dacă nu este capabil să facă acest lucru, sistemul ar trebui să-i împingă și pe aceștia într-o bază de date pentru ao stoca.
- Notificările ar trebui să fie afișate și manipularea afișajului trebuie să se facă în mod corespunzător pe dispozitive (computere / dispozitive mobile).
- Utilizarea în ceea ce privește afișarea datelor, prelucrarea datelor, împingerea sarcinilor de lucru de pe dispozitive ar trebui testate cu atenție.
=> Citiți mai multe despre testele generale de utilizare Aici
cel mai bun software de captură de ecran gratuit pentru Windows 10
# 2) Securitate IoT:
- Provocări de securitate IoT: IoT este centrat pe date în care toate dispozitivele / sistemul conectat funcționează pe baza datelor disponibile.
- Când vine vorba de fluxul de date între dispozitive, există întotdeauna șansa ca datele să poată fi accesate sau citite atunci când sunt transferate.
- Din punct de vedere al testării, trebuie să verificăm dacă datele sunt protejate / criptate atunci când sunt transferate de la un dispozitiv la altul.
- Oriunde există o interfață de utilizare, trebuie să ne asigurăm că există o protecție prin parolă.
=> Citiți mai multe despre testarea generală de securitate Aici
# 3) Conectivitate:
- Deoarece este o soluție medicală, conectivitatea joacă un rol vital.
- Sistemul trebuie să fie disponibil tot timpul și ar trebui să aibă o conectivitate perfectă cu părțile interesate.
- Conform conectivității, două lucruri sunt foarte importante de testat;
- Conectivitatea, transferul de date, primirea sarcinilor de lucru de pe dispozitive ar trebui să fie perfecte atunci când conexiunea este ACTIVĂ și se execută.
- Cealaltă condiție este scenariul conexiunii. Nu contează cât de robust este sistemul și rețeaua, există șanse ca sistemul să rămână offline. Fiind un tester, ar trebui să testăm și condițiile offline. Odată ce sistemul nu este disponibil în rețea, trebuie să existe o alertă care să îi poată solicita pe medici, astfel încât aceștia să poată începe să monitorizeze stările de sănătate manual, nu în funcție de sistem până când acesta nu este activat. Pe de altă parte, trebuie să existe un mecanism în sistem care să poată stoca toate datele în el în perioada offline. Odată ce sistemul este online, toate acele date ar trebui să fie propagate. Pierderea datelor nu ar trebui să existe în niciun caz.
# 4) Performanță:
- Când vorbim despre un sistem pentru un domeniu medical, trebuie să ne asigurăm că sistemul este suficient de scalabil pentru întregul spital.
- Când se efectuează testarea, se face pentru 2-10 pacienți odată, iar datele sunt propagate la 10-20 de dispozitive.
- Când întregul spital este conectat și 180-200 de pacienți sunt conectați la sistem, datele propagate sunt mult mai mari decât datele testate.
- Ca testeri, trebuie să ne asigurăm că sistemul funcționează la fel, chiar dacă datele adăugate sunt propagate.
- De asemenea, ar trebui să testăm utilitarul de monitorizare pentru a afișa utilizarea sistemului, consumul de energie, temperatura etc.
# 5) Testarea compatibilității:
- Privind arhitectura complexă a unui sistem IoT, testarea compatibilității este o necesitate.
- Elemente de testare, cum ar fi, mai multe versiuni ale sistemului de operare, tipuri de browser și versiuni respective, generații de dispozitive, moduri de comunicare ( De ex. Bluetooth 2.0, 3.0) este necesar pentru testarea compatibilității IoT.
=> Citiți mai multe despre testarea generală de securitate Aici
# 6) Testare pilot:
- În ceea ce privește IoT, testarea pilot este o necesitate.
- Doar testarea în laborator asigură faptul că produsul / sistemul funcționează bine. Însă, acest lucru se poate da rău atunci când este expus la condiții / pași / scenarii în timp real.
- În timpul testării pilot, sistemul este expus unui număr limitat de utilizatori în domeniul real. Utilizează aplicația și oferă feedback cu privire la sistem.
- Aceste comentarii sunt utile, făcând aplicația suficient de robustă pentru implementarea producției.
# 7) Testare de reglementare:
- Acesta fiind un sistem de sănătate trebuie să treacă prin mai multe puncte de control de reglementare / conformitate.
- Gândiți-vă la un scenariu în care produsul trece prin toți pașii de testare, dar nu reușește în lista finală de verificare a conformității (testarea efectuată de organismul de reglementare).
- Este o practică mai bună pentru a obține cerințele de reglementare la începutul ciclului de dezvoltare în sine. Același lucru ar trebui făcut parte din lista de verificare a testării.
- Procedând astfel, ne asigurăm că produsul este certificat și pentru lista de control reglementată.
# 8) Testarea upgrade-ului:
- IoT este o combinație de protocoale multiple, dispozitive, sisteme de operare, firmware, hardware, straturi de rețea etc.
- Când se efectuează o actualizare, fie pentru sistem, fie pentru oricare dintre elementele implicate, după cum s-a menționat mai sus, ar trebui efectuate teste de regresie aprofundate / strategia ar trebui adoptată pentru a depăși problemele legate de actualizare.
Provocări de testare IoT
Provocările cu care se confruntă un tester în IoT sunt următoarele:
# 1) Software-hardware Plasă
IoT este o arhitectură, care este strâns legată de diferite componente hardware și software. Nu doar aplicațiile software fac sistemul, ci și cele hardware, senzorii, gateway-urile de comunicații etc. joacă un rol vital.
Numai testarea funcționalității nu ajută la certificarea completă a sistemului. Există întotdeauna o dependență una de cealaltă în ceea ce privește mediul, transferul de date etc. Deci, devine o treabă plictisitoare în comparație cu testarea unui sistem generic (numai componentă software / hardware).
# 2) Modulul de interacțiune a dispozitivului
Deoarece aceasta este o arhitectură între diferite seturi de hardware și software, devine obligatoriu ca acestea să vorbească între ele în timp real / aproape în timp real. Când ambii se integrează între ei, lucruri precum securitatea, compatibilitatea inversă, problemele de actualizare devin o provocare pentru echipa de testare.
# 3) Testarea datelor în timp real
Așa cum am discutat mai devreme că testarea pilot / testarea de reglementare este obligatorie pentru un astfel de sistem, devine, de asemenea, foarte dificil să obțineți astfel de date.
A fi în echipa de testare, a obține puncte de control de reglementare sau a implementa sistemul în pilot este foarte dificil. Pasul devine și mai dificil dacă sistemul este legat de asistență medicală, conform exemplului nostru. Deci, aceasta rămâne o mare provocare pentru echipa de testare.
# 4) UI
IoT este răspândit pe dispozitive aparținând fiecărei platforme (iOS, Android, Windows, linux). Acum, testarea acestui lucru pe dispozitive se poate face, dar testarea acestuia pe toate dispozitivele posibile este aproape imposibilă.
Nu putem omite posibilitatea ca accesul la interfața de utilizare să fie accesat de pe un dispozitiv pe care nu îl posedăm sau îl simulăm. Aceasta este o provocare greu de depășit.
# 5) Disponibilitatea rețelei
Conexiunea la rețea joacă un rol vital, deoarece IoT se referă la datele comunicate cu viteze mai mari tot timpul. Arhitectura IoT trebuie testată în toate tipurile de conectivitate / viteză de rețea.
Pentru a testa acest lucru, simulatoarele de rețea virtuală sunt utilizate în principal pentru a varia sarcina rețelei, conectivitatea, stabilitatea etc. Dar datele / rețeaua în timp real reprezintă întotdeauna un scenariu nou, iar echipa de testare nu știe unde se va dezvolta blocajul pe termen lung.
Instrumente de testare IoT
Există diverse instrumente care sunt utilizate în timpul testării sistemelor IoT.
Acestea pot fi clasificate în funcție de țintă și sunt prezentate după cum urmează:
# 1) Software:
- Wireshark : Aceasta este o aplicație open source utilizată pentru a monitoriza traficul din interfață, adresele gazdei sursă / destinație etc.
- Tcpdump : Aceasta face o treabă similară cu cea a Wireshark, cu excepția faptului că nu are o interfață grafică. Acesta este un utilitar bazat pe linia de comandă care ajută utilizatorul să afișeze TCP / IP și alte pachete care sunt transmise sau primite printr-o rețea.
# 2) Hardware:
- Dongle JTAG: Acest lucru este similar cu un depanator în aplicațiile PC. Acest lucru ajută la depanarea codului platformei țintă și afișarea variabilă pas cu pas.
- Osciloscop de stocare digitală : Aceasta este utilizată pentru a verifica diferite evenimente cu timbre, erori la sursa de alimentare, verificarea integrității semnalului.
- Software definit de radio : Acesta este utilizat pentru a emula receptorul și emițătorul pentru o gamă largă de gateway-uri wireless.
Pentru lumea în curs de dezvoltare din jurul nostru, IoT este o piață în creștere și are o mulțime de oportunități. Momentul nu este departe când IoT devine esențial pentru ca testerii să supraviețuiască în lumea dezvoltării.
Gadgetul activat IoT, aplicația pentru dispozitiv inteligent și modulul de comunicare joacă un rol vital în studierea și evaluarea performanței și comportamentului diferitelor servicii IoT.
Proiectarea slabă a dispozitivelor și serviciilor compatibile cu IoT poate împiedica funcționarea corectă a aplicației și, la rândul său, poate afecta negativ experiența utilizatorului final.
A rezuma
Abordarea testării IoT poate fi diferită pe baza sistemului / arhitecturii implicate. Testerii ar trebui să se concentreze mai mult pe abordarea Test-As-A-User (TAAS) decât pe testarea bazată pe cerințe.
cel mai bun software voce-text
Un alt jucător important în testarea IoT este testarea integrării. IoT are succes dacă planul de testare a integrării este suficient de precis și robust pentru a detecta defecte în sistem.
Testarea IOT poate fi o treabă dificilă / provocatoare, dar este, de asemenea, foarte interesant pentru echipa de testare să certifice o rețea atât de complicată de dispozitive, protocoale, hardware, sisteme de operare, firmware etc.
Despre autor: Acesta este un post de invitat de Subhasis. Lucrează ca o echipă de conducere, cu peste 8 ani de experiență corporativă în companii Fortune 500 IT în domeniul asigurării calității software-ului, dezvoltării software-ului și experienței de testare.
ACTUALIZAȚI: Am adăugat un subiect Infografic util pe tema IoT. Mulțumită webeeky.com pentru că ne-ai împărtășit acest lucru.
Postați întrebările / comentariile dvs. IoT mai jos.
Lectură recomandată
- Cele mai bune instrumente de testare software 2021 (Instrumente de automatizare a testelor de calitate)
- Testarea SaaS: provocări, instrumente și abordare de testare
- Descărcare eBook Descărcare Primer
- Cele mai bune 11 instrumente de automatizare pentru testarea aplicațiilor Android (instrumente de testare a aplicațiilor Android)
- Diferențele dintre testarea unitară, testarea integrării și testarea funcțională
- Testare automată de regresie: provocări, proces și pași
- Testarea încărcării cu tutoriale HP LoadRunner
- Provocări de testare manuală și de automatizare