[英]How can I test uncaughtException handler on a node process using jest
[英]How can I test an object using Jest
我正在使用jest
,我想創建一個測試 get api 調用。 為此,我需要將數據添加到數據庫中。 測試數據的正確/最佳方法是什么?
describe('GET /', () => {
it('should return all users', async () => {
await Users.collection.insertMany([
{
name: 'mike',
age: 39
gender: 'other
description: 'This is a cool desc',
},
{
name: 'seth',
age: 19
gender: 'trans
description: 'This is another cool desc',
},
]);
const res = await request(server).get('/api/users');
expect(res.status).toBe(200);
expect(res.body.length).toBe(2);
expect(res.body.some((t)=> t.name === 'mike')).toBeTruthy();
});
});
// 這是我目前的測試。 我應該瀏覽每個數據字段,即姓名、年齡、性別、描述嗎?
我建議檢查每個字段。 如果您的數據與直接插入到 db 中的數據相同,那么使用起來很容易:
expect(res).isEqual(seeds). // where seeds is your array to insert
盡管數據經常存在差異 - 獲取可能會添加一些東西,如時間戳、id 等。有一些工具可以幫助解決這個問題,即arrayContaining和objectContaining 。 您可以執行以下操作:
expect(res).isEqual({
name: 'foo',
id: expect.any(String)
})
這是一篇很好的博客文章,解釋了如何使用它們。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.