Автоматизация web приложения написаного на Angular.js

Добрый день!
Подскажите пожалуйста какой инструмент лучше всего применить для такого вот проекта - клиент-серверное приложение (сервер будет написан на php (Rest API), фронтенд с помощью фреймворка Angular.js). Задача, которая стоит написания автотестов на UI и так же тесты на AP, применить нужно BDD. В дальнейшем так же хотят прикрутить сюда и мобайл. Думаю писать тесты на java c использованием rest-accured + jbehave. Для мобайла еще потом заюзать appium. Но вот прочитала что могут возникнуть проблемы с написанием тестов для UI из-зи Angular. Посоветуйте пожалуйста, что лучше применить, чтоб в дальнейшем не столкнуться с проблемами, если есть у кого-то подобный опыт. Заранее спасибо!

Если тесты на UI – то однозначно, нужно использовать Selenium WebDriver + было бы очень хорошо, если бы разработчики писали юнит-тесты, для того же JavaScript на UI.

Разработчики Angular, например, рекомендуют

Но, если вы тесты собираетесь писать не на JavaScript, то оттуда можно почерпнуть идею, как с элементами работать.

Если вы ожидаете подвохов от Angular, то пока ваше приложение разрабатывается, можете поэкспериментировать над уже существующими:

Мне нравится, например, https://www.goread.io/

Подвохи с Angular будут. Как минимум - это ожидание (и соотв. падение тестов, если не дождался) того или иного элемента на странице. Собственно Protractor как раз помогает с этим самым ожиданием. Под JS писать можно, но будут проблемы, надо будет бороться с его асинхронностью. Есть порт Protractor под .net, но он уже более года не обновлялся.