Đào tạo kỹ năng debug trong c# và asp.net- Tiếp cận phân tích và tổng hợp: Đọc tài liệu, tổng hợp lý thuyết, phân tích lý thuyết về đảm bảo chất lượng phần mềm, tiêu chu - Tiếp cận phân tích và tổng hợp: Đọc tài liệu, tổng hợp lý thuyết, phân tích lý thuyết về đảm bảo chất lượng phần mềm, tiêu chu- Tiếp cận phân tích và tổng hợp: Đọc tài liệu, tổng hợp lý thuyết, phân tích lý thuyết về đảm bảo chất lượng phần mềm, tiêu chu- Tiếp cận phân tích và tổng hợp: Đọc tài liệu, tổng hợp lý thuyết, phân tích lý thuyết về đảm bảo chất lượng phần mềm, tiêu chu- Tiếp cận phân tích và tổng hợp: Đọc tài liệu, tổng hợp lý thuyết, phân tích lý thuyết về đảm bảo chất lượng phần mềm, tiêu chu- Tiếp cận phân tích và tổng hợp: Đọc tài liệu, tổng hợp lý thuyết, phân tích lý thuyết về đảm bảo chất lượng phần mềm, tiêu chu- Tiếp cận phân tích và tổng hợp: Đọc tài liệu, tổng hợp lý thuyết, phân tích lý thuyết về đảm bảo chất lượng phần mềm, tiêu chu- Tiếp cận phân tích và tổng hợp: Đọc tài liệu, tổng hợp lý thuyết, phân tích lý thuyết về đảm bảo chất lượng phần mềm, tiêu chu- Tiếp cận phân tích và tổng hợp: Đọc tài liệu, tổng hợp lý thuyết, phân tích lý thuyết về đảm bảo chất lượng phần mềm, tiêu chu- Tiếp cận phân tích và tổng hợp: Đọc tài liệu, tổng hợp lý thuyết, phân tích lý thuyết về đảm bảo chất lượng phần mềm, tiêu chu- Tiếp cận phân tích và tổng hợp: Đọc tài liệu, tổng hợp lý thuyết, phân tích lý thuyết về đảm bảo chất lượng phần mềm, tiêu chu- Tiếp cận phân tích và tổng hợp: Đọc tài liệu, tổng hợp lý thuyết, phân tích lý thuyết về đảm bảo chất lượng phần mềm, tiêu chu- Tiếp cận phân tích và tổng hợp: Đọc tài liệu, tổng hợp lý thuyết, phân tích lý thuyết về đảm bảo chất lượng phần mềm, tiêu chu- Tiếp cận phân tích và tổng hợp: Đọc tài liệu, tổng hợp lý thuyết, phân tích lý thuyết về đảm bảo chất lượng phần mềm, tiêu chu- Tiếp cận phân tích và tổng hợp: Đọc tài liệu, tổng hợp lý thuyết, phân tích lý thuyết về đảm bảo chất lượng phần mềm, tiêu chu- Tiếp cận phân tích và tổng hợp: Đọc tài liệu, tổng hợp lý thuyết, phân tích lý thuyết về đảm bảo chất lượng phần mềm, tiêu chu- Tiếp cận phân tích và tổng hợp: Đọc tài liệu, tổng hợp lý thuyết, phân tích lý thuyết về đảm bảo chất lượng phần mềm, tiêu chu- Tiếp cận phân tích và tổng hợp: Đọc tài liệu, tổng hợp lý thuyết, phân tích lý thuyết về đảm bảo chất lượng phần mềm, tiêu chu
1. Mã nhân viên: MF1432
Họ và tên: Trần Thái Tuấn
Debug bài Fresher: Nguyễn Văn Quang
Mô tả luồng tính năng Thêm Mới dữ liệu
Front-end:
- Bắt đầu từ sự kiện: Cất và Thêm
- Gọi tới hàm: saveAndAddBtnOnClick()
- Xử lý hàm:
Validate dữ liệu với hàm isValid().
Kiểm tra isAdd, nếu isAdd == true thì thực hiện thêm.
Gọi tới API thêm mới
- API: https://localhost:7199/api/v1/Employees
- Sau khi có dữ liệu từ api trả về:
Xử lý dữ liệu:
Reset form nhân viên
Emit truyền dữ liệu cho component cha chưa đóng
component con
Lỗi:
Errorcode: 0
DevMsg: Xảy ra exception
UserMsg: Có lỗi xảy ra! Vui lòng liên hệ MISA
MoreInfo: Exception.Message
TraceID: HttpContext.TraceIdentifier
Back-end:
o Được tổ gồm 5 project:
API
BL
BL.UnitTests
DL
Common
o Từ Api thêm mới gọi tới các hàm nào, thuộc Project nào, làm gì
2. Tên hàm Tên
Project
Công việc
public IActionResult
Insert(T newRecord)
API Trả về statuscode và các thông tin
kèm theo
public ServiceResult
Insert(T newRecord)
BL Chuyển dữ liệu sang JSON
Trả về:
- ServiceResult tình trạng
thêm thành công hay chưa
- Số bản ghi bị ảnh hưởng
trong database
public virtual ServiceResult
ValidateRequiredData(T
record)
BL Thực hiện validate dữ liệu
public override void
BeforeInsertOrUpdate(ref
Employee employee)
BL Thực hiện xử lý tách mã nhân
viên làm 2 phần
public int Insert(Guid
newRecordId, string
newRecord)
DL gọi tới procedure thêm mới trong
database
Xử lý lỗi/ dữ liệu trả về cho Front-end phía Back-end:
Thành công:
Trả về status code 201
Số bản ghi bị ảnh hưởng
Lỗi:
Errorcode: 0
DevMsg: Xảy ra exception
UserMsg: Có lỗi xảy ra! Vui lòng liên hệ MISA
MoreInfo: Exception.Message
TraceID: HttpContext.TraceIdentifier
3. Mô tả các phím tắt mở các cửa sổ Debug trong Visual Studio và ý nghĩa
của các của sổ:
Phím tắt mở các cửa sổ Debug:
Call Stack:
Ý nghĩa, vai trò: Dùng để xem các lời gọi hàm hoặc thủ tục hiện có
trong Stack
Phím tắt: Ctrl + Alt + C
Autos:
Ý nghĩa, vai trò: Theo dõi các biến global
Phím tắt: Ctrl + Alt + V, A
Locals: Theo dõi các biến local
Ý nghĩa, vai trò:
Phím tắt: Ctrl + Alt + V, L
Quick Watch: Theo dõi nhanh biến nào đó
Ý nghĩa, vai trò:
Phím tắt: Shift + F9
Watch:
Ý nghĩa, vai trò: Watch Window là cửa sổ sử dụng để theo dõi sự
thay đổi giá trị của các biến (local hay global đều được hết)
Phím tắt: Ctrl + Alt + W, 1 | 2 | 3
BreackPoints:
Ý nghĩa, vai trò: Theo dõi các breakpoint được đặt
Phím tắt: Ctrl + Alt + B
Các phím tắt sử dụng trong quá trình Debug:
F5: Nhảy đến vị trí breakpoint tiếp theo
Shift + F5: Tắt debug
F9: Đặt/Gỡ breakpoint tại vị trí nháy chuột
F10: Nhảy xuống dòng
Ctrl+10: Nhảy đến dòng vị trí nháy chuột
F11: Nhảy vào hàm vị trí nháy chuột
F12: Nhảy vào interface của hàm vị trí nháy chuột
Ctrl + -: Quay lại vị trí trước
Debug Condition là debug với breakpoint có điều kiện
4. Ý nghĩa: Nhảy tới breakpoint này khi thỏa mãn điều kiện đã được thêm
Phím tắt: Alt + F9, C (sau khi bật debug)
Ý nghĩa cửa sổ Output, Error List, Task List
Output:
Ý nghĩa: Cửa sổ Đầu ra hiển thị thông báo trạng thái cho các tính
năng khác nhau trong môi trường
Phím tắt: Ctrl + Alt + O
Error List:
Ý nghĩa: Cửa sổ hiển thị danh sách lỗi, cảnh báo và tin nhắn
Phím tắt: Ctrl + + E
Task List:
Ý nghĩa: Để theo dõi các code comments sử dụng token như TODO
và HACK, hoặc các custom token và để quản lý lối tắt đến vị trí
được xác định trước trong mã
Phím tắt: Ctrl + + T
Mô tả các cửa sổ hỗ trợ Debug trong ChromeDevTool:
o Call Stack: Dùng để xem các lời gọi hàm hoặc thủ tục hiện có trong Stack
(Thường dùng để tìm tên hàm được gọi đến trong quá trình thực thi một chức
năng).
o Local: Theo dõi các biến trong phạm vi cục bộ.
o Watch: Theo dõi sự thay đổi của biến bất kể phạm vi toàn cục hay cục bộ.
o XHR/fetch Breakpoints:
Sử dụng XHR breakpoint khi request URL chứa một chuỗi được chỉ
định. DevTools dừng tại dòng code nơi xuất hiện chuỗi.
o Console: Theo dõi biến nhanh
o Network:
Xem các request đã được gửi đi
Xem các thông tin nhận về
Block các request không mong muốn
Kiểm thử trang web với các điều kiện khác nhau (internet chậm nhanh,
cache có hoặc không...)
5. Nêu các bước thực hiện sửa lỗi trong ứng dụng.
- Bước 1: Tái lặp và phân tích để khoanh vùng phần code lỗi
- Bước 2: Xác định nguyên nhân lỗi, nguyên nhân gốc rễ gây ra lỗi
- Bước 3: Sửa lỗi và kiểm tra lại. Phân tích phạm vi ảnh hưởng.