Оператор if в тестах Postman

Я работаю в Postman и хочу построить такую ​​конструкцию теста:

var login_status = pm.environment.get("LOGIN_STATUS");
var jsonData = pm.response.json();
pm.test("TESTS", function () {
    if (login_status === 1) {
        pm.expect...(test 1);
    }else if (login_status === 2) {
                pm.expect...(test 2);
    }else if (login_status === 3) {
                pm.expect...(test 3);

но у меня работает не так, как я хочу.

По моей логике, Postman должен проверять статус входа и использовать только один pm.expect ... в соответствии со значением login_status.

Как я могу использовать оператор if в Postman? Спасибо!

Что не работает? Не могли бы вы предоставить более подробную информацию? Выдает ошибку?

cdoshi 08.08.2018 12:14
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
6
1
20 338
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Оператор сравнения, который вы используете, возвращает false, поскольку он проверяет тот же type, попробуйте использовать ==, а не ===.

Значения, хранящиеся в файле среды Postman, представляют собой string, и в тесте вы выполняете строгое равенство с number.

Вы также можете попробовать изменить значение number на значение string, например login_status === "1", или использовать строгое неравенство, чтобы тип, который вы используете, не имел значения, например, этот login_status !== 2.

Вы даже можете просто использовать функцию parseInt(), когда получаете значение из файла.

parseInt(pm.environment.get("LOGIN_STATUS"))

Это полностью зависит от вас и того, как вы хотите построить чек.

Более подробную информацию об операторе сравнения можно найти здесь: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Comparison_Operators#Identity

Пожалуйста. :) Вы хотите принять этот ответ?

Danny Dainton 08.08.2018 12:23

Другие вопросы по теме