• Home
  • RSS Feed
  • Log in

Archive for the ‘Testing’ Category

Jan Vermeir

Saved by Fitnesse
Posted by Jan Vermeir at around evening time: February 8th, 2011

We’ve been busy for a couple of weeks now refactoring a fairly complex code base of just under 500 classes. None of us really knew all the details about this part of the system, but we didn’t let that stop us of course. After some regrouping/-shuffling/-factoring/*ing, the whole thing built OK and all unit tests were green again. All that was left to do was fix the Fitnesse tests. I remember thinking this should be easy since we had all those green unit test.

Evil laughter sounds.
(more…)

Share

Filed under General, Testing, Tools | 2 Comments »

Age Mooij

How to Fail at Writing Bad Code
Posted by Age Mooij in the late afternoon: February 3rd, 2011

Trying to produce bad quality code is quite hard when you are using Test Driven Development (TDD), even when you are doing it wrong on purpose.

Recently Iwein and me were preparing some labs for a developer training and the plan was to create some really bad quality Java code as a starting point. Students would then be asked to clean it up and add some new features, all this of course with the intent to show the effect of bad code quality on your ability to quickly add new features. This was going to be a piece of cake!

After some brainstorming for interesting standalone programming challenges, we came up with the idea of writing a JSON to XML converter. It should be able to take any valid JSON string and convert it into a simple XML representation. Out of habit and without really considering the option of skipping this step, we started with a simple failing test. Here it is:

@Test
public void shouldConvertTopLevelEmptyArray() {
    assertThat(converter.convert("[]"), is("<array></array>"));
}

Simple, right? To implement our converter we decided to use the well known “red, green, as little refactoring as possible” anti-pattern, which we expected to result in lots of copy-paste duplication, very long methods, and the other typical code smells we all know and loath. Our first implementation approach was to go for some all-time favorite candidates for producing bad code: string manipulation and regular expressions. As Jamie Zawinski famously said: “When some people have a problem, they think: ‘I know, I’ll use regular expressions’. Then they have two problems.” We had created a sure thing recipe for disaster. It was going to be all downhill from here, or so we thought.

(more…)

Share

Tags: code quality, json, TDD, XML
Filed under Fun, General, Java, Testing | 3 Comments »

Maarten Winkels

Regression Testing with an Agile Mindset
Posted by Maarten Winkels mid-afternoon: November 5th, 2010

When applying agile methods to existing software development practices, it is often useful to start from the basics. For regression testing this boils down to:

  1. Regression testing ensures continuity of business functions.
  2. In an agile context it helps the team focus on the (new) functionality to develop in the sprint while maintaining overall stability.
  3. To maximally utilize regression testing in an agile context, test automation and continuous execution should be applied.
  4. It is important to realize the difference between functional tests and regression tests to avoid some common pitfalls.

(more…)

Share

Filed under Agile, Testing | 5 Comments »

Geert Bossuyt

Agile tester is not responsible for testing!! 4 essential differences
Posted by Geert Bossuyt around lunchtime: September 30th, 2010

The tester is a member of a Scrum team. This is a different mindset from the traditional views on testers in software development. The agile tester focuses on delivering value instead of on testing. The agile tester is responsible for delivering what the business needs instead of just finding bugs. Most importantly: the agile tester is not responsible for testing!

Recently I published an article on testing in a Scrum team for the Eurostar 2010 newsletters. It’s about the mindset of an Agile tester. This blog post summarizes the core of that article.

(more…)

Share

Tags: ACT, Agile, Scrum, Testing
Filed under Agile, Articles, Scrum, Testing | 7 Comments »

Sander Hautvast

Middleware Management pitfalls 9. Differences between test and production
Posted by Sander Hautvast mid-afternoon: June 4th, 2010

In this episode of the middleware pitfalls top-10 we want to discuss the merits of a clean and standardized set of (test) environments. Some refer to such a set as DTAP, an acronym for Development, Test, Acceptance-test (or pre-production) and Production. From here on the text contains capitals to indicate an environment. Basically the situation is like testing itself: you will never get it 100% right, but it will help you a lot if you invest in a sound, maintainable DTAP.

(more…)

Share

Tags: DTAP, omgevingsverschillen, OTAP
Filed under Middleware, Project Management, Testing | No Comments »

Erwin van der Koogh

Do NOT do it right the first time
Posted by Erwin van der Koogh just before lunchtime: April 30th, 2010

I was triggered recently by a status update from someone that mentioned that we will have to get ‘this’ right the first time around in the future.
This particular case was about a test, very late in the project cycle, where lots of things needed to get together perfectly to make it work. Any delays would not only delay the current project, but all other projects that rely on the shared resources being used. This huge cost if things go wrong is why it is so imperative that we do get it right the first time around.
The problem is that this involves tens of people across multiple companies and departments, who have written thousands of lines of code.

Now I do not know what they are going to do to make things right in the future, but if we go by past experience most people will want to enforce even stricter entrance criteria.
There are a couple of problems with this approach:
(more…)

Share

Filed under Architecture, General, Java, Process, Testing | 1 Comment »

Iwein Fuld

Is automated acceptance testing harmful?
Posted by Iwein Fuld in the early evening: April 14th, 2010

A lot of automated acceptance testing pioneers have come around and denounced their fate in heavy automated test suites. A recent article on InfoQ sums up the trend quite nicely. I am not going to jump on that bandwagon, but I will try to find the safe middle ground between the overzealously created maintenance burden and anarchy. The main point is that automating acceptance tests is the way to go, you just shouldn’t automate and maintain useless tests. The tricky part is to find out what tests are useful and what tests are not.
(more…)

Share

Tags: automated acceptance testing, fitnesse
Filed under Agile, Java, Quality Assurance, Testing | 5 Comments »

Albert Sikkema

Making screenshots from Selenium with JUnit @Rule’s
Posted by Albert Sikkema at around evening time: March 30th, 2010

When running Selenium tests from JUnit it’s very useful to be able to capture screenshots when something fails. Especially when you run it in a Continuous Integration environment which you aren’t monitoring. A screenshot combined with the stacktrace makes identifying and fixing the error easier. When you combine this with a JUnit @Rule you can make it transparant and use it for every testcase (more…)

Share

Filed under Java, Testing, Tools | 3 Comments »


Web performance in seven steps: Summary and Conclusions
Posted by Jeroen Borgers at around evening time: January 20th, 2010

Previous time I blogged about the last step of the seven steps, step 7: Share the responsibility for the whole chain, a non-technical but rather a communication and behavior thing which I found crucial for success. We now have reached the end of this series and I’ll sum up the topics we’ve dealt with and draw some conclusions. (more…)

Share

Filed under Architecture, Java, Monitoring, Performance, Process, Quality Assurance, Requirements Management, Testing, Tools | No Comments »


Middleware integration testing with JUnit, Maven and VMware, part 3 (of 3)
Posted by Vincent Partington in the wee hours: January 7th, 2010

Last year, before the Christmas holidays ;-) , I described how we do middleware integration testing at XebiaLabs and I described the way we deploy test servlets by wrapping them in WAR and EAR files that get generated on the fly. There is only one thing left to explain; how do we integrate these tests into a continuous build using Maven and VMware?

Running the middleware integration tests

So let’s start with the Maven configuration. As I mentioned in the first blog of this series, the integration tests are recognizable by the fact that the classnames end in Itest. That means they won’t get picked up by the default configuration of the Maven Surefire plugin. And that is fortunate because we don’t always want to run these tests. Firstly they require a very specific test setup (the application server configurations should be in an expected state, see below) and secondly they can take a long time to complete and that would get in the way of the quick turnaround we want from commit builds in our continuous integration system.
(more…)

Share

Tags: JBoss, Maven, TDD
Filed under Deployment, Java, Middleware, Testing, Virtualization, Xebia Labs | 2 Comments »

← Older posts
Newer posts →

Xebia Sites

  • Xebia Corporate
  • Xebia France
  • Xebia India
  • Xebia Sweden

Categories

  • Java (311)
  • Agile (181)
  • General (136)
  • Scrum (67)
  • Architecture (64)
  • Testing (59)
  • Performance (46)
  • Middleware (56)
    • Deployment (38)
  • Xebia Labs (39)
  • SOA (31)
  • Podcast (31)
  • Project Management (28)
  • Tools (26)
  • Uncategorized (20)
  • lean architecture (20)
  • Quality Assurance (17)
  • Articles (13)
  • Requirements Management (13)
  • Virtualization (19)

Tag Cloud

    Architecture Ajax Hibernate Eclipse Concurrency Control Frameworks Oracle TDD Flex Java Javascript JPA XML JPA implementation patterns Spring lean architectuur Agile Grails SOA product owner Xebia Maven Groovy Scala Moving to India Scrum lean architecture ACT agile architectuur Lean

Archives

  • February 2012
  • January 2012
  • December 2011
  • November 2011
  • October 2011
  • September 2011
  • August 2011
  • July 2011
  • June 2011
  • May 2011
  • April 2011
  • March 2011
Avatars by Sterling Adventures