Разработка через тестирование для библиотеки JavaScript - PullRequest
10 голосов
/ 05 марта 2011

В данный момент я работаю над библиотекой JS для веб-сервиса, вы можете сравнить ее с Twitter Anywhere.Теперь я хочу сделать его более тестовым.Это нелегко проверить, потому что он должен работать на каждом сайте, который хочет его использовать, и, конечно, с каждым браузером.

Как я могу эффективно протестировать библиотеку?

ВсеЗапросы и ответы API в JSON, есть ли хороший способ проверить эти вызовы?

Я знаю о Cucumber и js-test-driver.

Привет, Хиелус

Ответы [ 2 ]

5 голосов
/ 05 марта 2011

Язык Javascript по своей природе динамичен, поэтому он действительно дружественный к тестам. Недавно я получил небольшой опыт тестирования javascript. Я переписал основные компоненты JavaScript с использованием TDD и получил ясный дизайн и более компактный код!

  1. рамки выборочного тестирования: qUnit . Начать тестирование очень просто.
  2. функциональный тестовый набор выбора: funcunit .

Я написал в блоге о тестировании API REST с FuncUnit здесь .

Если вам нужны примеры тестов и реализации, вы можете проверить мой репозиторий github .

Не задавайте вопросов, просто начните тестирование:)

2 голосов
/ 07 мая 2011

Если вы знаете о jsTestDriver, я думаю, вы уже нашли хорошее решение?

Вы можете использовать его для автоматического запуска ваших тестов в нескольких браузерах и возврата успеха или неудачи.

Это отличает его от других инструментов, использующих безголовые браузеры, так как с jsTestDriver вы выполняете свои тесты в реальных браузерах, которые, кажется, соответствуют вашим требованиям.

jsTestDriver поставляется с собственной структурой ограниченных утверждений, но вы можете подключить к ней другие, включая QUnit, YUI и Jasmine.

Вы сказали выше в отношении Жасмин: «Я не думаю, что могу делать BDD, потому что это библиотека, которая должна работать со всеми видами сайтов». Я не уверен, что вы подразумеваете под этим?

Жасмин предоставляет все утверждения, чтобы вы могли выполнять те же тесты, что и QUnit. Он также позволяет вам «шпионить» за обратными вызовами Ajax, перехватывать JSON, чтобы проверить или даже изменить его, а затем передать его обратному вызову по умолчанию. При этом вы можете проверить ответ JSON, а затем еще раз проверить, правильно ли на него отреагировал ваш пользовательский интерфейс.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...