как написать тест для сопоставления данных в массиве в тесте postman

#javascript #postman #postman-collection-runner #postman-pre-request-script #postman-testcase

#javascript #postman #postman-collection-runner #postman-сценарий предварительного запроса #postman-testcase

Вопрос:

Я создал переменную с именем values, это значение содержит массив ниже:

var values = ["A","B", "C","D","E","F"]

Я хочу написать тест для сопоставления данных ответа json с одним из значений в values.

 var jsonData = pm.response.json(); 
pm.test("risk check", function () { 
pm.expect(jsonData.result.value).is.to.equal(values);  
});    
  

Данные в result.value ответа могут быть только A, B, C, D, E, F

 {
   "result":{
      "score":{
         "value":"F"
      }
   }
} 
  

Ответ №1:

Вы можете использовать метод oneOf из библиотеки Chaijs:

 var jsonData = pm.response.json(); 
pm.test("risk check", function () { 
    pm.expect(jsonData.result.score.value).to.be.oneOf(values);  
});
  

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

Комментарии:

1. Разве «значения» не должны быть внутри массива?

2. values это массив, взгляните на исходный вопрос 😁