Создание адресов электронной почты, безопасных от ботов на веб-странице?

Я не не соглашаюсь с Dan (хотя лучший выбор может просто состоять в том, чтобы не ответить)..., но...

Поблочное тестирование является процессом записи кода для тестирования поведения и функциональности системы.

, Очевидно, тесты улучшают качество Вашего кода, но это - просто поверхностное преимущество поблочного тестирования. Реальная выгода к:

  1. Облегчают изменять техническую реализацию при проверке, что Вы не изменяете поведение (рефакторинг). Правильно протестированная единица кодирует, может настойчиво осуществляться рефакторинг/очищаться с небольшим шансом повреждения чего-либо без того, чтобы замечать его.
  2. Вселяют веру разработчиков при добавлении поведения, или создание фиксирует.
  3. Документируют Ваш код
  4. области Indicate Вашего кода, которые сильно связываются. Это твердо к коду модульного теста, который это сильно связало
  5. , Обеспечивают, средство использовать Ваш API и искать трудности рано на
  6. Указывает на методы и классы, которые не являются очень связны

, Вы должны модульный тест потому что в Вашем интересе поставить удобный в сопровождении и качественный продукт Вашему клиенту.

я предложил бы, чтобы Вы использовали его для любой системы или части системы, который модели реальное поведение. Другими словами, это особенно хорошо подходит для развития предпринимательства. Я не использовал бы его для throw-away/utility программ. Я не использовал бы его для частей системы, которые проблематичны для тестирования (UI является типичным примером, но это не всегда имеет место)

, самая большая ловушка - то, что разработчики тестируют слишком большую единицу, или они считают метод единицей. Это особенно верно, если Вы не поймете Инверсия Управления - в этом случае, то Ваши модульные тесты будут всегда превращаться в сквозное интеграционное тестирование. Модульный тест должен протестировать отдельные поведения - и большинство методов имеет много поведений.

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

46
задан cllpse 2 October 2008 в 18:21
поделиться

2 ответа

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

Однако при отображении адресов электронной почты других пользователей на вашем веб-сайте, я думаю, требуется определенная степень должной осмотрительности. К счастью, блоггер по имени Сильван Мюлеманн проделал за вас всю сложную работу . Он протестировал различные методы обфускации в течение 1,5 лет и определил лучшие из них, большинство из которых включает уловки css или javascript, которые позволяют правильно отображать адрес в браузере, но сбивают с толку автоматические парсеры.

1
ответ дан 26 November 2019 в 20:08
поделиться

Спам-боты со временем будут иметь собственные механизмы Javascript и CSS, поэтому я думаю, вам не следует смотреть в этом направлении.

0
ответ дан 26 November 2019 в 20:08
поделиться
Другие вопросы по тегам:

Похожие вопросы: