# Testing and Debugging

{% hint style="info" %}
### Learning Intention

* Determine sets of suitable test data, including:
  * boundary values
  * path coverage
  * faulty and abnormal data
* Determine typical errors experienced when developing code, including syntax, logic and runtime, and explain their likely causes.
* Use debugging tools, including:
  * breakpoints
  * single line stepping
  * watches
  * interfaces between functions
  * debugging output statements
  * debugging software available in an integrated development environment (IDE)
{% endhint %}

{% hint style="success" %}
### Success Criteria

* I can compare and apply boundary value, path coverage and faulty and abnormal data testing.
* I can identify, explain and fix syntax, logical and runtime errors.
* I can use a range of debugging tools in a Python Integrated Development Environment (IDE)
{% endhint %}

