Postman: How to check whether the field is returning null in the Postman automation

后端 未结 10 992
借酒劲吻你
借酒劲吻你 2020-12-31 05:57

I have tried with \"!== null\", but it is returning PASS even when the field is returning 0 or \"\".

相关标签:
10条回答
  • 2020-12-31 06:24

    How about:

    var jsonData = JSON.parse(responseBody);
    
    tests["Item is not null"] = 
        jsonData.item !== null && 
        jsonData.item !== ' ' && 
        jsonData.item !== 0;
    
    0 讨论(0)
  • 2020-12-31 06:25

    I faced similar issue. But checking it in following way worked for me

    tests["Item is not null"] = 
        jsonData.item !== undefined;
    
    0 讨论(0)
  • 2020-12-31 06:28

    Did you try

    pm.expect(response.your_field).to.eql(null);
    

    ?

    0 讨论(0)
  • You gotta place the + [i] after the function you gonna validate on the tests[] so only it will return valid statements on each array. For example,

    function checkIsNull() {
        var items = json.data.pois.items
        var PlaceIdIsNull = true;
        var subTypeExtraIsNull = true;
        var websiteIsNull = true;
    
        for (var i = 0; i < items.length; i++) {
        if (items[i].placeId !== null) {
            PlaceIdIsNull = false;
        }
        if (items[i].subTypeExtra !== null) {
            subTypeExtraIsNull = false;
        }
        if (items[i].website === null) {
            websiteIsNull = false;
            tests['website is null only happened on these arrays' + [i]] = true;
            }
            tests['Place ID is null '] = PlaceIdIsNull
            tests['subTypeExtra is null '] = subTypeExtraIsNull
    }
    }
           checkIsNull();
    

    Result:


    PASS Place ID is null

    PASS subTypeExtra is null

    0 讨论(0)
  • 2020-12-31 06:38

    If you are checking the Id of the first item returned in a list, you could use not.equal(null):

    pm.expect(pm.response.json().value[0].Id).not.equal(null);
    

    Note that the word "equal" is fully spelled out, although the shortened "eql" does work.

    0 讨论(0)
  • 2020-12-31 06:39

    Postman doesn't reference non-existent paths as null, but as undefined.

    pm.expect(JsonResponse.FAKE.PATH).not.eql(undefined);
    

    This test should fail, as this fake json path is actually undefined.

    0 讨论(0)
提交回复
热议问题