Software testers need to know anything about automation (translation)

How important is still on the progress of automated test even if you are using manual testing to understand. No matter what your role is, your daily work is still likely to be enhanced by the use of at least some of the methods in this article. Here, learn the meaning of some common terms and how some of them might not apply in software development factory.

Recently I tweet about automation software testers need to understand the world is what happened. It has got a nice warm reply, so I thought I should reveal my thoughts.

These days no matter what your role is in the test in your daily work will be possible in the following ways, at least some of which are strengthened. I suggest that from the lowest level of understanding of what these terms mean an example and they may be used by software development factory.

Continued integration services

One of the largest in the past decade to come in the field of automation of software development change is task automation. In the past, like build a special version of an application, create a document, or update the status of a bug report is artificial. Some teams even contribute to starting a responsible version of "founder" responsibility. Like these human tasks (or is tightly bound to the person or machine) it is time-consuming, and to create in order to avoid bottlenecks, such as creating private person to occupy a day and discourage new version is completed.

Fortunately, the continuous integration (CI) is standardized and automated tools to save by allowing the task. Continuous Integration Services important task to arrange and perform tasks on a regular desktop computer can do and make these tasks are executed on the target machine rather than its own. Back to create a version of the example, let replace Bob to create a version on his machine responsible for the hand, a continuous integration service can be integrated to select a target machine and perform a version on that machine. Bob not only do not need to physically appear at that stage version of the machine, but also to create a version can happen at any time, either scheduled or in response to another action.

For example, Alice might want to test a person to see a program based on the latest version of the application to change whether errors are repaired, and she can initiate their own version of creation. This not only do the resources from the task of representative freely up and running, but also to give the team more control than in the individual and team processes. You can also bind with the continued integration tasks to a deeper thread some tasks. Learn how a continuous integration work is programmed not put a lot of emphasis on automation in good primer.

One way to use continuous integration test suite is run from end to end. These tests often need to run a few minutes or even hours. I have used continuous integration to spin-up and spin-down test machine and initiate testing on those test machine. Relative to run these tests on your own machine which is a great help, because it allows developers to test when a test run around to do other work. Continuous integration server to control every aspect of all of these tasks.

Some common examples of open source continuous integration service tool Jenkins, cloud-based Travis CI, and proprietary tools Bamboo, but these are also some other. Even lower technique is to use a tool like cloning or windows task assignee of up to automate tasks in a single machine.

CI is an independent program for the development of software outside the hobby, and it is a place to test a really add value.

Modern source control

I need to point out first of all I love the source. When writing code (or blog!), It is not just a helpful tool. For a coding testers, it need not be a mental person. Even if a test does not encode, when testing software to use modern methods of control may be a source of great interest.

In modern What do I mean? I mean to use source control 1) integration with other tools, such as CI server or issue tracker, and 2) allows the use of a good team workflow habits, such as trunk-based development. Good source control allows individuals to analyze what changes and deeper mining software engineering is taking place.

A close source of history and some basic training tests ask a code like "Which documents in the application where there is the most development work on them?" "Which file has the biggest change?" "Set which changes include causing the problem ?"wait. This information will help you find the pace and implied trigger some event.

CI integration with source code even more powerful. In the event the issue tracker who make their status updates on changes caused by the development of. Tester requirements are necessary requirements can automatically find out the code input, such as by automatic test pattern, or code requirements. Construction and deployment can be initiated to change the code. When source control is very good use, there are many possibilities in this case, it is implied after a sustained transfer concept.

For example, I have a job based on open source projects integrated cloud service delivery in order to check every submitted by the submitter. In this project, continuous integration and automated tests run all check all the increase in the form and format code. If you submit a false test result, or does not meet the style guide set, and failed to submit it implies submission and project maintainer to modify the submission. This helps in the history of each project submitted offers in a uniform style and suggests that the submitter may add or update module in tiny error.

These are currently hot in source control is Git, free and open code, it has a robust surrounding ecosystem. These are also some other aspects, such as Subversion , Mercurial and Microsoft Team Foundation.

Telemetry and monitoring

This is a topic I am not familiar with, but it is a test to determine those who are interested. Monitoring is a way, the hook is placed from one application to go back information on how software is used to the software creator. It can be used comprises the rear end of the positive / server application program interface function, and in which the instruction by the user interface portion of the composition to be used and at what frequency, and the like.

The goal is not to send a special user information back to the development team, more general information about an application that is being used and how the parts are used. This provides the end-user perspective of what to do, how they actually use the application and how it is to get a particular attribute. An Lanpei Microsoft is testing a part by telemetry and monitoring had a brief discussion of these cool things he had done.

History similar to minimize resource control, monitoring can help you find out, from simple questions ( "How many people last week's record?") To the more specific and visual problems ( "When the characteristic X how users when released to change their habits? "). These are the kinds of questions to help test them perform better test strategy and, in general, to help the user make the team better choice.

For more information, please check the AB test podcast page and Brent Johnson. How to use a mainstream product telemetry, take a look at how to use monitoring technology Mozillla by Firefox.

Selenium also use

Last but certainly not least, Selenium WebDriver is a work in a test web applications requires considerable familiar tools either. At this point, WebDriver is a standard tool for automatic drive browser behavior, similar to how a human user interactive website app in the browser. It has some language bindings, and some mainstream browsers work, and is a very good development can be the first component of extensibility API examples. In short, it is an excellent work.

When the flexibility to use, WebDriver allows testing and development to make the user experience testing to get automated, this can be placed in a continuing process can be passed. I wrote a simple web-based driving test, you can find the transaction as navigation links to the landing page, rather than looking for a user name and password occasions (due to a bad deployment), or look for an open dialogue when a control is clicked to imagine (an obvious but serious problems). These are the things to be found quickly but can not be covered by unit tests.

WebDriver can also be used to write automated tests that can be performed locally to double check those changes will not interrupt the important characteristics of a non-reserved manner. These are useful even for WebDriver extend beyond functional testing.

For the test to learn the code of interest is, WebDriver can provide a good introduction to learn code. Automated test scripts can be an easy way to become familiar with the programming language of the code rather than dig deeper divide. It provides a sufficient framework to start and still make a good testing is completed.

The brain has these concepts, strengthen test automation, not what your role in the software development yes.

Guess you like

Origin www.cnblogs.com/fengye151/p/11519233.html
Recommended