Yes, Checking the boundaries of your application is called ‘negative testing’. If you want ATS to return the result that your test script was successful when a step fails, because you want it to fail do the following:
When ATS finds the widget, the precondition will be successful; however, the ‘Assert False’ will fail because the result of the precondition is successful resulting in a failed test script.
When ATS does not find the widget, the precondition will fail and the ‘Assert False’ won’t be executed because the precondition failed resulting in a successful test script.
I hope this helps!