Есть ли способ истечь необъяснимый JavaScript? - PullRequest
1 голос
/ 29 января 2012

В настоящее время наши разработчики не скрывают код javascript, чтобы они могли лучше проконтролировать наш код при подготовке перед его выпуском в эксплуатацию.

Однако иногда они забывают запутать код перед выпуском в эксплуатацию.

Мне было интересно, существует ли способ истечения необоснованного javascript, чтобы, даже если разработчики QA забыли запутать js, он автоматически запутывает js через определенный промежуток времени (скажем, через 12 часов)?

Ответы [ 3 ]

4 голосов
/ 29 января 2012

Нет, то, что вы просите, не имеет смысла.

Проблема в вашем процессе: почему происходит обфускация, прежде чем ваши разработчики QA получат продукт? Почему это не между ними и окончательной версией клиента (даже если это необходимо)?

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

1 голос
/ 29 января 2012

Javascript не запутывает себя, поэтому этот вопрос не имеет большого смысла.

Запутывание выполняется отдельным инструментом в процессе сборки / выпуска.То, что вам нужно, это улучшить / автоматизировать часть процесса выпуска, чтобы исключить вероятность человеческой ошибки в этом процессе.Это может быть сделано либо с более строгим ручным процессом, либо с большей автоматизацией.

В общем, команда QA должна тестировать EXACT тот же самый код, который развертывается на конечном сайте, так что если это запутано, то это то, что QAдолжен проверить.Итак, прежде всего, я бы рассмотрел, что делает QA и почему.Они должны тестировать обфусцированный код.

Если QA необходимо по каким-либо причинам пересмотреть необфусцированный код (я не могу думать о каких-либо вероятных причинах), то они должны сделать свою собственную копию кода на своихсобственные системы, которые не имеют обьектов и не должны помещать код без обуславливания где-либо в процессе выпуска.

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

0 голосов
/ 29 января 2012

Ваш процесс неверен.Если для отладки разработчикам нужен необфускацированный javascript, сделайте так, чтобы у самого сервера был флаг отладки, чтобы возвращать необсуждаемый код.По умолчанию запутанный код.Требуются оба присутствовать.Включите запутывание в сценарий выпуска в процессе выпуска.

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

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

...