
Kiểm thử tích hợp
WebApplicationFactory, TestServer, kiểm thử database, kiểm thử HTTP client, test fixtures
1WebApplicationFactory trong ASP.NET Core là gì?
WebApplicationFactory trong ASP.NET Core là gì?
Câu trả lời
WebApplicationFactory là một lớp do gói Microsoft.AspNetCore.Mvc.Testing cung cấp, cho phép tạo một test server trong bộ nhớ để kiểm thử tích hợp. Nó khởi tạo ứng dụng ASP.NET Core với tất cả các dependency mà không cần triển khai thực tế, giúp các bài kiểm thử nhanh và độc lập. Cách tiếp cận này được khuyến nghị vì nó kiểm thử ứng dụng trong môi trường gần với production trong khi tránh được chi phí thiết lập một server thực.
2Lợi ích chính của việc sử dụng WebApplicationFactory thay vì một HTTP server thực trong kiểm thử tích hợp là gì?
Lợi ích chính của việc sử dụng WebApplicationFactory thay vì một HTTP server thực trong kiểm thử tích hợp là gì?
Câu trả lời
WebApplicationFactory tạo một test server trong bộ nhớ, loại bỏ độ trễ mạng và chi phí triển khai đồng thời cung cấp toàn quyền kiểm soát cấu hình. Các bài kiểm thử chạy nhanh hơn nhiều vì không có giao tiếp mạng thực hay tiến trình riêng cần quản lý. Ngoài ra, các service có thể được thay thế thông qua ConfigureTestServices, giúp việc cô lập kiểm thử và mô phỏng các kịch bản khác nhau trở nên dễ dàng mà không cần hạ tầng bên ngoài.
3Sự khác biệt giữa unit test và integration test trong ASP.NET Core là gì?
Sự khác biệt giữa unit test và integration test trong ASP.NET Core là gì?
Câu trả lời
Unit test cô lập và kiểm thử một đơn vị mã đơn lẻ (phương thức, lớp) bằng cách mock tất cả các dependency, trong khi integration test xác minh rằng nhiều thành phần hoạt động cùng nhau chính xác, bao gồm database, middleware và các service thực. Unit test nhanh hơn và đơn giản hơn nhưng không phát hiện các vấn đề tích hợp, trong khi integration test chậm hơn nhưng xác thực hành vi tổng thể của ứng dụng. Một chiến lược cân bằng kết hợp cả hai cách tiếp cận.
Gói NuGet nào cần thiết để sử dụng WebApplicationFactory trong kiểm thử tích hợp?
Làm thế nào để tạo một HTTP client để kiểm thử một API với WebApplicationFactory?
+15 câu hỏi phỏng vấn
Các chủ đề phỏng vấn .NET khác
Cơ bản về C#
LINQ & Delegates
Kiến thức cốt lõi ngôn ngữ C#
Kiến thức cơ bản về ASP.NET Core
Vòng đời request trong ASP.NET Core
Configuration & Settings
Vòng đời ứng dụng
Dependency Injection
Entity Framework Core
Minimal APIs
Phát triển Web API
Async trong ASP.NET Core
Authentication & Authorization
HttpClient & Networking
Tuần tự hóa JSON
Entity Framework Core nâng cao
Các tính năng nâng cao của C#
Clean Architecture
Logging, Monitoring & Observability
Kiểm thử đơn vị & xUnit
Docker & Containerization
Quản lý gói NuGet
Memory Management & GC
Lập trình phản ứng
Async/await & Mẫu thiết kế
.NET Design Patterns
Tối ưu hóa hiệu năng
Bảo mật & Best Practices
SignalR & Thời gian thực
Kiến trúc Microservices
Nắm vững .NET cho lần phỏng vấn tiếp theo
Truy cập tất cả câu hỏi, flashcards, bài kiểm tra kỹ thuật, bài tập code review và mô phỏng phỏng vấn.
Bắt đầu miễn phí