การจำลองโมดูลและฟังก์ชันใน TypeScript
ใช้ jest.mock ด้วยกลยุทธ์การแปลงชนิดที่ถูกต้อง
การจำลองโมดูลและฟังก์ชันใน TypeScript เป็นบทเรียน TypeScript Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน TypeScript Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส TypeScript Academy มีบทเรียนทั้งหมด 4 บทเรียน
ยินดีต้อนรับ
jest.fn() ด้วยชนิดข้อมูล
const mockFn = jest.fn<number, [string]>();
mockFn('hello'); // typed calljest.mock() และ TypeScript
jest.mock('./api');
import { fetchUser } from './api';
const mockFetch = fetchUser as jest.MockedFunction<typeof fetchUser>;ตัวช่วย jest.mocked()
jest.mock('./api');
import { fetchUser } from './api';
const mockFetch = jest.mocked(fetchUser);
mockFetch.mockResolvedValue({ id: 1, name: 'Alice' });การจำลองค่าที่ส่งคืน
mockFetch.mockResolvedValue({ id: 1, name: 'Alice' }); // must match User typeการสอดแนมเมธอด
const spy = jest.spyOn(userService, 'findUser');
spy.mockResolvedValue(mockUser);การจำลองมอดูลทั้งหมด
jest.mock('./db', () => ({
findUser: jest.fn(),
createUser: jest.fn(),
}));การจำลองอัตโนมัติ
const mockDb = jest.createMockFromModule<typeof import('./db')>('./db');ม็อกบางส่วน
jest.mock('./email', () => ({ ...jest.requireActual('./email'), sendEmail: jest.fn() }));การล้างม็อก
afterEach(() => { jest.clearAllMocks(); });
// Or globally: jest.config clearMocks: trueออบเจ็กต์ mock ที่ปลอดภัยด้านชนิดข้อมูล
const mockRepo: jest.Mocked<UserRepository> = {
findById: jest.fn(),
save: jest.fn(),
delete: jest.fn(),
};ตรวจสอบอย่างรวดเร็ว
สรุป
คำถามที่พบบ่อย
บทเรียน “การจำลองโมดูลและฟังก์ชันใน TypeScript” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “การจำลองโมดูลและฟังก์ชันใน TypeScript” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส TypeScript Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส TypeScript Academy มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “การจำลองโมดูลและฟังก์ชันใน TypeScript”
ใช้ jest.mock ด้วยกลยุทธ์การแปลงชนิดที่ถูกต้อง คุณปฏิบัติ TypeScript Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน TypeScript Academy หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน TypeScript Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน
บทเรียน “การจำลองโมดูลและฟังก์ชันใน TypeScript” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน TypeScript Academy นี้ได้ไหม
ได้ บทเรียน TypeScript Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- การตั้งค่า Jest สำหรับ TypeScript ด้วย ts-jest
- การเขียนการทดสอบหน่วยที่ปลอดภัยด้านชนิด
- การจำลองโมดูลและฟังก์ชันใน TypeScript
- การทดสอบชนิดด้วย expectTypeOf และ tsd