News Feed
Sections




News Archive
Looking for more information on how to do PHP the right way? Check out PHP: The Right Way

The PHP.cc Blog:
Disintegration Testing
March 20, 2014 @ 10:20:25

In this new post on thePHP.cc blog today Sebastian Bergmann relates the unfortunate disintegration of the Mars Climate Orbiter (back in 1999) back to a lesson on software testing and errors.

One of the most important tasks in software testing is to find the smallest scope in which a test case can be implemented. The smaller the scope in which a test is run, the faster it can be executed and the more precise its result. Unit Tests exercise one unit of code in isolation from all collaborators. Integration Tests verify the interaction of two or more collaborators in isolation from the rest of the system. Edge-to-Edge Tests run the software as end-to-end as possible in a single process (and without using a web browser or a web server). End-to-End Tests, or System Tests, look at the whole system and in the case of a web application send a HTTP request from a web browser to a web server running the software to inspect the HTTP response that is sent back.

He talks some about the difference between unit tests and acceptance tests and how "easy and seductive" functional tests can be over unit testing. He points out how fragile (and sometimes slow) this can be though, and how their failure only shows a problem and not where it is.

The promise of being able to develop both the business model as well as the software that implements it in an agile fashion should be reason enough for enterprises to invest in a modern, highly decoupled software architecture. And when the members of the software development team communicate well, both among themselves and with the other stakeholders, then there is not much that can really impede the success of the project.
0 comments voice your opinion now!
unittest functionaltest testing software nasa orbiter

Link: http://thephp.cc/viewpoints/blog/2014/03/disintegration-testing

blog comments powered by Disqus

Similar Posts

Chris Hartjes' Blog: Metatesting: Understanding Mock Objects

Mike Naberezny's Blog: Wrapping PHP Functions for Testability

Job Posting: Workflow By Design Seeks Senior Software Developer (Beverly, MA)

DZone.com: A Mockery Review

Artur Ejsmont's Blog: A few words on bugs and software quality


Community Events

Don't see your event here?
Let us know!


community language part2 example yii2 laravel interview list podcast symfony opinion series framework php7 application project introduction composer programming api

All content copyright, 2015 PHPDeveloper.org :: info@phpdeveloper.org - Powered by the Solar PHP Framework