Kiểm thử mạng lưới vạn vật kết nối Internet (Internet of Things - IoT)
Bài đăng này đã không được cập nhật trong 3 năm
1. Mạng lưới vạn vật kết nối Internet (IoT) là gì?
IoT là sự kết nối của phương tiện, thiết bị gia dụng, trang thiết bị y tế sử dụng điện tử nhúng, vi mạch … có khả năng truyền tải và trao đổi thông tin, dữ liệu qua mạng. Công nghệ này cho phép người dùng có thể điều khiển thiết bị từ xa thông qua mạng.
Ví dụ về mạng lưới vạn vật kết nối (IoT)
Một vài ví dụ về mạng lưới vạn vật kết nối trong cuộc sống thực:
- Trong các thiết bị đeo được
Các thiết bị đeo được như đồng hồ Apple, được đồng bộ hóa một cách dễ dàng với thiết bị di động. Những thông tin này giúp thu thập các thông tin cần thiết như sức khoẻ, theo dõi nhịp tim, hoạt động ngủ… Chúng cũng giúp hiển thị dữ liệu, nhận thông báo từ các thiết bị di động
- Cơ sở hạ tầng và phát triển.
Với việc sử dụng một ứng dụng như CitySense, sẽ dễ dàng lấy được dữ liệu chiếu sáng ngoài trời theo thời gian thực và dựa trên các đèn này, đèn đường được bật hoặc tắt. Ngoài ra còn có các ứng dụng khác nhau để kiểm soát tín hiệu giao thông và chỗ đậu xe theo cách bố trí phức tạp của thành phố.
- Y tế
Có rất nhiều ứng dụng để theo dõi điều kiện sức khoẻ của bệnh nhân. Dựa vào dữ liệu được đánh giá, các dịch vụ kiểm soát liều lượng thuốc vào các thời điểm khác nhau trong ngày. Có những ứng dụng như UroSense có thể theo dõi mức chất lỏng trong cơ thể bệnh nhân và dựa trên nhu cầu có thể bắt đầu việc truyền dịch chất lỏng. Đồng thời, dữ liệu có thể được truyền đi không dây tới các bên liên quan khác nhau.
2.Các kĩ thuật được sử dụng trong mạng lưới vạn vật kết nối Internet (IoT)
Sau đây là một vài kĩ thuật đã được sử dụng trong IoT
- RFID [Radio Frequency Code] tags và EPC [Electronic Product Code]
- NFC [Near Field Communication]: được sử dụng để cho phép tương tác hai chiều giữa các thiết bị điện tử.
- Bluetooth: Được sử dụng khi các thiết bị giao tiếp ở khoảng cách ngắn.
- Z-Wave: Đây là công nghệ giao tiếp RF năng lượng thấp. Nó chủ yếu sử dụng trong thiết bị tự động trong nhà, điều khiển đèn…..
- WiFi: Đây là công nghệ được sử dụng phổ biến trong IoT giúp truyền files, dữ liệu và tin nhắn
3. Kiểm thử mạng lưới vạn vật kết nối
Chúng ta hãy lấy ví dụ về một hệ thống theo dõi chăm sóc sức khoẻ y tế, trong đó dụng cụ này theo dõi tình trạng sức khoẻ, nhịp tim, chi tiết nạp dịch và gửi báo cáo cho các bác sĩ. Dữ liệu đó được ghi lại trong hệ thống và dữ liệu lịch sử có thể được xem bất cứ khi nào có yêu cầu.
Các bác sĩ có thể theo dõi lượng thuốc, bổ sung chất lỏng dựa trên dữ liệu. Điều này có thể được kích hoạt từ xa từ bất kỳ thiết bị nào [máy tính hoặc thiết bị di động] mà thiết bị y tế được kết nối tới.
Các phương pháp tiếp cận kiểm thử mạng lưới vạn vật kết nối
#1) Tính khả dụng
Chúng ta cần chắc chắn về khả năng sử dụng của mỗi thiết bị sử dụng Các thiết bị theo dõi sức khỏe y tế nên cơ động để có thể di chuyển tới các phân đoạn khác nhau Các trang thiết bị không chỉ gửi và nhận thông báo mà còn các tin nhắn lỗi, cảnh báo… Hệ thống nên có tùy chọn để lưu lại tất cả sự kiện, cung cấp đầy đủ thông tin cho người dùng cuối. Các thông báo nên được hiển thị và xử lý chính xác trên tất cả các thiết bị Có khả năng hiển thị, xử lý dữ liệu… phải được kiểm tra một cách kĩ lưỡng
#2) Kiểm thử an toàn
Thách thức của kiểm thử an toàn - IoT security: IoT là trung tâm dữ liệu, nơi mà tất cả các thiết bị/ hệ thống được kết nối hoạt động dựa trên những dữ liệu có sẵn Khi nói đến luồng dữ liệu giữa các thiết bị, luôn có cơ hội để có thể truy cập hoặc đọc dữ liệu Từ góc độ kiểm thử, chúng ta cần kiểm tra liệu dữ liệu đã được bảo vệ, mã hóa khi truyền từ một thiết bị tới thiết bị khác hay không? Bất cứ nơi nào có giao diện người dùng, chúng ta cần chắc chắn rằng có mật khẩu bảo vệ trên đó.
#3) Khả năng kết nối
Vì đây là hệ thống theo dõi sức khỏe, do đó khả năng kết nối đóng một vai trò quan trọng. Hệ thống phải luôn sẵn sàng và có kết nối liền mạch với các bên liên quan. Có hai điều rất quan trọng khi kiểm thử: Kết nối, truyền dữ liệu, nhận nhiệm vụ công việc từ thiết bị này sang thiết bị khác cần phải được liền mạch, không gián đoạn. Cần phải kiểm tra các điều kiện ngoại tuyến (offline). Khi hệ thống không được kết nối mạng, cần phải có cảnh báo có thể nhắc nhở các bác sĩ theo dõi các điều kiện sức khỏe theo cách thủ công, không phụ thuộc vào hệ thống cho đến khi nó được kết nối mạng trở lại. Mặc khác phải có cơ chế để có thể lưu trữ tất cả dữ liệu trong thời gian ngoại tuyến (offline). Khi hệ thống được kết nối mạng trở lại, tất cả các dữ liệu đó cần phải được truyền đi, đảm bảo không mất mát dữ liệu ở bất kì điều kiện nào.
#4) Hiệu năng (Performance)
Cần đảm bảo hệ thống có khả năng mở rộng. Khi kiểm thử được thực hiện, cần thực hiện cho 2-10 bệnh nhân tại một thời điểm và dữ liệu được truyền từ 10-20 thiết bị. Khi toàn bộ bệnh viện được kết nối và 180-200 bệnh nhân được kết nối với hệ thống, dữ liệu được truyền đi sẽ lớn hơn nhiều so với dữ liệu đã được kiểm tra. Kiểm thử viên cần phải đảm bảo hiệu năng của hệ thống là như nhau mặc dù dữ liệu truyền đi đã lớn hơn.
#5) Kiểm tra khả năng tương thích
Nhìn vào kiến trúc phức tạp của 1 hệ thống IoT, việc kiểm tra khả năng tương thích là điều cần thiết. Các mục cần kiểm tra như: nhiều phiên bản hệ điều hành, nhiều loại trình duyệt vvaf các phiên bản tương thích, các thế hệ thiết bị, các chế độ liên lạc (bluetooth 2.0, 3.0) …
#6) Kiểm thử thí điểm
Hệ thống IoT có rất nhiều thiết bị kết nối với nhau, vì thế kiểm thử thí điểm là cần thiết. Trong quá trình thử nghiệm thí điểm, hệ thống được tiếp xúc với một số lượng hạn chế người dùng trong lĩnh vực thực sự. Họ sử dụng ứng dụng và đưa ra các phản hồi về hệ thống. Những ý kiến này có ích để làm cho ứng dụng mạnh lên để có thể triển khai sản xuất
#7) Kiểm thử nâng cấp (upgrade testing)
IoT là sự kết hợp của nhiều giao thức, thiết bị, hệ điều hành, phần cứng, phần mềm, các tầng mạng… Khi có sự nâng cấp, cần phải thực hiện kiểm thử hồi quy để khắc phục các vấn đề liên quan đến việc nâng cấp.
4. Những thách thức trong kiểm thử mạng lưới vạn vật kết nối (IoT)
#1) Phần cứng - phần mềm
IoT là một kiến trúc, được kết hợp chặt chẽ giữa các thành phần phần cứng và phần mềm khác nhau. Nó không chỉ là ứng dụng phần mềm tạo nên hệ thống mà phần cứng, cảm biến, cổng thông tin giao tiếp cũng đóng một vai trò quan trọng.
#2) Các module tương tác thiết bị
Vì đây là kiến trúc giữa các bộ phần cứng và phần mềm khác nhau, nên bắt buộc họ nói chuyện với nhau trong thời gian thực / gần thời gian thực. Khi cả hai đều tích hợp với nhau, những thứ như bảo mật, khả năng tương thích ngược, vấn đề nâng cấp sẽ trở thành một thách thức cho nhóm thử nghiệm.
#3) Kiểm tra dữ liệu thời gian thực
Như chúng ta đã biết, để có được số lượng lớn dữ liệu thật thời gian thực là điều vô cùng khó khăn khi thực hiện kiểm thử thí điểm. Do đó đây cũng là một thách thức lớn cho đội kiểm thử.
#4) Giao diện người dùng (UI)
IoT được lan truyền trên các thiết bị thuộc mọi nền tảng [iOS, Android, Windows, Linux]. Hiện nay, kiểm thử trên nhiều thiết bị có thể thực hiện được, nhưng kiểm thử trên tất cả các thiết bị thì gần như không thể. Chúng ta không thể bỏ qua khả năng UI được truy cập từ 1 thiết bị mà chúng ta không có hoặc không thể mô phỏng được. Đây cũng là một thách thức mà chúng ta cần vượt qua.
#5) Tính khả dụng của mạng
Kết nối mạng đóng một vai trò quan trọng vì IOT là tất cả các dữ liệu được truyền đi với tốc độ nhanh hơn trong mọi lúc. Kiến trúc IoT phải được kiểm thử trong tất cả các loại kết nối/ tốc độ mạng. Để kiểm tra điều này, các mô phỏng mạng ảo chủ yếu được sử dụng để thay đổi tải mạng, kết nối, sự ổn định ... Tuy nhiên, dữ liệu / mạng thời gian thực luôn là một kịch bản mới và nhóm thử nghiệm không biết đâu là nút cổ chai sẽ phát triển trong thời gian dài.
5. Kết luận
Phương pháp tiếp cận kiểm thử mạng lưới vạn vật kết nối IoT có thể khác nhau dựa trên hệ thống/ kiến trúc sử dụng. Kiểm thử viên cần phải tập trung nhiều hơn vào phương pháp kiểm thử như một người dùng thực sự hơn là kiểm thử dựa trên yêu cầu. Một trong những phương pháp trong kiểm thử mạng lưới vạn vật kết nối (IoT) là kiểm thử tích hợp. Kiểm thử sẽ thành công nếu có kế hoạch kiểm thử tích hợp chính xác và đủ mạnh để nắm bắt các sai sót trong hệ thống. Kiểm thử mạng lưới vạn vật kết nối ( IOT) có thể là một công việc khó khăn / thử thách nhưng cũng rất thú vị cho đội kiểm thử để xác nhận một mạng lưới phức tạp của thiết bị, giao thức, phần cứng, hệ điều hành, phần mềm vv
Bài viết được dịch lại từ nguồn: http://www.softwaretestinghelp.com/internet-of-things-iot-testing/
All rights reserved