Убедитесь, что тесты для формы, которые в PHP совпадают с кодом Javascript - PullRequest
0 голосов
/ 23 марта 2012

Существует ли механизм, гарантирующий, что тесты для обеспечения того, чтобы данные, предоставленные пользователем, имели одинаковые тесты, применяемые как клиентом (браузером), так и сервером.куча тестов (скажем, в PHP) и автоматически генерировать те же тесты на другом конце (Javascript в этом примере).Конечно, это может быть наоборот.

РЕДАКТИРОВАТЬ

Вы хотели бы Javascript в браузере для проверки формы.Но пользователь может и может отключить это.Чтобы убедиться, что данные действительны, вам нужно получить код сервера (PHP) для выполнения этих тестов.Можно ли просто создать один набор тестов, чтобы гарантировать достоверность данных независимо от языка - тем самым сокращая усилия по разработке, а также позволяя вносить изменения в достоверность данных для зеркального отображения?

Ответы [ 3 ]

0 голосов
/ 23 марта 2012

Краткий ответ - нет. Существовали такие вещи, как xajax , в которых генерировался javascript на стороне сервера, и, таким образом, вы могли писать серверный код, который влиял бы на интерфейс, и повторно использовать часть кода проверки. Но я считаю это плохой практикой. Вы должны писать тесты бэкэнда и внешнего интерфейса отдельно, потому что они отличаются во многих отношениях, не говоря уже о скорости и слишком сильной связи

0 голосов
/ 24 марта 2012

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

Может быть стоит.

0 голосов
/ 23 марта 2012

Единственный похожий набор тестов, который я могу себе представить, - это regex выражения, которые могут использоваться в клиентских и серверных кодах одинаково. Другим тестом может быть длина переменных, проверка на наличие специальных символов.

Но помните, что ваш JavaScript имеет так много уязвимостей из-за недоступности синтаксических анализаторов тегов, методов предотвращения внедрения SQL. Вы не можете полностью проверить достоверность данных, если не отфильтровали несколько важных данных на сервере.

Проверка JavaScript, хотя и обеспечит лучший пользовательский опыт, прежде всего его роль в проверке данных. Поскольку вы решаете не раздражать пользователей потерей данных их форм из-за неправильных вводов, вы используете методы alert, localStorage и ajax для асинхронной проверки с обратной связью с сервером.

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

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