embedded system software test plan

Status
Not open for further replies.

arsalanarm

Junior Member level 3
Joined
Sep 1, 2012
Messages
30
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,286
Visit site
Activity points
1,676
hi guys
i wrote a big program for an electronic system based on pic microcontroller
after testing i didnt find any problem but im going to design a test plan to will sure system hasnt problem
how must be design an embedded software test plan. please help:roll::roll:
 


Hi,
I have some experience of this.
What tools and methods do you plan to use? And how is your code structured? state machine , rtos? Will you use step through debugging in an ide or create a test harness and use printf diagnostics?
What level of testing is required? Function, module, system? I would start bottom up. Draw yourself a function calling tree identifying all off the functions and which functions call them. Then create a function test specification which identifies each functions requirements and how it is to be tested. You need to be clear what you are testing against. Think about the range of values that you may need to test and how you will apply stimulus such as adc voltages input voltages etc. Include expected results. Think about how you will deal with any bugs that you may come across and what level of retest may be needed following any corrections to your code. I would issue a version of software for test once tested I would make any required changes and then up issue a new version for retest against a new specification which identifies the areas of code affected by the changes.
Once you are satisfied with all of the functions on the bottom of the calling tree move up a level and test each of the functions on the next level up and so on until all of the functions and their interactions with other functions have been tested. If you have used a state machine structure once you reach the top level of the calling tree you will be testing the state's and finally the state machine itself. If possible also have someone else review your code or use a static analyser such as pclint (you can integrate this into mplab)
 
Reactions: nsypid

    nsypid

    Points: 2
    Helpful Answer Positive Rating
thank you nickdean1
my required test level is system test. but i think for system test i need to test function,module,integration test and finally system test.
what is differences between mplab simulator and pc-lint.
can i download it free?
thank you very much.
 

"PC-lint for C/C++ the longest continuously advertised software tool in human history, was first introduced in 1985. It will thoroughly check your C/C++ source code for bugs, glitches, inconsistencies, non-portable constructs, and much more, so you can find and fix your bugs more quickly, and more economically, than with traditional debugging procedures
PC-lint for C/C++ runs on Microsoft Windows and OS/2" ---- (https://www.gimpel.com/html/index.htm).

Unfortunately you need to pay for a licence to use this software and it can be quite difficult to setup for a PIC Microcontroller but well worth doing if you have the time. Once you have set it up for the first time it is easy to to again and again.

MPLab simulator is integrated into the MPLab IDE and allows you to simulate your code without running it on a PIC, You can simulate IO, ADC, Serial and step through your code using breakpoints. I find this useful if I begin writing code before the hardware is available. At your stage in the development process you will be better off running your software on your hardware platform. You can also do this from within MPLab which gives you a number of breakpoints which allow you to halt your code at specific places to view register and variable values. You can step through your code line by line to see that the correct decisions are being made.

What compiler do you use? and have you integrated it into MPLab?

If not this worth doing. I currently use the ccs compiler integrated into mplab v8.63. The latest version of MPLab is MPLabX which I believe has only recently begun supporting my third party compiler. I will be sticking to 8.63 for a little while longer as I am comfortable with the look and feel of it. MPLabX is totally different.

Is this a personal or work project. If it is for work do you have a quality management system in place to describe the software development cycle?
 

thank you very much nickdean1
this is a work project.i use microchip mplab8.84 and c18 compiler.
now project hardware design and development and software design and development finished.
system test response is very good. but i want to will sure system hasnt problem.
static debug such as mplab simulator is helpful but i prefer dynamic debug because some of software bugs only can be detect in system
running in real speed and real inputs and outputs and real environment.i use pickit3 programmer/debugger.can i run program in real time on hardware and
study variable contain in real time.can i change hardware inputs and see program response in mplab simulator.
i used serial interface between pc and pic micro it was very good but its very low performance even in maximum baud rate = 115200.i want to see variable changes in real time and variable changes during input changes (such as key pad,adc ,...).
i want to see some variables contain in pc when system is running in real time.
best regards.
 

Status
Not open for further replies.
Cookies are required to use this site. You must accept them to continue using the site. Learn more…