Smart Devices & IoT Testing — Hardware and Software
51Testing | 17 Years As A Software Testing Service Provider
The tests of hardware and software become more and more important due to the development of smart devices.
Generally, we will have questions like “what exactly should we test for smart device hardware and software?” for most of the testers, they have no idea when firstly see this question. For the experienced, they may summarize the test items based on their experiences in this domain. To have a structural and comprehensive answer, we need to make a summary.
Here, we will draw the answer map with the help of structural thinking, which is the most used method of matrix thoughts. Therefore, we will use the horizontal and vertical dimensions of the matrix to make a divergent summary.
Horizontal: it is a general quality model suitable for the conclusion of any products including functionality, performance, and reliability, etc.
Vertical: it is the composition of a smart device. Before conducting tests for smart devices, we must be clear of the items included in a smart device.
With the continuous development of smart devices, the corresponding software and hardware testing work has become more and more important. This article is a summary of the test experience of smart devices.
General Quality Model
According to ISO25010, the definition of quality is as follows:
The functions of software meet design specifications and satisfy users’ requirements, emphasizing correctness, completeness, and suitability.
It refers to the time features (e.g. response time) shown by the software to the operation and the use of computer resources(including memory size, CPU time, etc.) for a certain function under specified conditions. The high occupation of local resources is generally the reason for performance bottleneck.
It includes coexistence and interoperability. The coexistence requires software compatibility with systems, sub-systems and third-party software, in the meantime, internalization and localization.
It refers to the effort that users need to make for learning, operation, input reparation, and output understanding. For example, simple installation, easy operation, friendly interface, suitable for different users including disabled and defective peoples for whom an effective solution or method will provide.
Under the limited time and condition, the software can maintain its normal functions, performance. The higher the maturity, the higher the reliability.
It requires the security of data transmission and data storage including the authentication of user identity, data encryption and integrity verification, all key operations are recorded(log), all operations of different roles can be reviewed.
After the software is launched to run, the efforts required of modification because of the change of requirement and environment, or the occurrence of error. It involves modularity, reusability, ease of analysis, ease of modification, ease of testability, etc.
The difficulty of transmitting software from one computer system to another, or the difficulty with which a system and external conditions work together. It involves adaptability, installability, and replaceability.
The above is the general classification of quality models, which are functionality suitability, efficiency, compatibility, reliability, security.
The general composition of smart devices hardware and software are as following:
- Materials: generally, there are resistors, capacitors, USB, SIM card slot, TF card holder, etc.
Equipment combined with software and hardware
- Modem: a necessary module for mobile phone, which is used for communication
- Camera: common equipment for smartphone and smartwatch
- Audio: speaker and microphone
- WIFI: necessary module for connecting to a wireless network
- BT: Bluetooth communication module
- GPS: module for positioning service
- Display: such as LCD and TP touch screen
- Firmware(operation system): operation system running on the hardware equipment, including drivers that control various devices.
- Application: application running on the operation system, such as the address list.
Overall testing items
After the divergent summary of two dimensions, we put the test items in the table to answer the question at the beginning.
The test items of different products vary, however, with the help of a general quality model, we can build up and gradually sort out a more comprehensive software and hardware testing system. Let me know if you have any idea about software and hardware testing for smart devices and IoT.