Javascript 给定的Postman测试值与预期结果匹配,但仍会得到错误
我正在尝试测试这个搜索功能,以便在Postman上查找服务器文件中的特定条目,但是测试一直失败,尽管我相信我的代码返回了所需的结果 它希望结果是“pm.expect(jsonData.name).to.eql('Three Rivers Campland')”,这不是下面发生的事情吗?服务器正在返回一个JSON对象,其名称等于“三河营地” 邮递员测试代码:Javascript 给定的Postman测试值与预期结果匹配,但仍会得到错误,javascript,node.js,rest,postman,Javascript,Node.js,Rest,Postman,我正在尝试测试这个搜索功能,以便在Postman上查找服务器文件中的特定条目,但是测试一直失败,尽管我相信我的代码返回了所需的结果 它希望结果是“pm.expect(jsonData.name).to.eql('Three Rivers Campland')”,这不是下面发生的事情吗?服务器正在返回一个JSON对象,其名称等于“三河营地” 邮递员测试代码: pm.test("name check", function () { var jsonData = pm.re
pm.test("name check", function () {
var jsonData = pm.response.json();
pm.expect(jsonData.name).to.eql('Three Rivers Campground');
});
服务器代码+搜索方法
const campgrounds = [{name: "Three Rivers Petroglyph Site", town: "Lincoln, NM", lengthLimit: 25, elevation: 4986, numberOfSites: 7, padType: "gravel"},
{name: "Baca Campground", town: "Lincoln, NM", lengthLimit: 32, elevation: 6397, numberOfSites: 7, padType: "dirt"},
{name: "South Fork Campground", town: "Nogal, NM", lengthLimit: 19, elevation: 7513, numberOfSites: 60, padType: "unknown"},
{name: "Valley of Fires Recreation Area", town: "Carrizozo, NM", lengthLimit: 38, elevation: 5249, numberOfSites: 19, padType: "asphalt"},
{name: "Oak Grove Campground", town: "Alto, NM", lengthLimit: 25, elevation: 8464, numberOfSites: 30, padType: "unknown"},
{name: "Three Rivers Campground", lengthLimit: 25, elevation: 6332, numberOfSites: 12, padType: "dirt"},
{name: "Silver Campground", town: "Cloudcroft, NM", lengthLimit: 30, elevation: 8956, numberOfSites: 30, padType: "gravel"},
{name: "Springtime Campground", town: "Magdalena, NM", elevation: 7381, numberOfSites: 6, padType: "dirt"},
{name: "Bear Trap Campground", town: "Magdalena, NM", lengthLimit: 21, elevation: 8497, numberOfSites: 4, padType: "grass"},
{name: "Datil Well Campground", town: "Datil, NM", lengthLimit: 35, elevation: 7414, numberOfSites: 22, padType: "dirt"},
{name: "Apache Creek", town: "Reserve, NM", lengthLimit: 19, elevation: 6397, numberOfSites: 10, padType: "gravel"},
]
app.get('/search', (req, res) => {
let searchTerm = req.query.q;
console.log(`Search for ${searchTerm}`);
for(var i = 0; i<campgrounds.length; i++){
console.log(campgrounds[i].name)
if (searchTerm == campgrounds[i].name){
return res.json({campgrounds: campgrounds[i]});
}
}
})
我只需要更改这一行:“return res.json({campgrounds:campgrounds[I]});”
进入“return res.json(campgrounds[i]);”如果返回的是
jsonData.campgrounds.name
。
{
"campgrounds": {
"name": "Three Rivers Campground",
"lengthLimit": 25,
"elevation": 6332,
"numberOfSites": 12,
"padType": "dirt"
}
}