Posts

Embedded testing - Why? - II (Part 5)

Let's continue the previous post to understand further why we need testing for embedded systems. Some might not know this, some might have experienced it, some might have tried it, and some might have been experts. What am I talking about? The process of baking bread in the oven. How many of us tried this at least once in our lifetime?  Imagine a situation, where you have set the timer for 30 seconds (no bread will be baked in 30 seconds, this is just an example 😊) but due to a software error, the timer mistakenly interprets this as 30 minutes. What is the outcome? Burnt bread, wasted ingredients, and frustration. Now imagine the temperature was set with the assumption of 100 degrees Fahrenheit but the oven was programmed to interpret it as Celcius. You would end up with underbaked dough instead of golden-brown perfection. How does the baked bread come out well if the expected outcome does not meet the requirements? These seemingly small errors arise from a lack of software testi...

Embedded testing - Why? (Part 4)

 After reviewing the basics of Embedded systems and Embedded software , the next step might be to consider the importance of testing the embedded software system. In today's world, there is no option to live without embedded software systems. It is used everywhere and the avoidance of such systems is difficult in this busy life. It is integrated into our daily lives - cars, voice assistants (Alexa, Google Assistant), medical devices, planes, rockets, at home, offices, and many more. To use embedded devices and machines, need to be thoroughly tested before getting into the market.  Some of the examples will help to understand the importance of testing. The Falcon 9 Starlink 6-77 mission was initially planned for December 3, 2024. Due to a helium pressurization issue, the launch was postponed, and a new date has not yet been announced as SpaceX evaluates the situation and coordinates with other scheduled missions. FAA Air Traffic Control Outage (January 2023): A software malfun...

Embedded testing - Embedded software (Part 3)

 In continuation of the previous post, " Embedded system ," let's examine embedded software and how it plays a major role in physical devices. An application software is a computer program that provides functionality on a computer. It is specifically made for consumers to use. However, embedded software is computer software that is written for controlling physical machines to operate. Most of the embedded software is written in C, C++, and C#. In recent times, Javascript, Java, and Python also come into the picture to control embedded systems. Embedded software is like a well-organized but strict boss living inside the machine or device. It is tiny, invisible, and works behind the scenes to make sure the machine does not crash. How does the embedded software work? Embedded software is a manager who sits in the office and manages the team (hardware) Providing instructions:  This manager never calms down and he/she keeps on giving instructions to the team.  To check the tem...

Embedded testing - Embedded system (Part 2)

Image
 In this second blog post related to embedded testing, firstly I would like to explain an embedded system. Click here to view the first post. What does embedded mean? It is something integrated into another thing. For example, an embedded hyperlink is text that acts as a link instead of an actual link ( https://www.google.com can be  Google ) . Embedded content is content used in a website from another source. When you attach an Excel sheet to the PowerPoint presentation, it is called an embedded file. An embedded system is a device that incorporates all the relevant components such as a microprocessor, microcontroller, memory, input/output units, drivers, bus, and many more. The embedded system is designed to work with a combination of hardware and software to perform specific tasks to achieve functionalities within a larger system. If a human user of a system is only partially aware that they are interacting with a computer running software, then it is an embedded sof...

Embedded testing - Introduction (Part 1)

 I'm writing a series about my recent learnings in embedded testing. Here is the basic introduction about this topic with a simple example. Scenario 1: A patient books an online appointment to provide a blood sample for a hemoglobin level test. To book an appointment, the patient only needs access to a web or mobile application. When a quality engineer tests the functionality of this appointment registration process, it is referred to as software testing. Scenario 2: The patient now wants to collect the test report after the blood sample analysis. To measure the hemoglobin level, the lab technician uses an automated medical device. At this stage, if the quality engineer is involved in testing, they require both a physical device (hardware) to process the sample and an application (software) to enter or capture the details. When testing involves both hardware and software, it is referred to as embedded testing. Click here to read the next blog

How would you approach API exploratory testing?

Image
 This question was asked during 30 days of API Testing in the Ministry of Testing. I have used  https://excalidraw.com/ to share my thoughts. Let me know your suggestions for improvement or comments!

API Testing

Image
In my previous blog, I explained what API is. I will delve deep into the importance of testing the API in this blog. While most testing focuses on the UI, which is crucial, it is equally important to test APIs from the initial stages of the software development. The purpose of API testing is to make sure the interface between two applications is working smoothly without any interruptions. Let me take an example to explain. Seetha tells her mother Latha, that she wants a new pair of shoes for her school. Because it is raining outside and they cannot go shopping directly, Latha decides to buy the shoes online using a mobile application to shop at the “ABC” store. In this example, Latha  is the  client  who sends the request by searching for specific shoe requirements. The  mobile application  is the  API  that gets the request from the client and waits for the response from the server and again it sends back the response to Latha The  “ABC” store ...