Performing QA automation services is no easy task. There are several variables that are required to be kept in mind, especially those relating to scripting, running, logging, verifying, testing, test environment, debugging, reviewing etc. When it comes to automation testing, a great part of testing services depends on several simple yet necessary things that you should keep in mind to become an excellent automation tester. We enlist few of these tips relating to logging, running and verifying below.
Provide Comments to Disabled Tests
At times, you may require to disable an existing test temporarily, if the corresponding functionality of the test is disabled in the application under test or if the test results in an error that could potentially affect other tests. In such circumstances, one should write a comment to the disabled test, indicating details such as the author of disabling, reasons for disbanding the test (defect number, if any), date etc. Such comments become useful when the author/other testers may require to reopen the test after a long time. Though a very inconsequential advice, it can lead to extreme time and resource saving in the future.
Perform an automatic restart of failed tests
In a large number of cases, tests may fail when performed automatically but pass when they are run separately. Such cases may arise due to the use of the application for long durations or other specific issues which need to be investigated in order to find solutions and fix them. At times, such problems also arise because of the specific test environment or the interaction of the automation tool with the application under test. In these instances, tests may hang for no good reason, or worse, report strange errors. In these cases, it becomes necessary to perform an automatic restart of those tests that fail for unknown reasons.
However, sometimes, the tests also fail because of errors in the test itself and performing automatic restart may not solve the problem. In such cases, it is necessary to identify the cause of such errors and fix them accordingly.
Run Scripts Frequently
Usually, every new build requires running tests, but if the tests are unstable or flawed, even correctly run applications may show some errors. Thus, to stabilize your tests, it’s useful to run them as often as possible, as you are more likely to spot the problems and fix them on an immediate basis. It is also necessary to note that running tests each time on different builds may also be redundant. Instead, you can use the same build for multiple runs. This is particularly true at the time of introducing automation when the test duration is less and the number of tests is few, but as the testing progresses, it may become difficult to run all tests. Running frequent scripts is especially useful when a large number of verifications are required or for tests that work for a long while and are dependent on several factors. Such tests must be thoroughly debugged as they must be reliable in future.
Errors in Logs Should Be Informative
Many times, a typical error message may show something on the following lines-
ERROR: incorrect value
In such cases, the text of the error does not disclose any details required to correct the flaws. A number of components are missing in such error logs, including the actual and expected values, place of occurrence of error and actions leading to such error. Hence, while formulating tests, keep such things in mind. If required, you can also arrange the expected and actual values on different lines, one under the other. In this case, it’s also easier to see the differences, especially in the case of long strings.
Take screenshots of the error
A screenshot taken at the time when the error arises is a great tip that could be of great help in performing tests effortlessly. It is especially useful in GUI applications where errors are easier to identify visually or where the application under test is affected by an unforeseen event (for instance, there appeared a system message that caught the focus). If the tool does not have an automatic screenshot functionality in case of an error, you should go ahead and take it manually. Often, tools allow you to take either a screenshot of the screen or a page, and for these actions, you may need to call different functions.
Hence, while you are working with a web application and require a screenshot to be taken, think of the information that you need to be saved. If the content of the entire page is needed, it is convenient to save the entire page. In case you require a screenshot (for example, to not only see the browser window, but also other applications), use the technique of saving the entire screen, while also keeping in mind that some of the page content may not be shown in the screenshot.
Conclusion
The tips mentioned above may help you in performing tests efficiently. Also note that while you are running tests against the application, it is necessary to have a detailed report with messages/information regarding any issues faced during the test run. Also, never forget the benefits of organizing your tests’ run and the efficiency and time-saving benefits it may bring to your organization.
Give us 30 minutes and we will show you how many millions you can save by outsourcing software testing. Make Your product quality top notch. Talk to us to see how