Position is test automation, not manual testing. So obviously programming is required.
You will NOT be developing production code, but automated test. You need different skill set from a developer, use different tools for different goals, use different design patterns, need different communication skills, because you will encounter different problems than core developers do.
Even if your text is copied from job ad, it does not mean that HR/recruiter who posted the ad has full understanding what job all about. They were given keywords by hiring manager, and they slapped them together to get ad. It is your work as skilled professional to understand your job, understand how skills might be misrepresented in job ad, and present your skills TO THEM (gatekeepers who might have little clue about how job is performed in real life) in a way they will realize your skills are relevant, so they will pass your resume to hiring manager.
You cannot expect recruiters, or HR representatives, to be fully knowledgeable about all details of the job. Read every detail, and try to get insight from other professionals in the area, or even better, company insiders. Quite often internal or vague terminology is used in job posting. Best recruiters know that, and know what hiring manager wants (info not mentioned in beyond job posting), because they know company or hiring manager, possibly even worked with him on hiring other candidates, or had some candidates for job rejected. As always, not all recruiters are best.
Yes, in ideal world it would be different - but we do not live in ideal world, AFAICT.