Forum Discussion

TanyaYatskovska's avatar
TanyaYatskovska
SmartBear Alumni (Retired)
6 years ago

[Day 3/5] APIvsUI - Which skills does a tester need to do UI testing?

Hi API Team,

 

Your contribution has been great so far! I’m sure you’ve even learned something new about UI Testing :)

At the moment, the API team has more points. Can you compete with them today? Implement today's task and bonus tasks to earn more points (find them below) ;)

>> Track the current score

 

Day 3 Task:

Which skills does a tester need to do UI testing?

 

Here is what you can cover in your reply:

Which technical skills are required?

Which skills help a person grow in the UI Testing carrier?

Is attending UI Testing courses required? Which ones can you recommend?

 

Leave your replies here.

 

If you’ve just joined the event, feel free to complete the tasks for the previous days.

 

Spoiler

Bonus Tasks

Accomplish any of the bonus tasks to earn more points:

  1. +2 points - Invite your colleague to the competition.

Mention a nickname of this person by using @ in the competition’s daily topics. You can invite as many people as you wish. NOTE: A person you invite should be a new Community member registered after the event start.

 

  1. +2 points – Make a post on social media about your participation in the competition.

Your post should contain: @SmartBear, the #APIvsUITesting hashtag and the link to your comment in the Community.

Simple tweet: API Testing vs UI testing! Which one is more important? Join me in the @SmartBear Community to talk about this: https://bit.ly/2HEZ5U4 #APIvsUITesting

 

Event Rules

  1. Leave your comments on a conversation of the day. 1 comment = 1 point to the team score.
  2. The competition will be held on March 25-29.
  3. Join the competition any day and participate in any daily conversations.
  4. Feel free to leave comments for any teams.
  5. Rewards! A team with the biggest score will win. Active participants from each team will be rewarded.

 

  • UI Testing -

     

    General testing knowledge - manual experience is good because you will still being doing it even with automation handy

     

    General programming knowledge - need some experience with decisions, looping, error checking - doesn't matter what language

     

    Customer interaction knowledge - support or sales or anything that put you in front of the customer so you can be their advocate here

     

    Systems analysis - be able to create test cases from little information and be able to tell good documentation from bad 

    • tristaanogre's avatar
      tristaanogre
      Esteemed Contributor

      Marsha_R wrote:

      UI Testing -

       

      General testing knowledge - manual experience is good because you will still being doing it even with automation handy

       

      General programming knowledge - need some experience with decisions, looping, error checking - doesn't matter what language

       

      Customer interaction knowledge - support or sales or anything that put you in front of the customer so you can be their advocate here

       

      Systems analysis - be able to create test cases from little information and be able to tell good documentation from bad 


      I like what you say about manual testing.  One thing that too many test automaters get caught up in is simply writing the code and forgetting that they are actually writing TESTS.  I have a couple of folks who take test cases written by someone else and just go through the actions... with no check points, if/then checks, etc.  It just goes through the steps.  I have to constantly remind them "This is a TEST.  How do you know it passed?" and that an "object not found" error is not a good measure of pass/fail.

      • Marsha_R's avatar
        Marsha_R
        Moderator

        tristaanogre lol my interns do that - they are computer science students and they will automate anything I ask but writing a test case is still a foreign language even after a year of this

  • shankar_r's avatar
    shankar_r
    Community Hero

    Which technical skills are required?

    As far as UI automation testing concerned, Tester must have a basic understanding of AUT 's technology (like Angular) so that they can understand the application components to automate. Domain knowledge will help create End user scenarios to cover. Understanding the Automation tool (like TestComplete) will help you utilize its functionality to cover up test scenarios. If you are good at Scripting then your maintenance effort will less.

     

    Which skills help a person grow in the UI Testing carrier?

    I would say, Automation tool knowledge on handling AUT objects, Any Scripting language 

     

    Is attending UI Testing courses required? Which ones can you recommend?

    I'm not a big fan of this but always courses help you get better in understanding the application.

  • tristaanogre's avatar
    tristaanogre
    Esteemed Contributor

    To be a UI tester, specifically UI automation, I would recommend, highly, that you take some basic programming courses if you don't already have them.  Something in JavaScript or Python especially.  While you can get away with record/playback for the short term, eventually you're going to need to be able to build logical structures and decisions that go beyond just macro recording.

     

    This isn't a bad idea for a manual tester as well.  Knowing how application code works helps you target your tests towards those "fragile" places of the application.

     

    While you can get all sorts of technical skills, one thing I've discovered over the years doing UI Test Automation is that it takes a certain mindset to do this kind of work.  You need to have a high level of creativity for example.  Manual steps may say to perform a certain task.  However, when it comes to the automation, you may not be able to fully implement the EXACT manual steps due to restrictions on accessibility to certain components.  A creative mindset will allow you to start thinking outside of the box and look for other ways of performing the same task that still tests the same functionality.

     

    In addition to creativity, you need persistence.  You can't just give up the first time because something doesn't seem to work.  Dive deep, figure things out, keep working at it.  The answer is there somewhere.

     

    And finally... communicate.  You are not in a box.  Too often testers are separated from the developers.  Break down the silos and sit with the developers.  Show them what you are trying to do and, perhaps, they might be able to help you find what you need to do the testing or even build in some sort of hook for you.  Anything that will help the developers gain confidence in their code is a good thing.