TestProject is a great tool full of awesome features as well as a thriving and ever increasing library of addons to enhance built in functionality. What’s more it’s completely free In this post I will highlight 6 features of TestProject you could find useful but may not be aware of.

#1 On Failure Behaviour

On Failure Behaviour can be set at test and test step level. It allows you to specify how a test reacts when a test step fails. The test step behaviour defaults to the behaviour selected at test level unless explicitly set. You can choose to continue or fail a test when a step fails. You can even select Recovery Test which allows you to provide an additional test to run on failure. This is great if you still want to ‘clean up’ test data or reset the state of an application even if a test fails,

#2 Manual Test & Test Document

Manual Test & Test Document are two similar features which allow you to export TestProject Tests to an xlsx file. Manual Test outputs an Excel table of all Test Steps and Test Data. It also generates columns for you to provide an Expected & Actual Result as well as a Pass/Fail status. Nice huh? Test document works similarly but instead of outputting the Result details It details all configuration values associated to each step such as, the Element Locator, On Failure Behaviour and Timeouts This is nice if you wanted to document each test outside of TestProject or if you want quick view of how a test is set up.

#3 Element Explorer & Element Locator

Both the Element Explorer and Locator features are available within the Recorder.

Element Locator allows you to provide an XPATH or CSSSELECTOR locator. Clicking Evaluate will then confirm if an element can be found using the locator on the current page. You can then save the locator. A nice feature if you have locators created outside of TestProject.

Element Explorer allows you to explore the Dom in a similar way to Googles Developer tools. Clicking on an Element within the Explorer Window will highlight the element on the webpage and returns some details about the element including possible Selectors e.g. id, class & name.

#4 Take Screenshot

By default, tests are set up to take screenshots on failed steps. Screenshots can then be reviewed via the test report. This functionality can be changed to take a screenshot regardless of result.

#5 Waits

Yes, the bane of many tester’s lives. Waits can cause real problems and defining a robust wait strategy can pay real dividends. TestProject offers two options Pause and Adaptive waits.

Pause can be applied before or after a step and allows you to define a period of time, in milliseconds for which no actions will be taken.

Adaptive Wait is pretty new to TestProject and it is very welcome. With the introduction of Adaptive Wait TestProject will now intuitively wait until the application is in the right state to continue instead of failing instantly. This helps if your application is slightly slower to load on one device over another.

The Adaptive wait functionality allows you to specify a timeout value which by default is set to 15 seconds.

#6 Invert Step Results

Invert step Results allows you to Invert a passed step into a fail and vise versa. Sounds odd I know but It can be used in conjunction of the ‘recovery Test feature mentioned earlier to provide the ability to do if-else statements.

See this article for more information .

Well, that brings to the end of this post if you want to find out more about TestProject go check out the docs and then have a play with TestProject to see what you can do.

TestProject: https://testproject.io/

Have fun!

Ryan Howard

Hi,I'm Ryan. I'm a Software Tester, Quality Advocate and founder of How QA.