Как лучше всего тестировать клиенты разных языков программирования на сервере?

Мы написали клиентов на разных языках программирования (Java, .NET/Silverlight, Flash, Javascript), которые взаимодействуют с сервером, поскольку наша цель - поддерживать различные технологии на стороне клиента. Функциональность, которую они должны выполнять, одинакова.

Одна из основных проблем, с которыми мы сталкиваемся сейчас, - это найти простой и эффективный подход для тестирования этого разнообразия клиентских технологий на сервере. В настоящее время мы используем maven, подключенный ко многим плагинам maven, таким как JSTestDriver, Flexmojo, NPanday и другие, которые мы разработали для этого самостоятельно. Есть ли лучший подход?

Буду признателен за любую помощь, будь то рекомендации для доступных структур / инструментов или инновационные идеи для этого.

Спасибо

2 ответа

Решение

То, что вам нужно, это чистый дизайн, в противном случае все беспорядок, и вы должны проверить все вместе.

Ваш сервер должен иметь интерфейс с другими системами (браузерами, настольными приложениями, мобильными приложениями), а затем тщательно протестировать этот API. Вы можете сделать это с помощью соответствующей платформы, в зависимости от технологии, используемой для сервера. Это должно быть вашим основным испытанием, а затем попытаться сохранить стабильность API, чтобы для каждой новой версии сервера вы просто запускали регрессионный тест.

Тем временем вы можете протестировать клиентские приложения самостоятельно, создав фиктивный сервер, который использует тот же API.

Последним будет ваш интеграционный тест, в котором вы запустите живую версию своего сервера и клиентского приложения и запустите интеграционные тесты.

Ожидается, что это хорошая основа для тестирования внешних программных текстовых интерфейсов, таких как взаимодействие клиент-сервер. Он работает с тестами, сформулированными в Tcl, на чисто логическом уровне черного ящика.

Другие вопросы по тегам