Marrying Artificial Intelligence with Software Testing: Challenges & Opportunities