Simulating network timeouts with toxiproxy

Goal: Simulate how a Node.js application reacts to timeouts. Solution: Use toxiproxy and its timeout “toxic” with the value of 0, i.e. the connection won’t close, and data will be delayed until the toxic is removed. The steps: 1. Start toxiproxy, exposing the port 6666 that we intend to use as localhost:6666: docker pull shopify/toxiproxy docker runContinue reading “Simulating network timeouts with toxiproxy”

Fixing clojurescript.test failing with “ReferenceError: Can’t find variable: cemerick”

ClojureScript.test (0.3.0; cemerick.cljs.test) may fail with this confusing exception: due to couple of reasons: Your test namespaces do not require cemerick.cljs.test (and thus it is missing from the compiled .js; requiring macros is not enough) cljsbuild has not included any of your test files (due to wrong setup etc.; this is essentially another form ofContinue reading “Fixing clojurescript.test failing with “ReferenceError: Can’t find variable: cemerick””

Most interesting links of January ’13

Recommended Readings Various Dustin Marx: Significant Software Development Developments of 2012 – Groovy 2.0 with static typing, rise of Git[Hub], NoSQL, mobile development (iOS etc.), Scala and Typesafe stack 2.0, big data, HTML5, security (Java issues etc.), cloud, DevOps. 20 Kick-ass programming quotes – including Bill Gates’ “Measuring programming progress by lines of code isContinue reading “Most interesting links of January ’13”

Most interesting links of April ’12

Recommended Readings V. Duarte: Story Points Considered Harmful – Or why the future of estimation is really in our past… (also as 1h video) – thoughtful and data-backed claim that there is a much cheaper way for estimating work throughput than estimating each story in story points (SP) and that is simply counting the stories.Continue reading “Most interesting links of April ’12”

Most interesting links of Mars ’12

Recommended Readings ThoughtWorks Technology Radar 3/2012 – including apps with embedded servlet containers (assess), health check pages for webapp monitoring, testing at the appropriate level (adopt), JavaScript micro-framewors (trial, see Microjs.com), Gradle over Maven (e.g. thanks to flexibility), OpenSocial for data & content sharing between (enterprise) apps (assess), Clojure (before in asses) and CoffeeScript onContinue reading “Most interesting links of Mars ’12”

Most interesting links of February ’12

Recommended Readings List of open source projects at Twitter including e.g. their scala_school – Lessons in the Fundamentals of Scala and effectivescala – Twitter’s Effective Scala Guide M. Fowler & P. Sadalage: Introduction into NoSQL and Polyglot Persistence (pdf, 11 slides) – what RDBMS offer and why it sometimes isn’t enough, what the different NoSQLContinue reading “Most interesting links of February ’12”

Separating Integration and Unit Tests with Maven, Sonar, Failsafe, and JaCoCo

Goal: Execute the slow integration tests separately from unit tests and show as much information about them as possible in Sonar. The first part – executing IT and UT separately – is achieved by using the maven-failsafe-plugin and by naming the integration tests *IT (so that the unit test running surefire-maven-plugin will ignore them whileContinue reading “Separating Integration and Unit Tests with Maven, Sonar, Failsafe, and JaCoCo”

Most interesting links of January ’12

Recommended Readings Jeff Sutherland: Powerful Strategy for Defect Prevention: Improve the Quality of Your Product – “A classic paper from IBM shows how they systematically reduced defects by analyzing root cause. The cost of implementing this practice is less than the cost of fixing defects that you will have if you do not implement itContinue reading “Most interesting links of January ’12”

How to Create Maintainable Acceptance Tests

This post summarizes what I’ve learned from various sources about making acceptance or black-box tests maintainable. This topic is of great interest to me because I believe in the benefits that acceptance tests can bring (such as living documentation) but I’m also very much aware that it is all too easy to create an unmaintainableContinue reading “How to Create Maintainable Acceptance Tests”

Most interesting links of December

Recommended Readings The Netflix Chaos Monkey – how to test your preparedness for dealing with a system failure so that you won’t experience nasty wakeup when something really fails in Sunday 3 am? Release a wild, armed monkey into your datacenter. Watch carefuly what happens as it randoly kills your instances. This is exactly whatContinue reading “Most interesting links of December”