Тест

Тест по окр: Пройти онлайн-тест на ОКР (тест на обсессивно-компульсивное расстройство)

Содержание

Пройдите наш тест и узнайте, есть ли у вас обсессивно-компульсивное расстройство

Обсессивно-компульсивное расстройство (ОКР) — это психическое заболевание, при котором у человека появляются навязчивые и пугающие мысли, повышенная тревога и чрезмерное стремление к выполнению плана. Наш тест основывается на диагностике одного из симптомов ОКР: стремление к идеальному порядку. Конечно же, данный тест не является строго научным, тем не менее его результаты могут быть полезны.

Мы в AdMe.ru уверены: предупрежден — значит вооружен. Отвечайте на вопросы нашего теста и ищите интерпретацию ответов в конце статьи. Постарайтесь не задерживаться долго на каждой картинке.

1. Какая мишень отличается от остальных?

Нажмите на картинку, чтобы узнать ответ

Нажмите на картинку, чтобы узнать ответ

2. А какая из этих лапок отличается от других?

Нажмите на картинку, чтобы узнать ответ

Нажмите на картинку, чтобы узнать ответ

3. В каком квадратике с линиями что-то не так?

Нажмите на картинку, чтобы узнать ответ

Нажмите на картинку, чтобы узнать ответ

4. Какая ромашка отличается от остальных?

Нажмите на картинку, чтобы узнать ответ

Нажмите на картинку, чтобы узнать ответ

5. А авокадо?

Нажмите на картинку, чтобы узнать ответ

Нажмите на картинку, чтобы узнать ответ

6. Определите, с какой мандалой здесь что-то не то

Нажмите на картинку, чтобы узнать ответ

Нажмите на картинку, чтобы узнать ответ

7. Где находится отличный от остальных ромб?

Нажмите на картинку, чтобы узнать ответ

Нажмите на картинку, чтобы узнать ответ

8. Какая из этих звезд отличается от других?

Нажмите на картинку, чтобы узнать ответ

Нажмите на картинку, чтобы узнать ответ

9. Один из этих прямоугольников не похож на другие. Какой именно?

Нажмите на картинку, чтобы узнать ответ

Нажмите на картинку, чтобы узнать ответ

10. Найдите круг, который отличается от остальных

Нажмите на картинку, чтобы узнать ответ

Нажмите на картинку, чтобы узнать ответ

Результаты

Вы ответили правильно на 4 и меньше вопросов

Пока вам не о чем волноваться. Стремление к идеальному порядку у вас не ярко выражено. Человек с симптоматикой ОКР свои фобии и тревоги старается убрать при помощи навязчивых и утомительных действий, таких, например, как выстраивание предметов в линию, а также при помощи соблюдения одного только ему известного плана действий.

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

Вы ответили правильно на 5 и больше вопросов

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

Но не волнуйтесь: даже если у вас диагностируют данное заболевание, помните, что оно вполне поддается лечению, главное — вовремя заметить болезнь.

Кстати, забавный факт. В 2000 году ученые-химики получили Шнобелевскую премию за то, что открыли взаимосвязь между ОКР и романтической любовью. Оказывается, их невозможно отличить друг от друга на биохимическом уровне.

Навязчивые состояния — Врач-психотерапевт Сергей Мельников

Шкала Йеля-Брауна для обсессивно-компульсивного расстройства (Y-BOCS) (от англ. «Yele-Braun obsessive-compulsive scale») — профессиональный психологический тест, предназначенный для определения синдрома навязчивых состояний.

Тестовый опросник содержит 2 подраздела: подшкала навязчивых мыслей (обсессий) и навязчивых действий (компульсий).

Инструкция к заполнению

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

Оценка по шкале обсессий (навязчивостей)

1. Сколько времени в течение суток у Вас бывают навязчивости?

 Не отмечаются вообще.
 Навязчивые мысли бывают менее 1-го часа в течение дня .
 Навязчивые мысли отмечаются 1-3 часа в течение дня.
 Навязчивые мысли бывают 3-8 часов в течение дня.
 Навязчивые мысли бывают более 8 часов в течение дня.

2. Насколько навязчивости нарушают Вашу повседневную жизнедеятельность?

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

3. Испытываете ли Вы психологический дискомфорт из-за навязчивостей?

 Нет.
 Я испытываю незначительный психологический дискомфорт из-за навязчивых мыслей.
 Я испытываю значительный психологический дискомфорт из-за навязчивых мыслей, но в целом, чувствую себя удовлетворительно.
 Я испытываю сильный психологический дискомфорт из-за навязчивых мыслей, и это значительно влияет на мое самочувствие.
 практически в течение всего дня я испытываю очень сильный психологический дискомфорт из-за навязчивых мыслей.

4. Сопротивление навязчивостям.

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

5. Контроль над навязчивостями.

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

Оценка по шкале компульсий (действий/ритуалов)

1. Сколько времени в течение суток у Вас занимает компульсии?

 Я вовсе не совершаю навязчивые действия и ритуалы.
 Я трачу на навязчивые действия и ритуалы до 1-го часа в течение суток.
 Я трачу на навязчивые действия и ритуалы 1-3 часа в течение суток.
 Я трачу на навязчивые действия и ритуалы 3-8 часов в течение суток.
 Я трачу на навязчивые действия и ритуалы более 8 часов в течение суток.

2. Насколько компульсии нарушают Вашу повседневную жизнедеятельность?

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

3. Испытываете ли Вы психологический дискомфорт из-за компульсий?

 Нет.
 Я испытываю незначительный психологический дискомфорт из-за навязчивых действий и ритуалов.
 Я испытываю значительный психологический дискомфорт из-за навязчивых действий и ритуалов, но в целом, чувствую себя удовлетворительно.
 Я испытываю сильный психологический дискомфорт из-за навязчивых действий и ритуалов, и это значительно влияет на мое самочувствие.
 практически в течение всего дня я испытываю очень сильный психологический дискомфорт из-за навязчивых действий и ритуалов.

4. Сопротивление компульсиям.

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

5. Контроль над компульсиями.

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

Тест на ОКР (обессивно-компульсивное расстройство)

Обсессивно-компульсивное расстройство (ОКР) — это хроническое и выводящее из строя нервно-психическое состояние, распространенность которого в РФ составляет около 2%. Заболевание характеризуется наличием навязчивых идей (повторяющиеся и постоянные мысли, воспринимаемые как навязчивые или неуместные и вызывающие выраженную тревогу или стресс) или принуждений (повторяющиеся или умственные действия, которые человек испытывает, стремясь выполнить, как правило, для уменьшения вызванного беспокойства) одержимостью. В Юсуповской больнице работают высококвалифицированные врачи, прошедшие специализацию по психиатрии, имеющие научную степень и большой опыт в диагностике и лечении обсессивно компульсивного расстройства. Если у вас возникли вопросы, вы можете записаться на консультацию онлайн, на сайте Юсуповской больницы, города Москвы, и обсудить вопросы диагностики, лечения и реабилитации.

Диагностика ОКР

Точная оценка обсессивно-компульсивного расстройства имеет решающее значение в связи с ее недостаточной диагностикой, сложностью установления точного диагноза и необходимостью тщательного и конкретного планирования и оценки лечения. Обсессивно-компульсивное расстройство у взрослых: тест на ОКР. Человек, страдающий обсессивно-компульсивным расстройством, может быть одержим микробами или своей безопасностью, и может найти облегчение от связанной с этим тревоги, только при выполнении ритуалов, таких как многократное мытье рук или ритуальное запирание и отпирание дверей. Если вы подозреваете, что у вас может быть обсессивно-компульсивное расстройство, пройдите тест на невроз навязчивых состояний, чтобы определить, требуют ли ваши симптомы посещения квалифицированного медицинского работника. Точный диагноз может быть поставлен только путем клинической оценки.

Обсессивно-компульсивное расстройство (ОКР) у взрослых характеризуется тремя признаками или симптомами:

  • Навязчивые идеи, которые являются нежелательными мыслями, образами или побуждениями, которые вызывают бедствие;
  • Принуждения, которые представляют собой повторяющиеся действия или мысли, которые человек использует для нейтрализации или противодействия негативным чувствам или мыслям;
  • Тревога, обсессивно-компульсивное расстройство может быть диагностирован, если у кого-то есть навязчивые идеи, принуждения, или оба состояния. Поскольку навязчивые идеи и компульсии могут принимать любую форму, а ОКР сильно различается по степени тяжести, диагностика может быть сложной, и обычно для этого требуется специалист, который может правильно диагностировать заболевания.

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

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

Обсессивно-компульсивное расстройство: тест Йеля Брауна

Тест Йеля Брауна является золотым стандартом для измерения тяжести симптомов обсессивно-компульсивного расстройства. Данный тест обладает превосходными психометрическими свойствами для оценки тяжести обсессивно-компульсивных симптомов, отражающих обсессивно-компульсивные изменения, также тест имеет хорошую чувствительность и специфичность для диагностики обсессивно-компульсивного расстройства.

Обсессивно-компульсивная шкала Йеля-Брауна — это инструмент, управляемый клиницистами, разработанный в 1989 году для оценки наличия и выраженности обсессивно-компульсивных симптомов. Он разделен на контрольный список симптомов и шкалу серьезности. Контрольный список симптомов включает 54 дихотомических элемента, оценивающих текущее или предшествующее наличие определенных навязчивых идей и побуждений. Шкала тяжести состоит из 10 пунктов, которые количественно определяют влияние навязчивых идей и принуждений, выявленных с помощью контрольного списка симптомов.

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

Для решения этих проблем в 2000 году была опубликована пересмотренная версия шкалы Йеля Брауна с некоторыми отличиями по сравнению с первоначальной шкалой. В частности, контрольные списки навязчивых идей и принуждений формально не подразделяются на различные группы симптомов, некоторые элементы в контрольном списке симптомов были переписаны и расширены, и был создан новый контрольный список. Кроме того, в шкале тяжести элемент, оценивающий «устойчивость к навязчивым идеям», был заменен на элемент «интервал без навязчивых идей». Наконец, определения одержимости и принуждения были перефразированы, и некоторые вспомогательные элементы были удалены из текста.

Тест Йеля Брауна (тест на ОКР)

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

Вопросы:

1) Сколько вашего времени занято навязчивыми мыслями в течение 24 часов?

  • не тратите время на навязчивые мысли,
  • менее 1 часа в день,
  • 1-3 часа в день,
  • 3-8 часов в день,
  • более 8 часов в день.

2) Как сильно ваши навязчивые мысли мешают вам в социальных, рабочих или других сферах?

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

3) какое беспокойство вызывают ваши одержимые мысли?

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

4) Сколько усилий вы предпринимаете, для того чтобы противостоять навязчивым мыслям?

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

5) Насколько вы контролируете свои навязчивые мысли?

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

6)Сколько времени вы тратите на выполнение компульсивного поведения?

  • не тратите время,
  • менее 1 часа в день,
  • 1-3 часа в день,
  • 3-8 часов в день,
  • более 8 часов в день.

7) Насколько ваше компульсивное поведение мешает в жизни?

  • не мешает,
  • незначительные помехи, но без нарушения функции,
  • определенное вмешательство, поддающееся контролю,
  • существенное вмешательство,
  • сильное влияние, выводящее из строя.

8) Насколько сильно вы беспокоились бы, если вам мешали вести себя навязчиво?

  • нет беспокойства,
  • слегка тревожно,
  • некоторая тревога, поддающаяся контролю,
  • сильная тревога.
  • очень сильная тревога, выводящее из строя беспокойство.

9) Сколько вы затрачиваете усилий, чтобы противостоять принуждению?

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

10) Насколько вы контролируете компульсии?

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

Каждый вариант ответа имеет свой балл:

  • 1 вариант ответа – 0 баллов;
  • 2 вариант ответа – 1 балл;
  • 3 вариант ответа – 2 балла;
  • 4 вариант ответа – 3 балла,
  • 5 вариант ответа – 4 балла.

Подсчет баллов: если у вас есть как одержимость, так и принуждения, и ваш общий балл равен:

  • 8-15 — легкое ОКР;
  • 16-23 — умеренное ОКР;
  • 24-31 — тяжелое ОКР,
  • 32-40 –экстремальное ОКР.

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

Если вы прошли тест на ОКР и у вас возникли вопросы, вы можете обратиться в Юсуповскую больницу. К каждому пациенту врач-психиатр подбирает индивидуальный подход, после расспроса жалоб и исключив все заболевания, которые могут имитировать обсессивно-компульсивное расстройство, выставляет диагноз, если возникает необходимость возможна консультация смежного специалиста. И только после этого назначает лечение, разработанное для каждого пациента индивидуально в виду его особенностей.

Тест на ОКР — Центр «Феникс»

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

Есть ли у вас ОКР? Давайте проверим. Вам понадобится ручка, листок бумаги и 5 минут времени. Внимательно прочитайте каждое утверждение и выберите 1 ответ, который наиболее точно соответствует вашему состоянию:

  1. Общая продолжительность Ваших навязчивых мыслей (обсессий) в течение суток составляет:
    • 0.не наблюдаются вообще
    • 1.по совокупности меньше часа
    • 2.по совокупности 1-3 часа в течение дня
    • 3.по совокупности 3-8 часов в течение дня
    • 4.по совокупности более 8 часов в течение дня
  2. Степень нарушения повседневной жизни вследствие наличия навязчивых мыслей:
    • 0.совсем не нарушена
    • 1.Нарушена слабо
    • 2.чувствуется негативное влияние, но образ жизни прежний
    • 3.сильно нарушен повседневный образ жизни
    • 4.образ жизни полностью нарушен
  3. Уровень психологического дискомфорта вследствие навязчивых мыслей:
    • 0.не испытываю вообще
    • 1.испытываю слабый дискомфорт
    • 2.испытываю сильный дискомфорт, но в общем, чувствую себя хорошо
    • 3.испытываю сильный дискомфорт и это сказывается на моем самочувствии
    • 4.практически весь день испытываю очень сильный дискомфорт
  4. Сопротивление обсессиям (навязчивым мыслям):
    • 0.в состоянии им сопротивляться практически всегда
    • 1.могу оказать сопротивление большей части обсессий
    • 2.иногда я могу оказать им хорошее сопротивление
    • 3.чаще всего я не могу сопротивляться им
    • 4.не в состоянии сопротивляться обсессиям
  5. Степень контроля над обсессиями (навязчивыми мыслями):
    • 0.обсессии полностью находятся под моим контролем
    • 1.в большинстве случаев я контролирую их
    • 2.иногда мне удается контролировать обсессии
    • 3.могу контролировать их незначительно
    • 4.мои обсессии неконтролируемы
  6. Ваша продолжительность навязчивых действий, ритуалов (компульсий) в течении суток:
    • 0.не наблюдаются вообще по совокупности меньше часа
    • 1.по совокупности 1-3 часа в течение дня
    • 2.по совокупности 3-8 часов в течение дня
    • 3.по совокупности более 8 часов в течение дня
  7. Степень нарушения повседневной жизни:
    • 0.совсем не нарушают
    • 1.оказывают слабое влияние
    • 2.чувствуется негативное влияние, но образ жизни прежний
    • 3.сильно нарушают повседневный образ жизни
    • 4.образ жизни полностью нарушен
  8. Уровень психологического дискомфорта:
    • 0.не испытываю вообще
    • 1.испытываю слабый дискомфорт
    • 2.испытываю сильный дискомфорт, но в общем, чувствую себя хорошо
    • 3.испытываю сильный дискомфорт и это сказывается на моем самочувствии
    • 4.практически весь день испытываю очень сильный дискомфорт
  9. Сопротивление компульсиям (навязчивым действиям, ритуалам):
    • 0.в состоянии им сопротивляться практически всегда
    • 1.могу оказать сопротивление большей части компульсий
    • 2.иногда я могу оказать им хорошее сопротивление
    • 3.чаще всего я не могу сопротивляться им
    • 4.не в состоянии сопротивляться компульсиям
  10. Степень контроля над компульсиями
    • 0.компульсии полностью находятся под моим контролем
    • 1.в большинстве случаев я контролирую их
    • 2.иногда мне удается контролировать компульсии
    • 3.могу контролировать их незначительно
    • 4.мои компульсии неконтролируемы

Интерпретация

  • 0—7 — Субклиническое (доболезненное) состояние
  • 8—15 — Обсессивно-компульсивное расстройство легкой степени выраженности
  • 16—23 — Обсессивно-компульсивное расстройство средней степени тяжести
  • 24—31 — Обсессивно-компульсивное расстройство тяжелой степени
  • 32—40 — Обсессивно-компульсивное расстройство крайне тяжелой степени тяжести

ОКР — невроз навязчивых состояний, может иметь хронический, прогрессирующий или эпизодический характер.

При ОКР у больного непроизвольно появляются навязчивые, мешающие или пугающие мысли (так называемые обсессии). Он постоянно и безуспешно пытается избавиться от вызванной мыслями тревоги с помощью столь же навязчивых и утомительных действий (компульсий). Иногда отдельно выделяется обсессивное (преимущественно навязчивые мысли — F42.0) и отдельно компульсивное (преимущественно навязчивые действия — F42.1) расстройства.

Проявите уважение к своему душевному здоровью, запишитесь на прием!

Тест на ОКР, шкала Йеля-Брауна. Диагностика невроза навязчивых состояний. Пройти онлайн.

Описание к тесту ОКР.

Как известно, ОКР или обсессивно-компульсивное расстройство (obsessio с лат. — «одержимость идеей» и compulsio с лат.  — «принуждение») — это психическое расстройство, в основе которого лежат навязчивые мысли, идеи и действия, возникающие помимо желания человека и сложно им контролируемые. Классический пример —  страх загрязнения,  при котором у человека каждое соприкосновение с грязными, по его мнению, предметами вызывает опасения и, как следствие, навязчивые мысли (обсессии). Чтобы избавиться от этих мыслей, он начинает многократно мыть руки (компульсии).

Для выявления ОКР используют шкалу  Йеля-Брауна. Она была разработана Вейном Гудманом и его коллегами в Йельском и Брауновском университетах.  Данная шкала определяет степень выраженности симптомов расстройства вне зависимости от формы обсессий (страхи, сомнения, влечения, представления, воспоминания) и компульсий — ритуалов, призванных снизить тревогу и отвлечься от навязчивых мыслей.

Инструкция к тесту на ОКР.

Перед вами 10 пунктов, 5 из которых рассматривают степень выраженности обсессивных симптомов, 5 — выраженность компульсий. Выберите вариант, наиболее подходящий для вас. 

Вопросы к Тесту ОКР.

Ситуации затрагивающие обессии.

1) Ваша продолжительность обсессий в течении суток

  1. не наблюдаются вообще 
  2. по совокупности меньше часа 
  3. по совокупности 1-3 часа в течение дня 
  4. по совокупности 3-8 часов в течение дня
  5. по совокупности более 8 часов в течение дня 

2) Степень нарушения повседневной жизни

  1. совсем не нарушают
  2. оказывают слабое влияние 
  3. чувствуется негативное влияние, но образ жизни прежний
  4. сильно нарушают повседневный образ жизни
  5. образ жизни полностью нарушен 

3) Уровень психологического дискомфорта

  1. не испытываю вообще 
  2. испытываю слабый дискомфорт 
  3. испытываю сильный дискомфорт, но в общем, чувствую себя хорошо 
  4. испытываю сильный дискомфорт и это сказывается на моем самочувствии 
  5. практически весь день испытываю очень сильный дискомфорт

4) Сопротивление обсессиям

  1. в состоянии им сопротивляться практически всегда 
  2. могу оказать сопротивление большей части обессий 
  3. иногда я могу оказать им хорошее сопротивление 
  4. чаще всего я не могу сопротивляться им 
  5. не в состоянии сопротивляться обсессиям 

5) Степень контроля над обсессиями

  1. обессии полностью находятся под моим контролем )
  2. в большинстве случаев я контролирую их
  3. иногда мне удается контролировать обсессии 
  4. могу контролировать их незначительно
  5. мои обессии неконтролируемы

Ситуации затрагивающие компульсии.

1) Ваша продолжительность компульсий в течении суток

  1. не наблюдаются вообще 
  2. по совокупности меньше часа 
  3. по совокупности 1-3 часа в течение дня 
  4. по совокупности 3-8 часов в течение дня
  5. по совокупности более 8 часов в течение дня 

2) Степень нарушения повседневной жизни

  1. совсем не нарушают
  2. оказывают слабое влияние
  3. чувствуется негативное влияние, но образ жизни прежний
  4. сильно нарушают повседневный образ жизни
  5. образ жизни полностью нарушен

3) Уровень психологического дискомфорта

  1. не испытываю вообще 
  2. испытываю слабый дискомфорт 
  3. испытываю сильный дискомфорт, но в общем, чувствую себя хорошо
  4. испытываю сильный дискомфорт и это сказывается на моем самочувствии
  5. практически весь день испытываю очень сильный дискомфорт

4) Сопротивление компульсиям

  1. в состоянии им сопротивляться практически всегда 
  2. могу оказать сопротивление большей части компульсий
  3. иногда я могу оказать им хорошее сопротивление 
  4. чаще всего я не могу сопротивляться им 
  5. не в состоянии сопротивляться компульсиям

5) Степень контроля над компульсиями

  1. компульсии полностью находятся под моим контролем
  2. в большинстве случаев я контролирую их
  3. иногда мне удается контролировать компульсии 
  4. могу контролировать их незначительно 
  5. мои компульсии неконтролируемы

Ключ к шкале  Йеля-Брауна.

Степень выраженности обсессий и компульсий определяется с помощью 5 бальной шкалы:

  1. 0 баллов
  2. 1 балл
  3. 2 балла
  4. 3 балла 
  5. 4 балла

Обработка шкалы Йеля-Брауна.

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

Интерпретация шкалы Йеля-Брауна.

Сравните полученное итоговое значение с нижеприведенными нормами.

0-7 баллов – Субклиническое состояние
8-15 баллов – ОКР легкой степени выраженности
16-23 баллов – ОКР средней степени тяжести
24-31 баллов – ОКР тяжелой степени
32-40 баллов – ОКР крайне тяжелой степени тяжести

Виды навязчивых состояний, причины возникновения ОКР и лечение.

Навязчивые опасения (страх неудачи) — мучительная боязнь, что не получиться должным образом совершить то или иное действие. Например, выйти перед публикой, вспомнить выученное стихотворение, совершить половой акт, заснуть. Сюда же относится страх покраснеть при посторонних.

Навязчивые сомнения — неуверенность в правильности выполнения различных действий. Лица, страдающие навязчивыми сомнениями, постоянно переживают, закрыли ли они кран с водой, выключили ли утюг, правильно ли указали адрес в письме и т. п. Подталкиваемые неконтролируемой тревогой такие люди многократно проверяют выполненное действие, иногда доходя до полного изнеможения.

Навязчивые фобии — имеют самую широкую вариацию: от боязни заболеть различными заболеваниями, страха высоты, замкнутых пространств и слишком открытых местностей до боязни за своих близких и страха обратить на себя чье-то внимание. Распространенными среди лиц страдающих ОКР фобиями являются страх боли, боязнь смерти, боязнь насекомых.

Навязчивые мысли — упорно «лезущие» в голову названия, строки из песен или фразы, фамилии, а также различные мысли, противоположные жизненным представлениям пациента (к примеру, богохульные мысли у верующего больного). В некоторых случаях отмечается навязчивое мудрствование — пустые нескончаемые размышления, например о том, почему деревья вырастают выше людей или что будет, если появятся двухголовые коровы.

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

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

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

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

Хорошо зарекомендовала себя при лечении ОКР когнитивно-поведенческая терапия. Психотерапевт вначале выявляет существующие у клиента навязчивости и фобии, а затем дает ему установку перебороть свои тревоги став к ним лицом к лицу. Широкое распространение получил метод экспозиции, когда клиент под контролем психотерапевта сталкивается с тревожащей его ситуацией, чтобы убедиться, что ничего страшного не последует. Например, клиенту со страхом заразиться микробами, который постоянно моет руки, предписывают не мыть руки для того, чтобы увериться, что при этом никакой болезни не происходит.

Частью комплексной психотерапии может быть метод «остановки мысли», состоящий из 5 шагов. Первый шаг состоит в клиента  способности при возникновении обсессий переключаться на какие-то позитивные мысли (вспомнить любимую песню или представить себе красивый пейзаж). В шаге 3 пациент учится произнесенной вслух командой «стоп» останавливать наплывание обессии. Делать тоже самое, но произнося «стоп» только мысленно — задача шага 4. Последним шагом нарабатывается способность клиента находить позитивные аспекты в возникающих негативных навязчивостях. К примеру, при страхе утонуть представить себя в спасательном жилете рядом с лодкой.

Тест на ОКР, шкала Йеля-Брауна. Диагностика невроза навязчивых состояний.

Оцените статью:

 

 

 

Другие статьи, которые могут быть вам интересны:

  • Назад: Тест на невроз. Методика экспресс-диагностики невроза К. Хека и Х. Хесса. Пройти онлайн.
  • Вперед: Тест на социофобию Шкала Лейбовича для диагностики признаков социальной фобии. Пройти онлайн.

ГДЗ тесты по окружающему миру 4 класс Плешаков, Гара, Назарова Просвещение

Несмотря на тот факт, что сама по себе дисциплина окружающий мир является довольно простой и интересной, пройти контрольное тестирование и получить хорошую оценку не всегда по силам даже отличникам. Всему причиной наличие похожих по своей сути ответов, в которых легко запутаться при быстром написании работы. Чтобы справиться с подобными проблемами, педагоги рекомендуют школьникам гдз по окружающему миру за 4 класс Плешаков, где можно найти ключи ко всем заданиям сборника. Издание состоит из пятидесяти тестов, разделенных по темам. Как правило, именно их учителя используют для оценивания знаний школьника на протяжении учебного года. Потому, если четверокласснику необходима помощь в подготовке к предстоящим занятиям, практические занятия с решебником будут максимально эффективны.

Для кого онлайн справочники несут ощутимую пользу?

Современные технологии позволяют пользоваться ответами не просто как шпаргалкой, а как дополнением к учебно-методическим пособиям. Часто, списывая, школьник запоминает больше информации, чем при чтении учебника. Ведь он его всё равно перечитывает, сравнивая ответ, так зачем тратить лишнее время? Представленные быстрые ответы к тестам по окружающему миру 4 класс авторы Плешаков, Гара, Назарова несут такую же пользу для четвероклассника, как любая дополнительная литература. По заверению авторов, издание будет полезно:

  • ученикам четвертых классов в качестве надежного помощника при выполнении домашнего задания (тестирования), или при подготовке к работе на уроке. Школьник легко запомнит правильные ответы на любую тему, будь то начало истории человечества, планеты Солнечной системы, природные зоны России, или новейшая история стран и городов;
  • учителям четвертых классов и практикантам для проверки работ. С решебником под рукой можно значительно ускорить рабочий процесс, самостоятельно проверяя тесты, сравнивая их по таблице ответов. Такой подход подойдет для любой ситуации, будь преподаватель новичком или опытным – время для всех одинаково ценно;
  • родителям школьников для проверки домашней работы, а также для помощи в подготовке ребенка к уроку. Не нужно самому учить параграф из учебника, чтобы помощь своему чаду со сложной темой. Согласитесь, для большинства родителей это важный аргумент.

В чем выгода от использования подробных ответов?

Главным преимуществом решебника по окружающему миру к тестам 4 класс Плешакова, Назаровой, Гары является то, что он экономит время и деньги пользователей. Не нужно искать информацию в разных источниках, не нужно прибегать к услугам репетиторов, не нужно посещать дополнительные занятия, не нужно получать плохие оценки. Кроме того, портал еуроки ГДЗ еще:

  • содержит постоянно обновляющуюся базу ответов по всем предметам;
  • доступен круглосуточно с телефона и компьютера;
  • бесплатный для всех пользователей;
  • располагает интуитивно понятным интерфейсом с удобным поиском.

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

Тест по окружающему миру (раздел «Путешествия) (2 класс)

  1. Определите по описанию: граница горизонта, где небо как бы сходится с земной поверхностью – это …

а) почва

б) линия горизонта

в) материк

2. Основные стороны горизонта:

а) север, юг, юго-запад, северо-запад

б) Северный полюс, Южный полюс

в) север, юг, запад, восток

3. Объемная модель Земли называется…

а) карта

б) глобус

в) материк

4. Прибор для определения сторон горизонта?

а) компас

б) барометр

в) термометр

5. Устройство магнитного компаса:

а) корпус, зеркало, магнит

б) магнитная стрелка, предохранитель, корпус

в) корпус, магнитная стрелка, чехол

6. С какой стороны на камнях и деревьях мхов и лишайников больше?

а) с восточной

б) с южной

в) с северной

7. Снег весной быстрее тает на склонах, обращенных …

а) к югу

б) к северу

в) к западу

8. Как называются углубления с крутыми склонами?

а) холмы

б) овраги

в) горы

9. Ровные или почти ровные участки земной поверхности.

а) холмы

б) овраги

в) равнины

10. Горы имеют высоту:

а) более 200 метров

б) более 2000 метров

в) более 100 метров

11. Основные формы земной поверхности.

а) равнины, горы, холмы, овраги

б) вулканы, равнины, реки

в) реки, моря, океаны

12. Зелёным и жёлтым цветом на карте обозначены:

а) горы

б) равнины

в) леса

13. Коричневым цветом на карте обозначены:

а) горы

б) леса

в) овраги

14. Углубление, по которому течет река:

а) устье

б) исток

в) русло

15. Место, где река впадает в другую реку, озеро или море:

а) устье

б) исток

в) русло

16. К весенним изменениям в неживой природе относится:

а) половодье

б) снегопад

в) прилет перелетных птиц

17. К весеннем изменениям в живой природе относится:

а) половодье

б) появление раннецветущих растений

в) ледоход

18. Основателем Москвы был:

а) князь Юрий Долгорукий

б) князь Владимир Святославович

в) Петр Первый

19. Кто изображен на гербе Москвы:

а) Владимир Святославович

б) Юрий Долгорукий

в) Георгий Победоносец

20. Выбери достопримечательность Москвы:

а) Московский Кремль

б) Эрмитаж

в) Петропаловская крепость

21. Санкт-Петербург основал:

а) Иван Грозный

б) Николай Второй

в) Пётр Первый

22. Выбери достопримечательность Санкт-Петербурга:

а) Исторический музей

б) Кунсткамера

в) Большой театр

23. На нашей планете Земля материков всего:

а) 5

б) 7

в) 6

24. Самый большой материк:

а) Евразия

б) Австралия

в) Африка

25. Назови самый холодный материк:

а) Евразия

б) Северная Америка

в) Антарктида

26. Назови самый маленький материк:

а) Австралия

б) Южная Америка

в) Антарктида

27. Карты, на которых изображены разные страны называются:

а) экономические

б) физические

в) политические

28. Страна, находящиеся на материке Евразия.

а) Египет

б) Франция

в) США

29. Назови символ Парижа:

а) Китайская стена

б) Эйфелева башня

в) Статуя Свободы

30. Статуя Свободы находится в…
а) США
б) Японии
в) Франция

Основные функции: переменные среды | Next.js

Этот документ предназначен для Next.js версии 9.4 и выше. Если вы используете старую версию Next.js, обновите или обратитесь к переменным среды в next.config.js.

Примеры

Next.js поставляется со встроенной поддержкой переменных среды, которая позволяет делать следующее:

Next.js имеет встроенную поддержку для загрузки переменных среды из .env.local в процесс .env .

Пример .env.local :

  DB_HOST = локальный
DB_USER = myuser
DB_PASS = мой пароль
  

Это загружает process.env.DB_HOST , process.env.DB_USER и process.env.DB_PASS в среду Node.js, что позволяет автоматически использовать их в методах выборки данных Next.js и маршрутах API.

Например, используя getStaticProps :

 
экспорт асинхронной функции getStaticProps () {
  const db = ждать myDB.соединять({
    хост: process.env.DB_HOST,
    имя пользователя: process.env.DB_USER,
    пароль: process.env.DB_PASS,
  })
  
}
  

Примечание : Чтобы сохранить секреты только сервера, Next.js заменяет process.env. * правильными значениями.
во время сборки. Это означает, что process.env не является стандартным объектом JavaScript, поэтому вы не можете
использовать деструктуризацию объекта.
Переменные среды должны указываться как, например, process.env.NEXT_PUBLIC_PUBLISHABLE_KEY , not const {NEXT_PUBLIC_PUBLISHABLE_KEY} = process.env .

Примечание : Next.js автоматически расширит переменные ( $ VAR ) внутри ваших файлов .env * .
Это позволяет вам ссылаться на другие секреты, например:

 
HOSTNAME = localhost
ПОРТ = 8080
HOST = http: // $ HOSTNAME: $ PORT
  

Если вы пытаетесь использовать переменную с фактическим значением $ , ее нужно экранировать следующим образом: \ $ .

Например:

 
A = abc


НЕПРАВИЛЬНО = до $ A


ПРАВИЛЬНО = pre \ $ A
  

По умолчанию все переменные среды загружаются через .env.local доступны только в среде Node.js, то есть они не будут доступны браузеру.

Чтобы открыть переменную в браузере, вы должны поставить перед переменной префикс NEXT_PUBLIC_ . Например:

  NEXT_PUBLIC_ANALYTICS_ID = abcdefghijk
  

Это автоматически загружает process.env.NEXT_PUBLIC_ANALYTICS_ID в среду Node.js, что позволяет использовать его в любом месте вашего кода. Значение будет встроено в JavaScript, отправленный в браузер, из-за префикса NEXT_PUBLIC_ .Это встраивание происходит во время сборки, поэтому ваши различные окружения NEXT_PUBLIC_ должны быть установлены при сборке проекта.

 
импортировать setupAnalyticsService из '../lib/my-analytics-service'


setupAnalyticsService (process.env.NEXT_PUBLIC_ANALYTICS_ID)

function HomePage () {
  return 

Hello World

} экспортировать домашнюю страницу по умолчанию

Обычно требуется только один файл .env.local . Однако иногда вам может потребоваться добавить некоторые значения по умолчанию для среды разработки ( next dev ) или production ( next start ).

Next.js позволяет вам установить значения по умолчанию в .env (все среды), .env.development (среда разработки) и .env.production (производственная среда).

.env.local всегда отменяет установленные по умолчанию.

Примечание : Файлы .env , .env.development и .env.production должны быть включены в ваш репозиторий, поскольку они определяют значения по умолчанию. .env *.local следует добавить в .gitignore , поскольку эти файлы предназначены для игнорирования. .env.local — это место, где можно хранить секреты.

При развертывании приложения Next.js в Vercel переменные среды можно настроить в настройках проекта.

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

Если вы настроили переменные среды разработки, вы можете перенести их в файл .env.local для использования на локальном компьютере с помощью следующей команды:

  vercel env pull .env.local
  

При использовании Vercel CLI для развертывания убедитесь, что вы добавили .vercelignore , который включает файлы, которые не следует выгружать, обычно это те же файлы, которые включены в .gitignore .

Помимо сред разработки и production , доступен третий вариант: test .Таким же образом вы можете установить значения по умолчанию для среды разработки или производства, вы можете сделать то же самое с файлом .env.test для среды тестирования (хотя этот не так распространен, как два предыдущих).

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

Существует небольшая разница между средой test и development и production , о чем следует помнить: .env.local не будет загружен, так как вы ожидаете, что тесты дадут одинаковые результаты для всех. Таким образом, каждое выполнение теста будет использовать одни и те же значения по умолчанию для разных исполнений, игнорируя ваш .env.local (который предназначен для переопределения набора по умолчанию).

Примечание : аналогично переменным среды по умолчанию, .Файл env.test должен быть включен в ваш репозиторий, но .env.test.local не должен, поскольку .env * .local предназначены для игнорирования через .gitignore .

Во время выполнения модульных тестов вы можете убедиться, что загружаете переменные среды так же, как и Next.js, используя функцию loadEnvConfig из пакета @ next / env .

 
импортировать {loadEnvConfig} из '@ next / env'

экспорт по умолчанию async () => {
  const projectDir = процесс.cwd ()
  loadEnvConfig (projectDir)
}
  

Добавление пользовательских переменных среды | Создать приложение React

Примечание: эта функция доступна с [защита электронной почты] и выше.

Ваш проект может использовать переменные, объявленные в вашей среде, как если бы они были объявлены локально в ваших файлах JS. По умолчанию для вас будет определен NODE_ENV и любые другие переменные среды, начиная с REACT_APP_ .

ВНИМАНИЕ: не храните никаких секретов (например, закрытых ключей API) в вашем приложении React!

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

Переменные среды внедряются во время сборки . Поскольку приложение Create React создает статический пакет HTML / CSS / JS, он не может прочитать их во время выполнения. Чтобы прочитать их во время выполнения, вам нужно будет загрузить HTML в память на сервере и заменить заполнители во время выполнения, как описано здесь. В качестве альтернативы вы можете перестроить приложение на сервере в любое время, когда вы их измените.

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

Эти переменные среды будут определены для вас в process.env . Например, при наличии переменной среды с именем REACT_APP_NOT_SECRET_CODE будет отображаться в вашем JS как process.env.REACT_APP_NOT_SECRET_CODE .

Существует также встроенная переменная среды под названием NODE_ENV . Вы можете прочитать его из process.env.NODE_ENV . Когда вы запускаете npm start , он всегда равен 'development' , когда вы запускаете npm test , он всегда равен 'test' , а когда вы запускаете npm run build , чтобы создать производство связка, он всегда равен 'production' . Вы не можете вручную переопределить NODE_ENV . Это предохраняет разработчиков от случайного развертывания медленно разрабатываемой сборки в производственной среде.

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

Во-первых, вам нужно определить переменные среды. Например, предположим, что вы хотите использовать переменную среды внутри

:

Copy

render () {

return (

Вы запускаете это приложение в {процесс.env.NODE_ENV} mode.

);

}

Во время сборки process.env.REACT_APP_NOT_SECRET_CODE будет заменен текущим значением переменной среды REACT_APP_NOT_SECRET_CODE . Помните, что переменная NODE_ENV будет установлена ​​для вас автоматически.

Когда вы загружаете приложение в браузер и просматриваете , вы увидите, что для него установлено значение abcdef , а полужирным шрифтом будет показана среда, предоставленная при использовании npm start :

Copy

< div>

Вы запускаете это приложение в режиме разработки .

Приведенная выше форма ищет переменную с именем REACT_APP_NOT_SECRET_CODE из среды.Чтобы использовать это значение, нам нужно, чтобы оно было определено в среде. Это можно сделать двумя способами: либо в вашей оболочке, либо в файле .env . Оба эти способа описаны в следующих нескольких разделах.

Наличие доступа к NODE_ENV также полезно для условного выполнения действий:

Копировать

if (process.env.NODE_ENV! == ‘production’) {

analytics.disable ();

}

Когда вы компилируете приложение с помощью npm run build , на этапе минификации это условие удаляется, и результирующий пакет будет меньше.

Ссылка на переменные среды в HTML #

Примечание: эта функция доступна в версии [защита электронной почты] и выше.

Вы также можете получить доступ к переменным среды, начиная с REACT_APP_ в public / index.html . Например:

Копировать

% REACT_APP_WEBSITE_NAME%

Обратите внимание, что применяются предостережения из приведенного выше раздела:

  • Помимо нескольких встроенных переменных ( NODE_ENV и PUBLIC_URL ), переменная имена должны начинаться с REACT_APP_ для работы.
  • Переменные среды вводятся во время сборки. Если вам нужно внедрить их во время выполнения, используйте этот подход.

Добавление временных переменных среды в вашу оболочку #

Определение переменных среды может варьироваться в зависимости от ОС. Также важно знать, что этот способ временен на время сеанса оболочки.

Windows (cmd.exe) #

Скопируйте

set «REACT_APP_NOT_SECRET_CODE = abcdef» && npm start

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

Windows (Powershell) #

Скопируйте

($ env: REACT_APP_NOT_SECRET_CODE = «abcdef») -and (npm start)

Linux, macOS (Bash) #

Скопируйте

Среда REACT_APP_NOT_SECRET_CODE =

для разработки, начиная с VACRETcRET_CODE =

. В .env #

Примечание: эта функция доступна с [защищенная электронная почта] и выше.

Чтобы определить постоянные переменные среды, создайте файл с именем .env в корне вашего проекта:

Скопируйте

REACT_APP_NOT_SECRET_CODE = abcdef

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

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

.env файлы должны быть зарегистрированы в системе управления версиями (за исключением .env * .local ).

Какие еще файлы

.env можно использовать? #

Примечание: эта функция доступна с [защита электронной почты] и выше .

  • .env : По умолчанию.
  • .env.local : локальные переопределения. Этот файл загружается для всех сред, кроме test.
  • .env.development , .env.test , .env.production : параметры среды.
  • .env.development.local , .env.test.local , .env.production.local : локальные переопределения параметров среды.

Файлы слева имеют больший приоритет, чем файлы справа:

  • npm start : .env.development.local , .env.local , .env.development , .env
  • npm run build : .env.production.local , .env.local , .env.production , .env
  • npm test : .env.test.local , .env.test , .env (примечание .env.local — отсутствует)

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

Дополнительные сведения см. В документации dotenv.

Примечание. Если вы определяете переменные среды для разработки, вашему CI и / или платформе хостинга, скорее всего, потребуется
они также определены.Проконсультируйтесь с их документацией, как это сделать. Например, смотрите документацию по Travis CI или Heroku.

Расширяемые переменные среды в

.env #

Примечание: эта функция доступна для [защита электронной почты] и выше.

Расширьте переменные, уже имеющиеся на вашем компьютере, для использования в файле .env (с помощью dotenv-expand).

Например, чтобы получить переменную среды npm_package_version :

Скопируйте

REACT_APP_VERSION = $ npm_package_version

# также работает:

# REACT_APP_VERSION = $ {npm_package_version}

14 9000 локальных переменных до текущей версии

14

9000 локальных переменных.env файл:

Копировать

DOMAIN = www.example.com

REACT_APP_FOO = $ DOMAIN / foo

REACT_APP_BAR = $ DOMAIN / bar

Переменные тестирования и среды

Поскольку разработчики переместили хостинговые приложения на облачные решения, такие как
Heroku, ряд шаблонов для разработки и развертывания
приложения появились. Возможно, самый известный набор методологий — это
Двенадцатифакторное приложение, в котором указаны области, в которых
приложения становятся трудными в обслуживании и что делать, чтобы их улучшить.

Одна из областей, которая напрямую влияет на разработчиков в коде, который мы пишем и тестируем, — это
конфигурация приложения. Потому что мы выполняем развертывание в нескольких
среды (например, постановка и производство) с разными наборами
конфигурации для таких сервисов, как Stripe и Segment, и потому что часто эти
являются важными аспектами нашего приложения, мы хотим, чтобы все работало
правильно.

Есть несколько способов протестировать код с использованием переменных среды,
но ни один из них не идеален.

Чаще всего эти переменные среды определены либо в .env или
config / environment / test.rb файлов. Тестирование этих значений вводит
загадочные гости, поскольку любые ценности, которые мы проверяем,
определены вне самих спецификаций.

  # config / environment / test.rb

ENV ["TWILIO_CALLER_ID"] = "+15555551212"

# spec / models / calls / call_initiator_spec.rb
требуется "spec_helper"

описать вызовы :: CallInitiator сделать
  он "создает новый вызов с соответствующими данными" делать
    call_creator = double ("звонки", create: nil)
    инициатор = Вызовы :: CallInitiator.новый ("555-555-1234", call_creator)

    initiator.run

    call_data = {
      от: "+15555551212",
      к: «555-555-1234»,
    }
    ожидать (call_creator). иметь_received (: create) .with (call_data)
  конец
конец
  

Другой распространенный способ проверки переменных среды — переопределение их на
на тестовую основу. Это вносит дополнительную сложность, добавляя дополнительные
шаги настройки и демонтажа.

  # spec / models / calls / call_initiator_spec.rb
требуется "spec_helper"

описать вызовы :: CallInitiator сделать
  он "создает новый вызов с соответствующими данными" делать
    cached_twilio_caller_id = ENV ["TWILIO_CALLER_ID"]
    ENV ["TWILIO_CALLER_ID"] = "+15555551212"

    call_creator = double ("звонки", create: nil)
    инициатор = Вызовы :: CallInitiator.новый ("555-555-1234", call_creator)

    initiator.run

    call_data = {
      от: "+15555551212",
      к: «555-555-1234»,
    }
    ожидать (call_creator). иметь_received (: create) .with (call_data)

    ENV ["TWILIO_CALLER_ID"] = cached_twilio_caller_id
  конец
конец
  

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

Заглушка ENV — еще один вариант (по крайней мере, на уровне агрегата), который позволяет нам
для контроля значений. Еще одно дополнительное преимущество — библиотеки имитации и заглушки.
традиционно обрабатывать заглушки во время разборки
фаза.

  # spec / models / calls / call_initiator_spec.rb
требуется "spec_helper"

описать вызовы :: CallInitiator сделать
  он "создает новый вызов с соответствующими данными" делать
    разрешить (ENV). получить (: []). with ("TWILIO_CALLER_ID"). and_return ("+ 15555551212")

    call_creator = double ("звонки", create: nil)
    инициатор = Вызовы :: CallInitiator.новый ("555-555-1234", call_creator)

    initiator.run

    call_data = {
      от: "+15555551212",
      к: «555-555-1234»,
    }
    ожидать (call_creator). иметь_received (: create) .with (call_data)
  конец
конец
  

Я всегда был поклонником «Не смейся над тем, чего не хочешь».
собственное », а в случае ENV (часть Ruby’s
основная библиотека), мы не владеем ею (хотя я считаю, что ее интерфейс
довольно стабильный).

Используя ENV # fetch вместо ENV # [] для получения значений в коде, который мы использовали
проводя тестирование, мы снижаем вероятность орфографических ошибок и неправильных конфигураций.Этот не гарантирует, что переменные используются правильно; один пример я
увиденное воочию, было присвоено то же значение (адреса электронной почты администратора и службы поддержки)
к двум переменным среды и неправильно используется в почтовой программе. Когда окружающая среда
переменная была обновлена ​​при производстве (после обнаружения ошибки), одно электронное письмо было
отправлено по электронной почте не той группе людей.

Climate Control — это жемчужина, которая справляется с вышеуказанным случаем
изменение переменных среды для каждого теста. Избегает таинственных гостей,
не заглушает ENV и (со сколь угодно странными строками!) обеспечивает высокий
уровень уверенности в том, что используются соответствующие переменные среды
правильно.Скорее всего, он наиболее применим в модульных тестах и ​​тестах на уровне интеграции,
поскольку мы, скорее всего, будем использовать подделки на приемлемом уровне.

Давайте посмотрим на это в действии:

  # spec / models / calls / call_initiator_spec.rb
требуется "spec_helper"

описать вызовы :: CallInitiator сделать
  он "создает новый вызов с соответствующими данными" делать
    ClimateControl.modify TWILIO_CALLER_ID: "классный идентификатор вызывающего абонента Twilio" сделать
      call_creator = double ("звонки", create: nil)
      инициатор = Вызовы :: CallInitiator.новый ("555-555-1234", call_creator)

      initiator.run

      call_data = {
        from: "Классный идентификатор вызывающего абонента Twilio",
        к: «555-555-1234»,
      }
      ожидать (call_creator). иметь_received (: create) .with (call_data)
    конец
  конец
конец
  

Переопределение переменных среды только внутри блока обеспечивает сброс состояния
соответственно, и значения переменных окружения сразу становятся очевидными для
Разработчики. Из-за этого Климат-контроль способствует перемещению большего количества конфигураций в
ENV за счет упрощения тестирования, что приводит к большему соблюдению
методология приложения с двенадцатью факторами.

переменных среды | Документация Cypress

Переменные среды полезны, когда:

  • Значения различаются на разных машинах разработчика.
  • Значения различаются в разных средах: (dev, staging, qa, prod)
  • Ценности меняются часто и очень динамичны.

Переменные среды можно легко изменить, особенно при работе в CI.

Вместо жесткого кодирования в ваших тестах:
  гг.запрос ('https: //api.acme.corp')
  
Мы можем переместить это в переменную окружения Cypress:
  cy.request (Cypress.env ('EXTERNAL_API'))
  

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

Однако вам не нужно использовать переменные среды, чтобы указать на источник
и тестируемый домен. Используйте baseUrl вместо переменных среды.

cy.visit () и cy.request ()
автоматически ставятся перед этим значением префикса, что избавляет от необходимости их указывать.

baseUrl можно установить в вашем файле конфигурации (по умолчанию cypress.json ) —
а затем вы можете установить переменную среды в своей ОС, чтобы переопределить ее, например
показано ниже.

  CYPRESS_BASE_URL = https: //staging.app.com cypress run
  

Настройка

Существует 5 различных способов установки переменных среды.У каждого есть немного
другой вариант использования.

Подвести итог можно:

Не чувствуйте себя обязанным выбирать только один метод. Обычно используется одна стратегия
для локальной разработки, но другое при обкатке
CI.

Когда ваши тесты запущены, вы можете использовать
Cypress.env функция для доступа к значениям вашего
переменные среды.

Вариант №1: файл конфигурации

Любой ключ / значение, установленное вами в
конфигурационный файл ( cypress.json по умолчанию)
под ключом env станет переменной среды.

  {
  "projectId": "128076ed-9868-4e98-9cef-98dd8b705d75",
  "env": {
    "login_url": "/ логин",
    "product_url": "/ products"
  }
}
  
Тестовый файл
  Cypress.env ()
Cypress.env ('login_url')
Cypress.env ('products_url')
  
Обзор
  • Отлично подходит для значений, которые необходимо проверить в системе управления версиями и которые остаются
    одинаково на всех машинах.
  • Работает только для значений, которые должны быть одинаковыми на всех машинах.

Вариант № 2:

cypress.env.json

Вы можете создать свой собственный файл cypress.env.json , который Cypress будет автоматически
чек об оплате. Значения здесь перезапишут конфликтующие переменные среды в вашем
файл конфигурации (по умолчанию cypress.json ).

Эта стратегия полезна, потому что если вы добавите cypress.env.json в свой
.gitignore , значения здесь могут быть разными для каждого разработчика
машина.

  {
  "host": "veronica.dev.local",
  "api_server": "http: // localhost: 8888 / api / v1 /"
}
  
Из тестового файла
  Cypress.env ()
Cypress.env ('хост')
Cypress.env ('api_server')
  
Обзор
  • Специальный файл только для переменных среды.
  • Позволяет вам сгенерировать этот файл из других процессов сборки.
  • Значения могут быть разными на разных машинах (если они не отмечены в системе управления версиями).
  • Поддерживает вложенные поля (объекты), например
    {testUser: {имя: '...', электронная почта: '...'}} .
  • Еще один файл, с которым вам нужно разобраться.
  • Overkill для 1 или 2 переменных среды.

Вариант № 3:

CYPRESS_ *

Любая переменная среды на уровне ОС на вашем компьютере, которая начинается с
CYPRESS_ или cypress_ будет автоматически добавлен в среду Cypress.
переменные и предоставлены вам.

Конфликтующие значения переопределяют значения из вашего файла конфигурации
( cypress.json по умолчанию) и cypress.env.json .

Cypress будет отключать CYPRESS_ при добавлении переменных среды.

Переменная среды CYPRESS_INTERNAL_ENV зарезервирована и не должна
задавать.

Экспорт переменных env cypress из командной строки
  экспорт CYPRESS_HOST = laura.dev.local
  
  экспорт cypress_api_server = http: // localhost: 8888 / api / v1 /
  
В тестовом файле

В тестовом файле не указывайте префикс CYPRESS_ или cypress_

.

  Cypress.env ()
Cypress.env ('ХОЗЯИН')
Cypress.env ('api_server')
  
Обзор:
  • Быстрый экспорт некоторых значений.
  • Может храниться в вашем bash_profile .
  • Позволяет использовать динамические значения между разными машинами.
  • Особенно полезно для сред CI.
  • Не так очевидно, откуда берутся значения по сравнению с другими вариантами.
  • Нет поддержки вложенных полей.

Вариант № 4:

--env

Наконец, вы можете передать переменные среды в качестве параметров, когда
с помощью инструмента CLI.

Значения здесь перезапишут все другие конфликтующие переменные среды.

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

Несколько значений следует разделять запятой, а не пробелом.

Из командной строки или CI
  cypress run --env host = kevin.dev.local, api_server = http: // localhost: 8888 / api / v1
  
Тестовый файл:
  Cypress.env ()
Cypress.env ('хост')
Cypress.env ('api_server')
  
Обзор —
  • Не требует изменения файлов или конфигурации.
  • Более понятно, откуда берутся переменные среды.
  • Позволяет использовать динамические значения между разными машинами.
  • Заменяет все другие формы установки переменных окружения.
  • Боль писать опции --env везде, где вы используете Cypress.
  • Нет поддержки вложенных полей.

Вариант № 5: Плагины

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

Например, если вы используете dotenv
пакет для чтения файла .env , затем вы можете получить необходимую среду
переменные из объекта process.env и поместите их в config.env , чтобы
доступно в тестах:

  // файл .env
USER_NAME = тестировщик
  
 
требуется ('dotenv'). config ()

module.exports = (on, config) => {
  
  config.env.username = process.env.USER_NAME

  
  вернуть конфигурацию
}


it ('есть имя пользователя для использования', () => {
  ожидать (Cypress.env ('имя пользователя')). to.be.a ('строка')
})
  

Здесь мы подробно описали, как это сделать.

Обзор
  • Максимальная гибкость
  • Возможность управлять конфигурацией по вашему желанию
  • Требуется знание записи в узле
  • Сложнее

Вариант № 6: Тестовая конфигурация

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

Комплект тестовой конфигурации
 
описывать(
  'тест на испанском сайте',
  {
    env: {
      язык: 'es',
    },
  },
  () => {
    it ('отображает испанский', () => {
      cy.visit (`https://docs.cypress.io/$ {Cypress.env ('язык')} /`)
      cy.contains ('¿Por qué Cypress?')
    })
  }
)
  
Конфигурация для одного теста
 
Это(
  'Smoke Test Develop api',
  {
    env: {
      api: 'https://dev.myapi.com',
    },
  },
  () => {
    cy.request (Cypress.env ('api')). its ('status'). should ('eq', 200)
  }
)


Это(
  'дымовой тест staging api',
  {
    env: {
      api: 'https://staging.myapi.com',
    },
  },
  () => {
    cy.request (Cypress.env ('api')). its ('статус'). should ('eq', 200)
  }
)
  
Обзор
  • Действует только на время набора или теста.
  • Более понятно, откуда берутся переменные среды.
  • Позволяет динамические значения между тестами

Переопределение конфигурации

Если переменные среды соответствуют стандартному ключу конфигурации, то вместо этого
установки переменной среды они вместо этого переопределят
значение конфигурации.

Изменить значение конфигурации baseUrl / не задано env var в
Cypress.env ()

  экспорт CYPRESS_BASE_URL = http: // localhost: 8080
  

‘foo’ не соответствует config / устанавливает env var в Cypress.env ()

Можно
подробнее о том, как переменные среды могут изменять конфигурацию, читайте здесь.

См. Также

Cypress.env | Документация Cypress

получить и установить переменные среды в ваших тестах .

Переменные среды, установленные с помощью Cypress.env , входят только в текущую
spec файл.

Cypress запускает каждый файл спецификаций изолированно: браузер закрывается между спецификациями.
Переменные среды, добавленные или измененные в одной спецификации, не будут видны в другой.
спецификации.

Синтаксис

  Cypress.env ()
Cypress.env (имя)
Cypress.env (имя, значение)
Cypress.env (объект)
  

Аргументы

имя (строка)

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

значение (строка)

Значение устанавливаемой переменной среды.

объект (Объект)

Задайте несколько переменных среды с помощью литерала объекта.

Примеры

Нет аргументов

Получить все переменные среды из файла конфигурации (по умолчанию

cypress.json )

  {
  "env": {
    "фу": "бар",
    "баз": "quux"
  }
}
  

Имя

Вернуть одну переменную среды из файла конфигурации (

cypress.json по умолчанию)

Мы автоматически нормализуем ключ и значение при передаче через
командная строка. Cypress автоматически преобразует значения в числа или логические значения.

  CYPRESS_HOST = laura.dev CYPRESS_IS_CI = true CYPRESS_MY_ID = 123 кипарисовый запуск
  
  Cypress.env ('HOST')
Cypress.env ('IS_CI')
Cypress.env ('MY_ID')
  

Имя и значение

Измените переменные среды из файла конфигурации (

cypress.json по умолчанию) из ваших тестов

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

  {
  "env": {
    "фу": "бар",
    "баз": "quux"
  }
}
  
  Cypress.env ('хост', 'http: //server.dev.local')

Cypress.env ('хост')
  

Объект

Заменить несколько значений из файла конфигурации (

cypress.json по умолчанию), передав литерал объекта.

 
{
  "env": {
    "фу": "бар",
    "баз": "quux"
  }
}
  
  Cypress.env ({
  хост: 'http: //server.dev.local',
  фу: 'фу',
})

Cypress.env ()
  

Из плагина

Вот пример, который использует Cypress.env для доступа к переменной окружения.
это было
динамически устанавливается в плагине.

Используйте этот подход, чтобы получить значение переменной среды один раз, перед любым
тестов в вашей спецификации.

 
module.exports = (on, config) => {
  config.env.sharedSecret =
    process.env.NODE_ENV === 'qa'? 'обруч кирпичного торта': 'чашка для суши с лимоном'

  вернуть конфигурацию
}
  
 
описать ('Переменная окружения установлена ​​в плагине', () => {
  пусть общий секрет

  перед (() => {
    sharedSecret = Cypress.env ('sharedSecret')
  })

  it.only ('доступен в тесте.', () => {
    cy.log (sharedSecret)
  })
})
  

Банкноты

Зачем мне вообще нужно использовать переменные среды?

Руководство по переменным среды объясняет
распространенные варианты использования.

Могу ли я передать переменные среды из командной строки?

Да. Вы можете сделать это и многое другое.

Руководство по переменным среды объясняет
другие способы установки переменных среды для ваших тестов.

Почему это

Cypress.env , а не cy.env ?

Как правило, все, что вы вызываете из Cypress , влияет на глобальное состояние.
Все, что вы звоните из cy , влияет на местное состояние.

Так как переменные среды добавлены или изменены в Cypress.env есть только в
область для текущего файла спецификации, вы могли бы подумать, что это должно быть cy.env , а не
Cypress.env … и вы правы. Дело в том, что Cypress.env влияет
локальное состояние — это артефакт API, развивающийся с течением времени: Cypress.env раньше
влияют на глобальное состояние — переменные среды, добавленные в один файл спецификации теста, были
доступны в других спецификациях, но команда Cypress мудро сделала каждую спецификацию работающей в
изоляция в 3.0.0 и к тому времени
Кипарис.env был общедоступным API.

См. Также

переменных среды в Compose | Документация Docker

Расчетное время чтения: 6 минут

Compose состоит из нескольких частей, которые работают с переменными среды в одном
смысл или другой. Эта страница должна помочь вам найти нужную информацию.

Заменить переменные среды в файлах Compose

Можно использовать переменные среды в вашей оболочке для заполнения значений
внутри файла Compose:

  Интернет:
  изображение: "webapp: $ {TAG}"
  

Если у вас несколько переменных среды, вы можете заменить их, добавив
их в файл переменных среды по умолчанию с именем .env или предоставив
путь к файлу переменных среды с помощью параметра командной строки --env-file .

Файл «.env»

Вы можете установить значения по умолчанию для любых переменных среды, указанных в
Файл Compose или используется для настройки Compose в файле среды
с именем .env . Путь к файлу .env выглядит следующим образом:

  • Начиная с + v1.28 , файл .env помещается в основание каталога проекта
  • Каталог проекта может быть явно определен с помощью параметра --file или COMPOSE_FILE
    переменная окружения.В противном случае это текущий рабочий каталог, в котором
    docker compose команда выполняется ( +1.28 ).
  • Для предыдущих версий могли возникнуть проблемы при разрешении файла .env с помощью
    - файл или COMPOSE_FILE . Чтобы обойти это, рекомендуется использовать --project-directory ,
    который переопределяет путь к файлу .env . Это несоответствие устранено
    в + v1.28 , ограничив путь к файлу в каталог проекта.
  $ cat .env
TAG = v1.5

$ cat docker-compose.yml
версия: '3'
Сервисы:
  Интернет:
    изображение: "webapp: $ {TAG}"
  

Когда вы запускаете docker-compose up , определенная выше служба web использует
изображение webapp: v1.5 . Вы можете проверить это с помощью
config, которая печатает ваше разрешенное приложение
config к терминалу:

  $ конфигурация docker-compose

версия: '3'
Сервисы:
  Интернет:
    изображение: 'webapp: v1.5'
  

Значения в оболочке имеют приоритет над значениями, указанными в .env файл.

Если вы установите TAG на другое значение в вашей оболочке, замена в образ
вместо этого использует:

  $ экспорт TAG = v2.0
Конфигурация $ docker-compose

версия: '3'
Сервисы:
  Интернет:
    изображение: 'webapp: v2.0'
  

Вы можете переопределить путь к файлу среды, используя аргумент командной строки --env-file .

Использование опции «—env-file»

Передавая файл в качестве аргумента, вы можете сохранить его где угодно и назвать
уместно, например, .env.ci , .env.dev , .env.prod . Передача пути к файлу
выполняется с помощью параметра --env-file :

  docker-compose --env-file ./config/.env.dev вверх
  

Этот путь к файлу относится к текущему рабочему каталогу, в котором Docker Compose
команда выполняется.

  $ cat .env
TAG = v1.5

$ cat ./config/.env.dev
TAG = v1.6


$ cat docker-compose.yml
версия: '3'
Сервисы:
  Интернет:
    изображение: "webapp: $ {TAG}"
  

Модель .По умолчанию загружается файл env :

  $ конфигурация docker-compose
версия: '3'
Сервисы:
  Интернет:
    изображение: 'webapp: v1.5'
  

Передача аргумента --env-file отменяет путь к файлу по умолчанию:

  $ docker-compose --env-file ./config/.env.dev конфигурация
версия: '3'
Сервисы:
  Интернет:
    изображение: 'webapp: v1.6'
  

Когда в качестве аргумента --env-file передается недопустимый путь к файлу, Compose возвращает ошибку:

  $ docker-compose --env-file./doesnotexist/.env.dev конфигурация
ОШИБКА: не удалось найти файл env: /home/user/./doesnotexist/.env.dev
  

Для получения дополнительной информации см.
Раздел замены переменных в
Составьте ссылку на файл.

Установить переменные среды в контейнерах

Вы можете установить переменные среды в контейнерах службы с помощью
Ключ «среда», как и с
docker run -e ПЕРЕМЕННАЯ = ЗНАЧЕНИЕ ... :

  Интернет:
  окружающая обстановка:
    - ОТЛАДКА = 1
  

Передать переменные среды в контейнеры

Вы можете передавать переменные среды из оболочки напрямую в
контейнеры службы с ключом «среда»
не давая им значения, как в случае с docker run -e VARIABLE... :

  Интернет:
  окружающая обстановка:
    - ОТЛАДКА
  

Значение переменной DEBUG в контейнере берется из значения для
та же переменная в оболочке, в которой запускается Compose.

Параметр конфигурации «env_file»

Вы можете передать несколько переменных среды из внешнего файла в
контейнеры службы с опцией «env_file»,
как и в случае с docker run --env-file = FILE ... :

  Интернет:
  env_file:
    - веб-переменные.env
  

Задайте переменные среды с помощью команды docker-compose run

Подобно docker run -e , вы можете устанавливать переменные среды однократно.
контейнер с docker-compose run -e :

  docker-compose run -e DEBUG = 1 web python console.py
  

Вы также можете передать переменную из оболочки, не задавая ей значение:

  docker-compose run -e DEBUG web python console.py
  

Значение переменной DEBUG в контейнере берется из значения для
та же переменная в оболочке, в которой запускается Compose.

Когда вы устанавливаете одну и ту же переменную среды в нескольких файлах, здесь
приоритет, используемый Compose для выбора используемого значения:

  1. Составить файл
  2. Переменные среды оболочки
  3. Файл среды
  4. Dockerfile
  5. Переменная не определена

В приведенном ниже примере мы устанавливаем ту же переменную среды в Environment
файл и файл Compose:

  $ cat ./Docker/api/api.env
NODE_ENV = тест

$ cat docker-compose.yml
версия: '3'
Сервисы:
  api:
    изображение: 'узел: 6-альпийский'
    env_file:
     - ./Docker/api/api.env
    окружающая обстановка:
     - NODE_ENV = производство
  

Когда вы запускаете контейнер, переменная среды, определенная в Compose
файл имеет приоритет.

  $ docker-compose exec api node

> process.env.NODE_ENV
'производство'
  

Наличие любого параметра ARG или ENV в Dockerfile оценивает, только если есть
нет записи Docker Compose для среды или env_file .

Особенности контейнеров NodeJS

Если у вас есть запись package.json для сценария : запустите как
NODE_ENV = test node server.js , тогда это отменяет любые настройки в вашем
docker-compose.yml файл.

Настроить Compose с использованием переменных среды

Для настройки Docker доступны несколько переменных среды.
Составьте поведение командной строки. Они начинаются с COMPOSE_ или DOCKER_ и являются
задокументировано в переменных среды CLI.

составить, оркестровка, среда, файл env

Переменные среды | Gatsby

Gatsby имеет встроенную поддержку для загрузки переменных среды в браузер и функции.
Для загрузки переменных среды в Node.js требуется небольшой фрагмент кода.

В процессе разработки Гэтсби будет загружать переменные среды из файла с именем .env.development .
Для сборок он будет загружаться из .env.production .

Файл .env может выглядеть так:

Чтобы загрузить их в Node.js добавьте следующий фрагмент кода в верхнюю часть файла gatsby-config.js :

Это загружает process.env.GATSBY_API_URL и process.env.API_KEY для использования в gatsby - *. js файлы и функции.

Например, при настройке подключаемого модуля в gatsby-config.js :

Доступ к переменным среды в браузере.

По умолчанию переменные среды доступны только в коде Node.js и недоступны в браузере, так как некоторые
переменные следует хранить в секрете и не раскрывать никому, посещающему сайт.

Чтобы открыть переменную в браузере, вы должны предварять ее имя GATSBY_ . Таким образом, GATSBY_API_URL будет доступен в
код браузера, но API_KEY не будет.

Переменные устанавливаются при компиляции JavaScript, поэтому при запуске сервера разработки
или вы создаете свой сайт.

Добавить

файлов .env * в .gitignore

Файлы переменных среды не следует сохранять в Git, поскольку они часто содержат секреты
которые небезопасно добавлять в Git.Вместо этого добавьте .env. * в файл .gitignore и
настроить переменные среды вручную в Gatsby Cloud и локально.

Переменные среды в Gatsby Cloud

В Gatsby Cloud вы можете настроить переменные среды в «Настройках сайта» каждого сайта.

Дополнительные среды (промежуточные, тестовые и т. Д.)

Вы можете создавать дополнительные среды помимо разработки и производства до
настройка конфигурации path для dotenv .Например. чтобы добавить промежуточную среду, которую вы могли бы
запустите команду сборки Gatsby, например:

STAGING = true gatsby build

, а затем в файле gatsby-config.

You may also like

Добавить комментарий

Ваш адрес email не будет опубликован.