Agile Software Testing: Techniques and Tools