TGTGInsighttelegram intelligenceLIVE / telegram public index
← Python Заметки

TGINSIGHT SIMILAR POSTS

Најди сличен содржај

Изворен канал @pythonotes · Post #336 · 22 мај

Популярность имеет свои минусы. Чем популярней язык программирования, тем выше его распространённость, а значит найдутся те кто поспешит воспользоваться этим. С ростом популярности Python всё больше на PyPi появляется вредоносных пакетов. Трояны, стиллеры и доставщики более опасных вредоносов. Команда PyPi постоянно мониторит подобные случаи но и их возможности достигли предела. В результате сервис временно закрывает возможность заливки новых пакетов и регистрации юзеров. PyPI new user and new project registrations temporarily suspended Возможно одной из причин большого наплыва вредоносов является резко возросшая доступность их создания. Сегодня любой, даже не программист, может попросить у ChatGPT написать необходимый код и все инструкции для атаки. Основной тип атаки - рассчёт на опечатку в названии пакета. Если невнимательный программист случайно установит pilow или djangoo, считай что вредонос уже в системе. Чтобы избежать подобных факапов я рекомендую: ▫️ Всегда работайте в виртуальном окружении, неизвестные проекты устанавливайте внутри контейнеров. ▫️ Используйте файл requirements.txt вместо ручной установки пакетов ▫️ Очень внимательно пишите названия пакетов, а после написания проверьте еще раз. Сверьте с названием из документации. ▫️ После успешных тестов всегда фиксируйте версию пакета. Бывали случаи когда опасный код добавляли в новые версии. К тому же и без этой опасности не рекомендуется ставить по умолчанию последнюю версию. ▫️ Используйте вспомогательные инструменты для проверки безопасности, например https://pyup.io/safety или https://github.com/PyCQA/bandit. Они помогут не только найти опасный код в чужих пакетах, но и ваш код проверит на уязвимости. Будем надеяться что PyPi переосмыслит методы борьбы с вредоносами, например внедрит ИИ для проверки как симметричный шаг. #offtop

Hashtags

Резултати

Пронајдени 4 слични објави

Пребарај: #bdd

当前筛选 #bdd清除筛选
djangoproject

@djangoproject · Post #335 · 09.05.2017 г., 05:22

https://code.tutsplus.com/tutorials/behavior-driven-development-in-python--net-26547 Behavior-Driven Development (which we will now refer to as "#BDD") follows on from the ideas and principles introduced in #Test-Driven Development. The key points of writing tests before code really apply to BDD as well. The idea is to not only test your code at the granular level with unit tests, but also test your application end to end, using acceptance tests. We will introduce this style of testing with the use of the Lettuce testing framework.

Hashtags

djangoproject

@djangoproject · Post #199 · 29.11.2016 г., 16:13

http://pythonhosted.org/behave/ behave is behaviour-driven development, Python style. Behavior-driven development (or #BDD) is an agile software development technique that encourages collaboration between developers, #QA and non-technical or business participants in a software project. We have a page further describing this philosophy. behave uses tests written in a natural language style, backed up by Python code. Once you’ve installed behave, we recommend reading the tutorial first and then feature test setup, behave API and related software (things that you can combine with behave) finally: how to use and configure the behave tool.

Hashtags

djangoproject

@djangoproject · Post #552 · 23.01.2018 г., 16:33

https://pypi.python.org/pypi/pytest-bdd #BDD library for the py.test runner #pytest-bdd implements a subset of Gherkin language for the automation of the project requirements testing and easier behavioral driven development. Unlike many other BDD tools it doesn’t require a separate runner and benefits from the power and flexibility of the #pytest. It allows to unify your unit and functional #tests, easier continuous integration server configuration and maximal reuse of the tests setup. Pytest fixtures written for the #unit_test s can be reused for the setup and actions mentioned in the feature steps with dependency injection, which allows a true BDD just-enough specification of the requirements without maintaining any context object containing the side effects of the Gherkin. imperative declarations.