4

OK, first of all I'd like to give a quick summary of my position. I'm studying Computer science and I'm currently in third year and on a work placement. As part of my placement I am required to come up with a solution to automating their UI testing, which is currently a manual process. This is a completely new field to me. I was giving several requirements, the main one being a non coding approach as our testers have no programming experience.

From googling around I concluded that a combination of Webdriver, Junit and Cucumber seemed to be the way forward. I spent quite a bit of time researching page objects and proper design. The idea was the testers could use Gherkin language to write tests, once the code was in place.

The QA guys dismissed cucumber saying they've worked with it before and didn't like it.

Anyhow, has anyone got any suggestions on tools I could use? I'm currently using Selenium IDE with some user-extentions for getting data dynamically. However, cross browser support is cumbersome as I have to re-write my user extension in Java when I export my tests.

For mobile testing I was considering Appium as it offers a record and playback function. But this feature ain't yet available on windows.I also intend to look at Testdroid recorder which ain't free.

Is there a tool out their that will cover automated testing form mobile applications and websites that does not require much coding?

Any help, advice or recommendations greatly appreciated.

7
  • 1
    Why QA guys didn't like Cucumber?
    – dzieciou
    Commented May 12, 2014 at 16:40
  • 1
    @dzieciou they said they used it before and no matter what they'll always find cases/tests they want to write where the code behind the scenes ain't available. Commented May 12, 2014 at 16:48
  • 1
    There HAS to be someone who can write code. Their process was bad, not the tools. I would say however that they should learn how to write code. I guarantee that learning how to write a test case using the Java or C# or Ruby selenium implementation is no more difficult than learning gherkin and will actually teach them a skill applicable outside of just UI automation. On a side note, I'm sorry they're putting you in a position like this as an intern, not very professional if you ask me...
    – Sam Woods
    Commented May 12, 2014 at 23:11
  • @Sam- I agree with you.
    – Yash
    Commented May 13, 2014 at 11:14
  • @user1543871- If you ever end up as a tester/QA/QC I hope you won't feel as "anti-code" as those guys do. I didn't know the 1st thing about java till a year ago, but now it's one of my favorite things. Java+Webdriver has opened a new and very exciting avenue for me. I am nowhere near being a big gun when it comes to coding and I end up taking the help of my seniors or SE for most of my problems but getting into automation testing has been one of the best things that has happened in my carreer. Keep learning.
    – Yash
    Commented May 13, 2014 at 11:23

3 Answers 3

5

If you go down the 'doesnt require much coding' and/or 'record and replay' route then you'll end up disappointed. Going down the 'automate the UI' route is also likely to lead to disappointing results - if the company is starting automation then try to look beneath the GUI.

My suggestion would be to read The A-word and do some searching on Google for GUI test automation and the pitfalls and drawbacks to think about.

4
  • Thanks for your feedback, I agree totally. However I'm only the intern and the QA guys are very anti code. So, I'm in an awkward position. Commented May 12, 2014 at 21:35
  • So maybe you should ask a new question about how to deal with this? Commented May 13, 2014 at 3:04
  • 1
    user1543871, Being an intern puts you in a great position here. Remember, you are only an intern. Speak up, stand out and make a concise, reasonable solution. Explaining in detail why this should not be done the way that they want it to be. Explain a better alternative that will offer better results. And if you are serious about trying to work with this company, set up a working demonstration of the alternative in your free/personal time. Either you will A) Get the respect of the people at the company now or B) Get it later when they see you were right.
    – Paul Muir
    Commented May 13, 2014 at 13:47
  • 1
    @PaulDonny, agreed, it just doesn't have to be in OP's free/personal time, if this is OP's part of the job to do the job right ;-)
    – dzieciou
    Commented May 13, 2014 at 17:25
0

You do not mention which languages are acceptable and within reach of your team.

Record/replay from Selenium IDE (Selenium1) will be road to nowhere, IMHO. You are 100% correct that Webdriver is the way of the future. You can get some leverage to sell that idea by mentioning that Webdriver is coming W3C standard to browser automation.

IMHO the only scalable way is scripting, and Python is by far the simplest language to learn, and has excellent binding for Selenium - both Selenium1 and 2 (Webdriver).

With one strong team lead developing page objects, rest of testers can use them to write tests and be pretty productive.

1
  • Well most developers are PHP or JS, but they don't want to put any demand on the DEV team as they are all quite busy. Also, most would have some experience with Java. The QA guys have no coding experience. Commented May 13, 2014 at 8:17
0

You could have a look at FitNesse, which uses a wiki where they can write tests, rather than Gherkin. But they will still need to have someone who can automate fixtures for the tests to use. Personally, I prefer Cucumber over Fitnesse, as it's easier to get to the code from the test (Gherkin) and see what it actually does. (But I can write and read Java), whereas in Fitnesse it's quite hard to get to the code and see how it works (at least in the implementations I've seen). "Hiding" the code might appeal to this QA team more.

That said, I agree with the other answers: record-playback will be hard to maintain, there will always be a need for some programming (if only to add new test features).

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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