May 31, 2011

About SWTBot

I recently read a blog post about SWTBot, which I consider as a unfair rant.

Before going further, I would like to say that I think having several eclipse projects with the same functionalities is totally fine. Diversity and competition enable one to bring innovation and new approaches. I think it, but I have also experienced it inside the modeling platform with Acceleo, Jet and Xpand or Grafiti and GMF. That said I think each project should concentrate on building a successful technology and an enthusiast community associated, and not trying to claim that other projects suck, more over when criticisms seem a bit peremptory.

Below are my answers, point to point :
  • I agree that support for other keyboard mappings could be enhanced a lot in SWTBot, but I do not think this issue is a blocker for functional testing your application in a majority of cases. Seriously, how many features depends on umlaut and trema in your text inputs ?
  • You may prefer TestNG, but having support for this test framework is not mandatory for having SWTBot to work. However to complain about a feature request, never asked before, making SWTBot not usable, seems to me weird.
  • The comment above apply, but I will add that the issue you encounter seems to be rather in the scala eclipse integration plug-in than in SWTBot. Anyway it should be easy to fix.
  • I was not able to understand your problem and the what the trick you mention fixes. Please open an issue with steps to reproduce and the behavior you expect.
May be you were trying to suggest cool new features, or priority in fixing issues, in that case do not hesitate to open bugzilla entries or add your comment to existing ones.

SWTBot is a small project, with a dynamic community, which try to improve it step by step. It is certainly not perfect, had issues and room for improvement, but we try to make it work.


  1. Do not worry. Do what I did ask him to contribute these features to the project himself.

  2. Indeed. I'm sorry if the blog post sounds so harsh to you. It's just my humble personal opinion. Also, I really didn't intent to bash SWTBot. It is open source, and it has achieved a lot.

    I also marked the Scala issue and the keyboard mappings issue as minor quite clearly, I thought (I've already committed a patch concerning the Scala issue).

    I understand your reaction to my TestNG remark. However, I stand by it (WindowTester has the same problem). JUnit just isn't a good framework for anything but unit tests. And ui tests are by their very nature not unit tests. Just because developers are used to using JUnit for their testing doesn't mean it's the right tool for everything related to testing...

    Maybe it's a minor point for most developers. But I'm sorry, it's not for me.

    I'd love to submit some kind of patch for TestNG support, however I'm afraid that that would be too much time and effort for me.

    Concerning the last problem (buttons getting added to the application under test): I didn't think that this behavior would be hard to reproduce. Is it? - If so, then there's maybe some configuration problem on my side.

    However, running into this is very troubling anyway: Tests changing the behavior of the application under test even under some strange conditions are not very reassuring...