Exploratory Testing

Exploratory testing is very much what it sounds like. It is exploring the system to test that each component functions properly. It sees that every action that should take place, does take place. The goal is to see that every feature of the software works and that the user can reach and use those features without encountering any issues. Having the freedom to explore all of the sections of a piece of software allows going through happy flows as well as edge cases. It’s important, however, to follow the testing instructions in order to gain a clear understanding of what the scope of a testing cycle is and report only relevant issues as a result.

 

Testing can be accomplished by using design specifications, such as provided use cases, or through functional specifications. These specifications might include everything from integrations and user screens to user commands and data manipulations to business processes and searches. The test specification document provides a detailed view of what should and should not be tested, as well as additional pieces of information aiming to provide a smooth and valuable testing experience.

 

Here are six fundamental principles of exploratory testing:

  1. Reading the test specifications while familiarizing yourself with the software;
  2. Identifying the expected functions of the software;
  3. Interacting with the features of the software;
  4. Comparing the actual results of your interaction with the features to the expected results;
  5. Evaluating whether the software works as outlined in the test specifications;
  6. When the software doesn’t perform as expected, describing the issues encountered as detailed bug reports.
Smartphone and tablet data synchronization, woman syncing files and documents on personal wireless electronic devices at home, selective focus with shallow depth of field.
tester work3
Test Case Execution – Legacy

Test case execution is the process of performing a set of flows using specific instructions and comparing the results observed with the expected/intended results provided by our team. The goal is to make sure that everything works as implied in the test case suite on your selected environment. The most valuable aspect of the legacy test case executions is the ongoing communication with the Tester Work team in charge of that execution.

 

Starting with the moment you receive the test case execution invitation, you’ll be able to message the team and ask for help and clarification related to your execution. The team is instructed to help you throughout the duration of the test to ensure you’re not blocked in executing the test cases. The communication aspect, along with the detailed instructions, aims to provide a smooth testing experience leading to quality results.

 

Here’s a rundown of the most important aspects of this type of testing:

  1. The email invitation to the test case execution includes testing time frames, selected environment (Device/OS), and payment for completing the test;
  2. In order to ensure a smooth experience, we recommend replying to our invitation as soon as possible letting the team know whether you are available for the test;
  3. It’s important to read all of the testing instructions and to clarify any unclear aspects ahead of time, in order to meet the agreed deadlines;
  4. If the behavior encountered in the app doesn’t match the expected outcomes written in the test case suite, the affected test cases are “Failed” and relevant bug reports must be attached in the test case execution document;
  5. The test case execution is considered complete once all of the test cases inside the selected suite have the appropriate status assigned to them.
Test Case Execution – Tester Work Platform

While this type of project follows essentially the same flow as the legacy one, in this case, the process is automated through our platform and will be performed in our test runner without any interaction over emails with our team. The focus here is on the status of the test case, pass or fail. The test cases are designed in such a way that you’ll be able to execute each instruction in a given time frame and you won’t have to check any third party documents for executing them.  It’s important to keep in mind that the notes and visual proof of the issues encountered while testing need to be relevant to the instructions provided, in order to ensure the success of an execution.

 

The two most important aspects of testing via the test runner are attention to detail and speed! The test case instructions need to be followed thoroughly in order to avoid flagging non-issues caused by misunderstanding the steps, while also keeping an eye on the clock to ensure you have enough time left to correctly go through the presented instructions.

 

Here are some fundamental principles of testing via the test runner:

  1. The Tester Work profile includes notifications about upcoming and ongoing tests
  2. Successful tests are the ones where the instructions have been thoroughly followed
  3. Being aware of the time left to execute a set of instructions allows stress-free testing
  4. The desired outcome of a test case execution is having all of the relevant notes and proof for the issues encountered during that execution.
image