Blog Posts

Subscribe to the full blog feed using RSS

All Posts | Categories | Archive

Agile Tour London, October 2017 - Effective Software Testing For Modern Software Development

4 minute read - Conference

Effective Software Testing in Modern Software Development

What is modern software development? Pretty much anything we do now.

And testing has to have the flexibility to cope with that.

In this talk I consider: Agile, Dev Ops, CI, Continous Delivery, etc. But I ignore buzzwords and lump it all together as Modern Software Development and explain the thought processes and approaches that allow testing to morph as required to thrive as part of an integrated Software Development System.


Simple ways to add and work with a `.jar` file in your local maven setup

5 minute read - Maven Java For Testers

TL;DR Hack - add as a library in IntelliJ project. Tactic - add as system scope in maven. Tactic/Strategic - install locally to .m2. Strategic - use a repository management tool, publish to maven central

Sometimes you want to work with a jar file that isn’t hosted in maven central.

It might be a 3rd party jar, it might be one that you have written.

Regardless.

You have a lot of options for this. The approaches that I have used:

  • add .jar files as an IntelliJ project dependency
  • install it locally to your .m2 repository
  • add it to your project as a system scoped file
  • use a repository management tool: like Nexus or Archiva
  • publish the dependency to maven central

How to Diff Java Code in IntelliJ - 3 ways to use the Compare Tool

2 minute read - FAQ IntelliJ Java For Testers

TL;DR IntelliJ has an inbuilt diff tool which you can use to compare files, classes or code with the clipboard. Just right click and choose Compare.

I was busy refactoring code in RestMud this morning because I want to try and open source the basic game engine, and then later the Web/REST API, but I want to tidy up the code a little first.

I’ve been working through the code:

  • moving classes into new packages
  • splitting classes to make code clearer and easier to manage
  • new classes make code easier to test

And the more I tidy it up in general, the easier it is to spot smaller problems of code duplication.


Java 1.9 Reflection and Package Access Changes

6 minute read - FAQ Java For Testers

TL;DR Java 1.9 does not like reflection as much as previous versions and access to proprietary packages is not possible out of the box.

Java 1.9 is out, and many companies now will be evaluating Java 1.9 and migrating their code base over to Java 1.9. I am now going through a similar process.

I have some fairly simple code that I was using for HTTP requests. This was originally written in Java 1.8 and to keep my codebase as simple as possible and I wanted to use no external libraries, therefore for HTTP requests I used an HttpURLConnection.

This started to fail on Java 1.9.

When I looked in my code more carefully I realised that it wasn’t HttpURLConnection that was failing in Java 1.9 it was my use of Reflection to bypass some constraints of the HttpUrlConnection that was failing.


Test Automation and Test Process Modelling - an evolutionary and pictorial explanation

7 minute read - Automating

TLDR; Historically we modelled testing as something that we wanted to automate, but the tools didn’t help, so we automated entity management and that has led to a mistaken view of “Test Automation” instead of “Automatization as part of a software development and testing process”.

video cover thumb image

  • Why do we talk about Test Automation the way we do?
  • Why do we talk about 100% Test Automation?
  • How do we model automation as part of our Test Process?
  • How does Testing provide information?
  • Why was a Waterfall Test Process Different from an Agile Process?
  • Why, in reality, both processes are fundamentally the same.
  • How we modelled “Test Automation” incorrectly, and an alternative way to model it.

All this and more…


FiSTB Testing Assembly, September 2017 - Tutorial and Keynote

3 minute read - Conference

Logistics

FiSTB TESTING ASSEMBLY 19.–20.9.2017, Helsinki

  • Tutorial
    • Tuesday 19.9.2017 (9:00 - 17:00, registration and morning coffee at 8:30)
  • Conference:
    • Wednesday 20.9.2017 (9:00 - 17:00, registration and morning coffee at 8:30)
    • Keynote 09:15 - 10:15

The Tutorial Blurb

Web based applications often offer more than a GUI to interact with, very often they have an API layer. This layer clearly needs testing and we can use it to support our other testing efforts - GUI, performance, etc. In this tutorial we will work with several applications to learn the basics of automating and testing REST APIs.