Higher-level software development has grown by leaps and bounds recently, but embedded has lagged significantly behind. To meet this need, a group of developers (including a few of us at Atomic Embedded) formed ThrowTheSwitch, an organization whose mission is to help evolve the way development is done in the embedded realm. ThrowTheSwitch’s portal is a […]
CMock is an extremely useful tool that can make testing C programs nearly painless. Employing CMock is usually straightforward, but here are a few common sticking points and ways to work around them: Calling Functions in the Same Module How do you test a function that calls another function in the same module? Since the […]
Some of my previous work experience involved the validation and verification (testing) of aerospace software. One of the rules for this testing was that test cases needed to structurally cover a large portion of the software under test, but this coverage was not allowed to be incidental code coverage. Incidental coverage occurs when a test case causes execution of specific lines but does not validate the inputs and outputs affected by those lines. Code coverage is usually used to determine which portions of a project are currently tested, but incidental coverage is a false positive. It causes the coverage tool to tell us that lines are tested when they may not be. For example, 100% of our code may be executed by our test suite, but some of the code may be a routine without its own set of tests covering a variety of inputs.
For my first blog post with Atomic Embedded, I wanted to muse about what test driven development (TDD ) is, as I see it, and what all the fuss is about. I’m going to present a few cases for the usefulness of TDD based on my own experience in industry. Hopefully some of the battle […]
We are announcing major updates to two of the C testing tools that Mark and several of us at AO have been developing for a number of years now. These C testing tools will work for just about any C project and include a number of features tailored for embedded environments. As an added bonus […]
While working on a mock library for C (CMock), I began to think a tool should be made that would take as input a written test with all its mock calls and automatically generate actual code that would pass the test. I thought it seemed useless to basically rewrite in source what you just wrote […]
While working in C for an embedded for PIC microprocessor system and at the same time working on a Java & Laszlo project using decent mock libraries, I found myself wishing for auto-mocking for C. We were already writing our embedded code following a Model-View-Presenter design pattern for Test Driven Development. If we were to […]