What are the differences between list and tuple data types in Python, and when would you use each in a testing framework?