3

I am the only QA with 9 developers dealing with about 60 applications using different technologies.

Now I needed to automate our apps. I have written some selenium scripts already but I stopped and contemplate about which kind of Framework I should be using before I would go further in my script creation?

I am looking to SpecFlow to use for BDD. As I was looking into it, this would be very beneficial with BA to developers to stakeholders and manual QA. Since I only have this small team, is it advisable to go on with BDD? I have heard of test driven development but I am not really sure how our automation framework would be called.

4

It depends on lots of factors and there will be tradeoffs:

  • BDD does introduce few benefits, for specifics, please refer to this article on wikipeida. BDD on Wiki
  • Based on my personal experiences, there are a few issues you need to address before converting to BDD.

Those issues are:

  • BDD framework uses a high level, English like syntax. You will need to spend time and effort to learn a new programming language basically, is your company willing to spend this kind of resource?
  • BDD framework I have used, such as Robot Framework, has its own flaws. It is free to use, but due to its open source nature, support can be slow and can be out of support any time.
  • Robot framework on several occasions, does not allow you to perform a more crude action. If you compare assembly language and C#, C# is of a higher level, but it does not allow you to easily manipulate memory bits; this applies to BDD frameworks as well, occasionally, you can not do something crude as freely as you can with Selenium (in your case).
  • The biggest benefits of introducing BDD is that BAs, without technical background, can understand test cases with easy, and sometime, can even write test cases with minimum training, but the questions is, do BAs of your company want to write test cases?
  • As you are the only tester in your team, you can always translate technical details into English for BAs to understand and you will be the person who does test case development. As long as you can understand your scripts, BAs can alwasy go and talk to you should they have any questions. There is not much value start fresh using a BDD framework, in my personal opinion.
  • 4
    Great points, although my opinion is a little of the opposite. I love BDD as tests, documentation and communication All go easier for me. I'd personally start using it asap. – Randy Sep 18 '16 at 8:41
  • Unfortunately, we don't have BAs :( we go straight to the users itself. I also needed to really focus on their documentation but since everything is fast paced, I'd rather automate all and maybe document later – Marj Sep 19 '16 at 13:33
1

Given the ratio you mention, I would focus on training the developers to write the tests. I am assuming that your mention of "I have written..." implies that you don't currently plan to do this.

My experience is that for supporting 9 developers you need to focus on high level concepts (e.g. unit vs functional testing), manual testing and empowering the development team to write automated tests. After all bdd and tdd both mean writing tests first so it makes sense that developers do that. Your role may need to be more of a guide to best practices.

In the organizations I have worked in, it takes a ratio of 1 qe developer to 2 or 3 software developers for the qe developer to have time to focus on writing automated tests. When there are several QE's it also makes sense to have some focus on manual and some focus on automated testing (within say a monthly timeframe). They require different skills and mind-sets and I've seen attempts to have a QE developer do both in the same day work out very poorly.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.