Testers must see - do automated testing of seven major skills

With the new era of agility and DevOps and other project development method gradually replace the old waterfall model, test the growing demand in the industry. Testers are now working with developers, test automation in many respects greatly to replace manual testing. Growth in the number of automated testers, but also greatly increased the competition in the testing industry, in order to stand out in the vast testers, the first to grasp the following seven skills.

First, the ability of skilled programmers

For a good tester is concerned, is the availability of skilled programming capabilities essential, if not skilled programming capabilities, you can not write logic automated test scripts, greatly reducing the efficiency of the test. Master the background knowledge of programming can not only simplify automated script, you can also improve communication with developers. Not only that, once the unit testing is complete, you can also participate in in-depth functional testing. To have such skills, it needs to be done two ways:

(1) good learning design framework

Need for a comprehensive understanding and coding skills to c #, Python, Java, Perl, SQL, XML, and HTML and CSS. Nevertheless, depending on which language proficiency programming language used by developers in the project

(2) the ability to create test scripts proficient

At this stage, should have programming knowledge depends on automation framework used. If the project is using SpecFlow or Cucumber test automation, you can write scripts in plain English, without regard to the back-end logic or code. Only on the Selenium web drivers know enough about enough. However, if you are using UFT or QTP, you should have a comprehensive knowledge of programming.

Second, with excellent manual skills test

To become a skilled automation testers also need to have experience and a keen eye for manual testing. Remember the following points

(1) eye is sometimes more accurate than the machine

When something looks a bit wrong in the test, the human eye can easily be detected. Use automated scripts difficult to detect visual problems. From the user's point of view the software that helps testers identify the UI and usability testing to find bug, which is difficult in an automated script programming features.

(2) Manual testing is essential

Automated testing is a machine, the machine only being asked to do it. Complex test requires a lot of preparation and planning, there are certain boundaries. The script then follow the protocol accordingly and test applications, particularly testing helps testers to answer questions such as "When I follow the X rather than Y what happens" sort of. It helps testers easiest way to think and testing, and simple method is difficult to automate programming in the script. Even the visual cross-browser testing also requires manual methods. Rather than on an automated script to find the visual difference, you can manually check the problem by testing on real browsers and devices.

(3) automated testing may be flawed

Automated scripts like another piece of code. No matter how good a programmer, the error is always there. Manual operation throughout the testing process, rather than rely solely on automation, which will ensure that after the execution of the script, test results without problems.

Third, the need to master the use of automated tools expertise

In the current era, speed and quality requirements of the industry, customers want software vendors to deliver high-quality, bug-free application in a short time. This is why automated test applications upward trend, manufacturers are trying every automated testers to have knowledge and experience of the automation tools.

(1) Selenium

Selenium is a web application may be the most popular open source automated testing framework, but also other open source automated testing tools such as the core framework Katalon Studio, Watir, Protractor and the Robot Framework. Selenium supports multi-system environments (Windows, Mac, Linux) and various browsers (Chrome, FireFox, IE and headless browser (no interface)). It's a script can be written in various programming languages, such as Java, Groovy, Python, C #, PHP, Ruby and Perl.

(2) automated test platform - preferably measured

Gifted test is Tencent's mobile cloud test platform, with more than 50 experts in the field test, more than 300 professional test team, test the terminal more than 10 years experience, provides compatibility testing, automated testing, cloud real machine, equipment sharing and other services way, not only supports standard output capacity, but also provide customized test solutions to help companies build a comprehensive test system DevOps, and has a quality team of Internet thinking.

(3) UFT

UFT (Unified Functional Test) is a well-known commercial test tool for testing the function. It is API, Web services, desktop GUI testing, web pages, and other multi-platform mobile application provides a comprehensive feature set. This tool has advanced image recognition, reuse test components and automatically generates documentation capabilities.

UFT use VB script to register the testing process and object control. UFT is integrated into the Mercury Business Process Testing and Mercury Quality Center. The tool also supports to support CI as Jenkins CI through integration tools.

(4) Watir

Watir is a Ruby-based library of open source web automated testing tool. Watir support for cross-browser testing, including Firefox, Opera, headless browser, and IE. It also supports data-driven testing and integration BBD tools such as RSpec, Cucumber and Test / Unit.

(5) Studio Katalon

Katalon Studio is a powerful automated testing solutions in web applications, mobile and web services. Based on Selenium and Appium framework, Katalon Studio integrates the advantages of these frameworks in software automation.

This tool supports different levels of testing skill set. Non-programmers can quickly get started a test automation project (such as the use of spy object record test scripts), but also saves time programmers and senior testers to build a new library and maintain scripts.

Fourth, have a full understanding of the business needs

A skilled automation testers have a comprehensive understanding of front-end applications and services from the layer before the test phase begins. They need to know:

(1) the development of the programming language used by the team;

(2) by the end user platform or device needs to run the application;

(3) a database for storing information and user data of a rear end;

(4) connected to the system or web service api and use;

(5) Once the application is started, or the end-user features and functionality desired stakeholder;

(6) whether to perform a manual test at the beginning of the testing phase, and if so, how to implement?

(7) the expected time manual tester when testing application takes;

(8) Is there a version on any important bug has not been fixed, and how it will impact the business;

(9) need to complete the testing phase of the expected date of delivery;

(10) browser differences

Fifth, have the ability to rule out the failure of automation tools

Popular test automation tools are very large and complex project before you start using them, it needs testers have detailed technical knowledge of the tool itself.

In the project, you may also encounter this scenario:

"In the script displays the test results in some errors, but the application in accordance with business needs a good run. Script shows success, but the application dished out some real-time error."

This is called a false negative and false positive, usually occurs when the testers do not have enough knowledge to configure the test script. They just continue to use the template, and expect the test to run successfully. If you want to become a successful automated testers, you should have detailed knowledge of the configuration tool, and when the scene such as false positives and false negatives like appearance, how to troubleshoot them.

Sixth, we have experience of using a test management tool

The main purpose of automated testing is to reduce the overall complexity of the testing process. If you are an automated testers, you should have some experience of test management tools. Because they are flexible, allowing the user to record any errors, and rank them according to priority based on how errors affect the project. In addition, its scalability allows easy exchange of information among team members. We have a test management tool will ensure that all necessary information about the test phase are safe, and only allow access to your team and management.

Seven, to understand the different development methods

Team not only want to test personnel with knowledge of testing. Also you need to understand how different development methods work. If the project or follow DevOps agility, team leaders do not expect to tell you what to do. Timely delivery of work, and prepare for a day of meetings, to prevent any awkward situation when asked some key questions about the current session stakeholder or manager. Understand the development method will also help your career can go further.

to sum up:

These skills will help testers to get a very high value in the industry. In particular, have adequate knowledge of all the latest automation tools and CI / CD tools (such as Jenkins or GitLab), then you will not only become the team a valuable resource, but will also become a valuable resource in the industry.

Guess you like

Origin blog.51cto.com/14652106/2463466