Я не использовал Canoo, но я использовал Selenium в течение нескольких лет.
Подход Selenium отличается от Canoo тем, что Selenium не пытается эмулировать браузер, а автоматизирует / создает сценарии для существующих браузеров. Таким образом, вам не нужно беспокоиться о совместимости JavaScript или подробностях механизма рендеринга в конкретном браузере.
Selenium Remote Control - это процесс, который запускает браузер, получает команды Selenium через сетевой сокет и выполняет эти команды в браузере.
Я согласен с ответом Даниэля выше, Selenium IDE является убийственной функцией! Получив надстройку в Firefox, вы сможете быстро создавать наборы юнит-тестов, щелкать правой кнопкой мыши по веб-страницам, выбирать утверждения и многое другое.
Интеграция Selenium Remote Control с другими языками проста, вы отправляете команды процессу удаленного управления с вашего языка.
До сих пор я использовал Selenium RC из Haskell, Python, Java и C #, все работает нормально.
Я думаю, что вы сможете запускать тесты для MSIE с сервера сборки Linux, открыв разрешения для сокета Selenium RC. Имейте в виду, что это потенциальная проблема безопасности.