Beauty Is in the Eye of the Beholder
Alex Papadimoulis discusses ugly code, where it comes from, how to avoid it, and how to get rid of it.
The content has been bookmarked!
There was an error bookmarking this content! Please retry.
Posted by Mark Levison on Oct 03, 2008
What is a good test? How do we know if we're writing good tests?
Kent Beck posited, that tests should be:
Roy Osherove adds that good tests have three fundamental properties: maintainable, trustworthy and readable.
Mike Hill has much longer list:
Mike and Ron Jeffries remind us that the key value of TDD is simplifying design and improving productivity. Improvements in code quality and a reduction in bugs are an important side effect.
Jeremy Miller adds that good unit tests should be:
Finally Ed Burnette writes: Make your unit tests repeatable in every aspect; Test your boundary conditions and Always keep your tests passing at 100%.
Transforming Software Delivery: An IBM Rational Case Study
Agility at scale, become as agile as you can be
A practical guide to choosing the right agile tools
agility@scale eKit: 10 Principles, Scaling Model, Metrics, Collaboration
In today’s hyper-competitive world, later may be too late to adopt Agile development and this Roadmap for Success will help you get started. Download "Agile Development: A Manager's Roadmap for Success" now!
...now read the title out loud
If you aren't pairing, there are some non-technical ideas to improve the test cycle using your peers in the 5 for 5 game.
Since testing is more than TDD or other automated testing approaches, part of quality in testing is tied to when you run the tests.
And the test shouldn't suddenly appear green the moment right before a sprint review.
Thanks for catching that. Another occasion where haste made a real mess of things.
1. If logic is changed, a test should show that - means: test fails.
2. If logic is changed, only few (ideal: one) tests fail.
(1) provides the security net for refactoring.
(2) ensures that the security net will not hinder refactorings since you have to modify hundereds or thousands of tests for one logic change.
Jester uses the approach (1) to find missing test cases.
... as that's obviously what this article is talking about. Other kinds of tests, such as acceptance tests, will need other qualities.
Alex Papadimoulis discusses ugly code, where it comes from, how to avoid it, and how to get rid of it.
John Davies examines Visa’s architecture and shows how enterprises have architected complex integrations incorporating Hadoop, memcached, Ruby on Rails, and others to deliver innovative solutions.
Sean Comerford unveils ESPN.com’s architecture, what components are used and why, and the current changes the website goes through.
Are there repeated patterns of failure on Enterprise Agile Enablement efforts? Sanjiv and Arlen discuss Seven Deadly Sins to avoid when adopting Agile in an enterprise.
Erik Dörnenburg answers: What is Enterprise and Evolutionary Architecture?, discussing 4 issues: Turning strategy into execution, Ensuring conformance, Where do the architects sit? Buying or building?
Sean Cribbs explains what Map-Reduce and Riak are, why and how to use Map-Reduce with Riak, and how to convert SQL queries into their Map-Reduce equivalents.
Chris Richardson shows how he ported a relational database to three NoSQL data stores: Redis, Cassandra and MongoDB.
Jean Tabaka challenges the audience to reflect on what Agile practices they are employing, how they are using them, ending with the questions “Why have their organization chosen to go Agile?
5 comments
Watch Thread Reply