Với quy trình kiểm thử thích hợp được thực hiện, các lỗi sẽ được phát hiển và xử lý, từ đó đưa ra được ứng dụng phần mềm hoàn hảo cho người dùng.. Nó cải thiện chất lượng của phần mềm li
GIỚI THIỆU CHUNG
Tổng quan về công ty
Công ty Cổ phần Công nghệ và Dịch vụ CodLUCK được thành lập bởi ông Nguyễn Vũ Hiển năm 2020, địa chỉ HL Tower Bld, 6/82 Duy Tân, Dịch Vọng Hậu, Cầu Giấy, Hà Nội
CodLUCK là nhà cung cấp giải pháp chuyển đổi số toàn cầu DX với 2 đại diện: CodLUCK Technology và CodLUCK Japan Bằng cách kết hợp thế mạnh của mỗi công ty, có thể đáp ứng nhanh chóng và linh hoạt các dự án có quy mô lớn và có độ phức tạp cao
Với nhiều năm kinh nghiệm trong việc triển khai các giải pháp DX cho doanh nghiệp trên nhiều quy mô, có chuyên môn và hiểu biết sâu rộng về các mô hình và quy trình kinh doanh của hơn 10 ngành nghề bao gồm: ô tô, xây dựng, bất động sản, sản xuất, marketing & quảng cáo, thương mại điện tử, giáo dục, tài chính ngân hàng, v.v CodLUCK cung cấp các dịch vụ sử dụng công nghệ tương lai gồm AI, blockchain, low-code, no-code, v.v hỗ trợ các doanh nghiệp trong thời đại kỹ thuật số
Tên Công ty: CÔNG TY CỔ PHẦN CÔNG NGHỆ VÀ DỊCH VỤ CODLUCK Địa chỉ: tầng 16 tòa HL Tower Bld, 6/82 Duy Tân, Dịch Vọng Hậu, Cầu Giấy,
Chiến lược và phương hướng phát triển của đơn vị trong tương lai
Đặc điểm sản xuất kinh doanh
- Giải pháp chuyển đổi số:
+ Giải pháp ERP – CRM + Giải pháp phát triển Low – code + Giải pháp 3D/AR/VR
+ Giải pháp thương mại điện tử
- Tư vấn và phát triển DX
- Phát triển và tích hợp hệ thống
- Hỗ trợ mở rộng kinh doanh DX
CƠ SỞ LÝ THUYẾT KIỂM THỬ PHẦN MỀM
Vai trò của kiểm thử phần mềm
2.1.1 Vai trò của kiểm thử trong phát triển phần mềm
Kiểm thử phần mềm là hoạt động cần thiết vì không có bất cứ một sản phầm phần mềm nào được tạo ra một cách hoàn hảo, không có lỗi Một số những lỗi sẽ không gây ảnh hưởng nhiều đến sản phẩm tuy nhiên có một số lỗi rất lớn cần phải được sửa chữa kịp thời Chúng ta cần kiểm tra tỉ mỉ mọi thứ, bất cứ thứ gì chúng ta tạo ra bởi vì mọi thứ luôn không hoàn hảo 100%
Có một số lý do rõ ràng cho chúng ta biết lý do tại sao kiểm thử phần mềm là quan trọng và những điều chúng ta cần lưu ý nên xem xét khi thử nghiệm bất kỳ sản phẩm hoặc ứng dụng nào
Vai trò của kiểm thử phần mềm như sau:
- Kiểm thử phần mềm có nhiệm vụ chỉ ra các lỗi và sai sót hình thành trong các giai đoạn phát triển sản phẩm
- Kiểm thử là điều cần thiết vì nó đảm bảo độ tin cậy của khách hàng và sự hài lòng của họ về ứng dụng
- Nó rất quan trọng trong việc đảm bảo chất lượng của sản phẩm Sản phẩm chất lượng được giao cho khách hàng giúp họ sử dụng hiệu quả hơn
- Thử nghiệm phần mềm là cần thiết để cung cấp các phần mềm chất lượng cao cho khách hàng hoặc ứng dụng phần mềm đòi hỏi chi phí bảo trì thấp hơn và do đó dẫn đến kết quả chính xác, nhất quán và đáng tin cậy hơn
- Thử nghiệm là cần thiết cho một hiệu suất hiệu quả của ứng dụng phần mềm hoặc sản phẩm
- Điều quan trọng là đảm bảo rằng ứng dụng không dẫn đến bất kỳ lỗi nào vì nó có thể rất tốn kém trong tương lai hoặc trong các giai đoạn sau của quá trình phát triển
- Nó là khâu quan trọng để đảm bảo hoạt động kinh doanh phần mềm phát triển
- Đảm bảo uy tín của chủ sở hữu sản phẩm đối với khách hàng
2.1.2 Tầm quan trọng của kiểm thử trong phát triển phần mềm
2.1.2.1 Xác định lỗi (Bugs/ Defects)
Giai đoạn kiểm thử là một giai đoạn xác định lỗi trong ứng dụng Những lỗi này có thể ở cấp đơn vị hoặc hệ cấp độ hệ thống Với rất nhiều giai đoạn kiểm thử, bạn có thể tránh được bất kỳ loại lỗi nào có thể ảnh hưởng đến ứng dụng của bạn
2.1.2.2 Thông tin cho các bên liên quan và uy tín của công ty
Với sự trợ giúp của giai đoạn kiểm thử, nó giúp bạn biết trạng thái, chất lượng sản phẩm và dịch vụ Các bên liên quan sẽ có được thông tin tốt thông qua giai đoạn kiểm thử cũng như là chất lượng của sản phẩm
2.1.2.3 Cải thiện chất lượng sản phẩm
Vì thử nghiệm là giai đoạn giúp biết được kết quả thực tế và kết quả mong đợi nên chắc chắn, nó có thể giúp bạn cải thiện chất lượng sản phẩm của bạn Với quy trình kiểm thử thích hợp được thực hiện, các lỗi sẽ được phát hiển và xử lý, từ đó đưa ra được ứng dụng phần mềm hoàn hảo cho người dùng
2.1.2.4 Tầm quan trọng của kỹ thuật
Trong bất kỳ vòng đời phát triển phần mềm nào, giai đoạn kiểm thử rất quan trọng đối với các khía cạnh kỹ thuật, vì nó phải đưa ra được một ứng dụng kỹ thuật tốt nhất
2.1.2.5 Để đi trước bất kỳ nhà phát triển cạnh tranh nào
Các công cụ và phương pháp kiểm thử hoàn hảo giúp bạn và ứng dụng của bạn phát triển trên thị trường và bỏ xa các đối thủ cạnh tranh khác Với việc
10 thực hiện tất cả các giai đoạn thử nghiệm, bạn sẽ phát triển được ứng dụng phần mềm an toàn và bảo mật
2.1.2.6 Tránh xa mọi mối nguy
Khi bạn phát triển bất kỳ phần mềm nào, việc kiểm thử đóng vai trò quan trọng Khi bạn cung cấp phần mềm của bạn mà không có bất kỳ thử nghiệm nào thì nó có thể gây nguy hiểm cho chính người đang sử dụng nó Để giữ cho tất cả mọi người tránh xa mọi mối nguy hiểm, quá trình kiểm thử là cần thiết phải được tiến hành
Phần mềm được kiểm tra chính xác, cẩn thận giúp bạn tự tin hơn trong quá trình đưa phần mềm vào ứng dụng thực tế Nó cải thiện chất lượng của phần mềm liên tục và tất cả các loại kiểm thử, các quy trình nghiêm ngặt sẽ tạo ra một ứng dụng an toàn và đem đến sự trải nghiệm tuyệt vời cho người dùng cuối
2.1.2.8 Ước tính độ tin cậy Đây là một yếu tố quan trọng khác được xác định bởi giai đoạn kiểm thử Nếu ứng dụng phần mềm của bạn đã trải qua tất cả các cấp độ nhỏ như kiểm thử đơn vị (Unit testing) và kiểm thử lớn như kiểm thử hồi quy (regression testing) thì nó chắc chắn là một ứng dụng đáng tin cậy
Vì thế kiểm thử xác định độ tin cậy của ứng dụng phần mềm của bạn Kiểm thử có thể hoạt động như là phương pháp thống kê tốt nhất xác định việc thử nghiệm hoạt động trên ứng dụng dẫn đến một phần mềm đáng tin cậy
2.1.2.9 Chứng minh tính khả dụng và khả năng vận hành
Một thiết kế có thể kiểm tra là một thiết kế có thể dễ dàng xác nhận, làm sai lệch và duy trì Bởi vì kiểm thử là một nỗ lực nghiêm ngặt và đòi hỏi thời gian và chi phí đáng kể, thiết kế kiểm thử cũng được coi là một quy tắc thiết kế quan trọng để phát triển phần mềm
Kiển thức nền tảng về kiểm thử phần mềm
2.2.1 Khái niệm về kiểm thử phần mềm
Kiểm thử phần mềm là quá trình thực thi 1 chương trình với mục đích tìm ra lỗi Kiểm thử phần mềm đảm bảo sản phẩm phần mềm đáp ứng chính xác, đầy đủ và đúng theo yêu cầu của khách hàng, yêu cầu của sản phẩm đề đã đặt ra Kiểm thử phần mềm cũng cung cấp mục tiêu, cái nhìn độc lập về phần mềm, điều này cho phép việc đánh giá và hiểu rõ các rủi ro khi thực thi phần mềm Kiểm thử phần mềm tạo điều kiện cho bạn tận dụng tối đa tư duy đánh giá và sáng tạo để bạn có thể phát hiện ra những điểm mà người khác chưa nhìn thấy Các thuật ngữ chính sử dụng trong kiểm thử phần mềm:
- Lỗi (Error): Con người luôn có thể phạm lỗi Khi lập trình viên phạm lỗi trong lập trình, ta gọi các lỗi đó là bug (con bọ) Lỗi có thể phát tán Chẳng hạn, một lỗi về xác định yêu cầu có thể dẫn đến sai lầm về thiết kế và càng sai khi lập trình theo thiết kế này Lỗi là nguyên nhân dẫn đến sai
- Sai (Fault): Sai là kết quả của lỗi, hay nói khác đi, lỗi sẽ dẫn đến sai Cũng có thể nói sai là một biểu diễn của lỗi dưới dạng một biểu thức, chẳng hạn chương trình, văn bản, sơ đồ dòng dữ liệu, biểu đồ lớp, v.v Sai có thể khó phát hiện Khi nhà thiết kế mắc lỗi bỏ sót trong quá trình thiết kế, sai về kết quả gây ra do lỗi đó là cái gì đó bị thiếu Sai về nhiệm vụ xuất hiện khi vào sai thông tin, còn sai về bỏ quên xuất hiện khi không vào đủ thông tin Loại sai về bỏ quên khó phát hiện và khó sửa hơn loại sai về nhiệm vụ
- Thất bại (Failure): Thất bại xuất hiện khi một lỗi được thực thi Có hai điều cần lưu ý trong định nghĩa này là: một là thất bại chỉ xuất hiện ở dạng có thể được thực thi mà thông thường là mã nguồn, hai là các thất bại chỉ liên kết với các lỗi về nhiệm vụ Câu hỏi là các thất bại tương ứng với các lỗi về bỏ thì quên được xử lý thế nào và những lỗi không bao giờ được thực thi, hoặc không được thực thi trong khoảng thời gian dài cần được xử lý ra sao Virus
Michaelangelo là một ví dụ về lỗi loại này Nó chỉ được tiến hành vào ngày sinh của Michaelangelo, tức ngày 6/3 mà thôi Câu trả lời nằm ở chỗ: việc khảo sát, tức là phân tích và duyệt mã, thiết kế hoặc đặc tả có thể ngăn chặn nhiều thất bại bằng cách phát hiện ra các lỗi thuộc cả hai loại
- Sự cố (Incident): Một khi thất bại xuất hiện, nó có thể hiển hoặc không hiển, tức là rõ ràng hoặc không rõ ràng đối với người dùng hoặc người kiểm thử Sự cố nhằm giúp để nhận biết về sự xuất hiện của thất bại Sự cố là triệu chứng liên kết với một thất bại và giúp cho người dùng hoặc người kiểm thử nhận biết về sự xuất hiện của thất bại này
- Trường hợp kiểm thử (Testcase): Là một bộ bao gồm một tập dữ liệu đầu vào, các điều kiện thực thi và các kết quả mong đợi với các tập đầu vào đó
- Kịch bản kiểm thử (Test Scenario): Các bước thực hiện khi kiểm thử
2.2.2 Các kĩ thuật kiểm thử
Kiểm thử hộp đen( Black box testing): Là một phương pháp kiểm thử mà tester sẽ chỉ xem xét đến đầu vào và đầu ra của chương trình mà không quan tâm code bên trong được viết ra sao Tester thực hiện kiểm thử dựa hoàn toàn vào đặc tả yêu cầu Mục đích của kiểm thử hộp đen là tìm ra các lỗi ở giao diện, chức năng của phần mềm Các trường hợp kiểm thử sẽ được xây dựng xung quanh đó
Kiểm thử hộp trắng( White box testing): Là phương pháp kiểm thử mà cấu trúc thuật toán của chương trình được đưa vào xem xét Các trường hợp kiểm thử được thiết kế dựa vào cấu trúc mã hoặc cách làm việc của chương trình Người kiểm thử truy cập vào mã nguồn của chương trình để kiểm tra nó
2.2.3 Các giai đoạn, cấp độ kiểm thử phần mềm
2.2.3.1 Kiểm thử đơn vị (Unit test)
Kiểm thử đơn vị là hoạt động kiểm thử nhỏ nhất Kiểm thử thực hiện trên các hàm hay thành phần riêng lẻ Đây là 1 công việc mà để thực hiện được nó
13 thì người kiểm thử sẽ phải hiểu biết về code, về chương trình, các hàm, Nếu bạn đang lo lắng vì bạn không có nhiều kiến thức về code thì không sao cả, vì bạn sẽ không phải thực hiện bước kiểm thử này, lập trình viên sẽ làm nó trước khi giao cho bạn
Mục đích của việc thực hiện kiểm thử đơn vị là cô lập từng thành phần của chương trình và chứng minh các bộ phận riêng lẻ chính xác về các yêu cầu chức năng
2.2.3.2 Kiểm thử tích hợp (Intergration test)
Như chúng ta đã biết, một phần mềm được tạo ra sẽ bao gồm rất nhiều module trong đó, để chắc chắn rằng phần mềm hoạt động tốt thì chúng ta cần phải gom các module lại với nhau để kiểm tra sự giao tiếp giữa các module cũng như bản thân từng thành phần từng module Kiểm thử tích hợp bao gồm 2 mục tiêu chính là : Phát hiện lỗi giao tiếp xảy ra giữa các Unit Tích hợp các Unit đơn lẻ thành các hệ thống nhỏ và cuối cùng là 1 hệ thống hoàn chỉnh để chuẩn bị cho bước kiểm thử hệ thống
2.2.3.3 Kiểm thử hệ thống (System test)
Kiểm thử 1 hệ thống đã được tích hợp hoàn chỉnh để xác minh rằng nó đáp ứng được yêu cầu Kiểm thử hệ thống thuộc loại kiểm thử hộp đen Kiểm thử hệ thống tập trung nhiều hơn vào các chức năng của hệ thống Kiểm tra cả chức năng và giao diện , các hành vi của hệ thống 1 cách hoàn chỉnh, đáp ứng với yêu cầu
2.2.3.4 Kiểm thử chấp nhận (Acceptance test)
Trong kiểu kiểm thử này, phần mềm sẽ được thực hiện kiểm tra từ người dùng để tìm ra nếu phần mềm phù hợp với sự mong đợi của người dùng và thực hiện đúng như mong đợi Trong giai đoạn test này, tester có thể cũng thực hiện hoặc khách hàng có các tester của riêng họ để thực hiện Có 2 loại kiểm thử chấp nhận đó là kiểm thử Alpha và kiểm thử Beta:
Kiểm thử chức năng
Kiểm thử chức năng là một trong số 4 loại kiểm thử chính thuộc level kiểm thử thứ hai - Kiểm thử tích hợp (Integration Test) trong kiểm thử phần mềm
Kiểm thử chức năng là một loại kiểm thử hộp đen (black box) và test case của nó được dựa trên đặc tả của ứng dụng phần mềm/thành phần đang test Các chức năng được test bằng cách nhập vào các giá trị nhập và kiểm tra kết quả đầu ra, và ít quan tâm đến cấu trúc bên trong của ứng dụng
Nó là một qui trình cố gắng tìm ra các khác biệt giữa đặc tả bên ngoài của phần mềm và thực tế mà phần mềm cung cấp Với các đặc tả bên ngoài của phần mềm là đặc tả chính xác về hành vi của phần mềm theo góc nhìn của người dùng
2.3.2 Các cách tiếp cận để kiểm thử chức năng phần mềm
Kiểm thử chức năng khác với kiểm thử hệ thống, kiểm thử chức năng là
“xác nhận – verify – một ứng dụng bằng cách kiểm tra nó dựa vào các tài liệu thiết kế hoặc đặc tả kỹ thuật”, còn kiểm thử hệ thống là “xác minh – validate – chương trình bằng cách kiểm tra nó dựa vào các yêu cầu của người dùng hoặc hệ thống đã công bố”
Kiểm thử chức năng thường bao gồm 5 bước:
Việc xác định các chức năng mà phần mềm mong muốn sẽ thực hiện
Việc tạo ra các dữ liệu đầu vào dựa trên các tài liệu đặc tả kỹ thuật của các chức năng
Việc xác định kết quả đầu ra dựa trên các tài liệu đặc tả kỹ thuật của các chức năng
Việc thực hiện các trường hợp kiểm thử
Việc so sánh kết quả thực tế và kết quả mong muốn
Các kỹ thuật cụ thể gồm:
- Database Create/Retrieve/Update/Delete Testing
2.3.2.1 Kiểm thử khả năng duyệt chức năng của người dùng (User Navigation Test)
Các màn hình phục vụ duyệt thực hiện chức năng là màn hình log on/log off, menu bar và hệ thống cây phân cấp các option để thực hiện chức năng, toolbar, tất cả các mối liên kết từ màn hình này tới màn hình khác để thể hiện sự liên tục của hoạt động nghiệp vụ đang cần thực hiện
Kiểm thử khả năng duyệt chức năng của người dùng tập trung trên
Khả năng người dùng login vào hệ thống với quyền hạn thích hợp
Di chuyển qua các màn hình "giao tác" mong muốn 1 cách đúng đắn và logout khỏi phần mềm
2.3.2.2 Kiểm thử màn hình thao tác (Transaction screen Test)
Màn hình thao tác có các field nhập liệu, list chọn option, các options, các button chức năng (Add, Change, Delete, Submit, Cancel, OK )
Một vài loại kết quả có thể được hiển thị trên màn hình thao tác sau khi người dùng click button chức năng nào đó
Công việc của người kiểm thử :
Thiết kế testcase để xác thực hoạt động của mỗi field dữ liệu, list, option và button trên màn hình giao tác theo các yêu cầu nghiệp vụ, tài liệu người dùng và tài liệu người quản trị
Nếu kết quả được hiển thị trên màn hình thao tác, thì kỹ thuật kiểm thử hộp đen với testcase gồm (data input, ouput kỳ vọng) sẽ được dùng để xác thực kết quả hiển thị
2.3.2.3 Kiểm thử luồng thao tác (Transaction Flow Test)
Kiểm tra kết quả tổng hợp của nhiều màn hình thao tác theo thứ tự duyệt đúng có hoàn thành hoạt động nghiệp vụ tương ứng không?
Thí dụ nghiệp vụ cập nhật profile khách hàng gồm các màn hình thao tác sau:
- Màn hình 1 cập nhật tên, địa chỉ, contact;
- Màn hình 2 cập nhật credit;
- Màn hình 3 cập nhật thông tin thanh toán và khuyến mãi;
- Màn hình 4 tổng kết profile và thực hiện cập nhật;
- Màn hình 5 để xem kết quả profile đã cập nhật
Kết quả cuối cùng của trình tự các màn hình là file hay database sẽ được cập nhật để chứa các thông tin mà người dùng đã cập nhật thông qua các màn hình thao tác
Nhiệm vụ của người kiểm thử :
- Xác thực rằng nếu người dùng thực hiện đúng trình tự các màn hình thao tác và hoàn tất được chúng thì hệ thống sẽ cung cấp kết quả đúng
- Ngược lại, nếu người dùng không tuân thủ bất kỳ 1 qui luật nghiệp vụ nào trong một màn hình thao tác nào thì hệ thống sẽ không cung cấp kết quả gì cho người dùng
2.3.2.4 Kiểm thử màn hình report (Report screen Test)
Màn hình report cho phép tìm kiếm dữ liệu và hiển thị kết quả (không cần nhập dữ liệu như màn hình giao tác)
Khó khăn trong kiểm thử màn hình report nằm ở chỗ có nhiều cách mà người dùng có thể đặc tả dữ liệu cần được tìm kiếm (tiêu chuẩn) và cách thức dữ liệu này ₫ược hiển thị (sắp xếp và định dạng)
Công việc của người kiềm thử:
Chú ý đặc biệt vào dữ liệu tìm kiếm và hiển thị vì người dùng có thể chọn sai dữ liệu hay tệ hơn là không có kết quả nào được hiển thị
2.3.2.5 Kiểm thử luồng report (Report Flow Test)
Kiểm thử các khác biệt giữa kết quả hiển thị trong màn hình report và các phương thức report khác (như máy in, file, )
Nhiệm vụ của người kiểm thử:
- Xác định xem phần mềm gởi cùng kết quả ra màn hình report và máy in ?
- Xác thực kết quả report trên tất cả phương thức báo cáo khác nhau được hỗ trợ bởi phần mềm
- Xác định xem khả năng máy in có hỗ trợ font, vùng chọn được người dùng xác định trong màn hình report ?
2.3.2.6 Kiểm thử việc Create/Retrieve/Update/Delete database
Thường được thực hiện thông qua 2 bước:
- Kiểm thử việc thiết kế, khởi tạo database ban đầu thông qua tiện ích bên ngoài phần mềm ứng dụng cần kiểm thử;
- Kiểm thử việc phần mềm sử dụng database đã được thiết kế và khởi tạo đúng Đòi hỏi sự hợp tác và cộng tác giữa người kiểm thử và người quản trị database
NỘI DUNG NGHIÊN CỨU
Công việc được giao
Công việc được giao cho thực tập sinh kiểm thử phần mềm là thiết kế Testcase, thực hiện viết testcase, log bug Để hoàn thành nhiệm vụ trên ,thực tập sinh phải đọc tài liệu nghiệp vụ của dự án, tìm hiểu về kiểm thử , các kỹ thuật kiểm thử, nguyên tắc kiểm thử, phân biệt lỗi, mức độ lỗi:
1 Kiểm thử phần mềm là hoạt động nhằm tìm kiếm và phát hiện các lỗi của phần mềm Kiểm thử phần mềm đảm bảo sản phẩm đáp ứng chính xác đầy đủ và đúng theo yêu cầu của khách hàng đề ra
2 Kiểm thử hộp đen( Black box testing): Là một phương pháp kiểm thử mà tester sẽ chỉ xem xét đến đầu vào và đầu ra của chương trình mà không quan tâm code bên trong được viết ra sao
3 Kiểm thử hộp trắng( White box testing): Là phương pháp kiểm thử mà cấu trúc thuật toán của chương trình được đưa vào xem xét
Kiểm thử chứng minh sự hiện diện của lỗi Kiểm thử toàn bộ là không khả thi
Kiểm thử càng sớm càng tốt Lỗi thường phân bổ tập trung Nghịch lý thuốc trừ sâu Kiểm thử phụ thuộc vào ngữ cảnh Quan niệm sai lầm về việc “hết lỗi”
5 Phân biệt lỗi trong testcase là quá trình xác định và phân loại các vấn đề, sai sót hoặc không nhất quán mà bạn phát hiện trong quá trình kiểm thử
Phân loại theo mức độ nghiêm trọng: Bạn có thể phân loại lỗi theo mức độ nghiêm trọng, từ những vấn đề nhỏ không ảnh hưởng nhiều
20 đến tính năng hoặc trải nghiệm người dùng, cho đến những lỗi nghiêm trọng ảnh hưởng đến tính ổn định hoặc tính bảo mật của ứng dụng
Phân loại theo loại lỗi: Bạn có thể phân loại lỗi theo các loại cụ thể như lỗi giao diện người dùng, lỗi chức năng, lỗi hiệu suất, lỗi bảo mật, lỗi tích hợp, v.v.
Phân loại theo ưu tiên sửa lỗi: Bạn có thể xác định các lỗi cần được ưu tiên sửa trước dựa trên mức độ ảnh hưởng đến người dùng hoặc đối với tính chất cốt lõi của ứng dụng Phân loại theo nguyên nhân: Bạn có thể phân loại lỗi theo nguyên nhân gây ra chúng, như lỗi do dữ liệu không hợp lệ, lỗi do thiết kế không rõ ràng, lỗi do lập trình
Phân loại theo vị trí hoặc mô-đun: Bạn có thể phân loại lỗi dựa trên vị trí hoặc mô-đun của ứng dụng mà chúng xuất hiện
Phân loại theo chu kỳ sự kiện: Bạn có thể phân loại lỗi theo chu kỳ sự kiện mà chúng xuất hiện, chẳng hạn lỗi xuất hiện sau khi một tính năng mới được triển khai hoặc lỗi xuất hiện trong quá trình tích hợp.
Phương thức làm việc
Thực tập sinh phải tuân thủ thời gian làm việc được định sẵn bởi Công ty Cổ phần Công nghệ và dịch vụ CodLUCK, từ thứ Hai đến thứ Sáu hàng tuần, bắt đầu từ 8h30 đến 17h30 Trong thời gian thực tập sinh phải tận dụng thời gian hiệu quả để tiến hành phát triển nhiệm vụ được giao
Thực tập sinh phải làm việc tại văn phòng của Cổ phần Công nghệ và dịch vụ CodLUCK và được trang bị đầy đủ các công cụ cần thiết để thực hiện nhiệm vụ Thực tập sinh được phép sử dụng máy tính công ty, phần mềm lập trình, máy in để xử lý dữ liệu và in ấn tài liệu liên quan đến nhiệm vụ
Mặc dù thực tập sinh làm việc độc lập, nhưng khi cần thiết, thực tập sinh phải phối hợp với các thành viên khác trong nhóm để đảm bảo tiến độ và chất lượng của nhiệm vụ Thực tập sinh phải thường xuyên trao đổi với các đồng nghiệp để giải quyết các vấn đề kỹ thuật phát sinh trong quá trình phát triển và đồng thời đề xuất các cải tiến để tối ưu hóa quá trình phát triển sản phẩm
Thực tập sinh cũng phải sử dụng các công cụ quản lý dự án để theo dõi tiến độ công việc Các công cụ này giúp thực tập sinh quản lý và phân chia công việc hiệu quả, giảm thiểu các rủi ro có thể xảy ra trong quá trình phát triển và đảm bảo hoàn thành dự án đúng thời hạn.
Nghiệp vụ dự án
3.3.1 Loại hình công việc thực tập
[x] Phát triển Ứng dụng [ ] Nghiên cứu [ ] Tìm hiểu Công nghệ [x] Khác: Xây dựng testcase và kiểm thử phần mềm
Dự án xây dựng website về sàn thương mại điện tử thời trang trẻ em
Hệ thống gồm 2 nhóm người dùng chính: quản lý và khách hàng Các chức năng cũng như giao diện được thiết kế riêng cho từng nhóm người dùng Quản lý có thể quản lý sản phẩm, quản lý đơn hàng, thống kê, Khách hàng có thể xem sản phẩm, tìm kiếm sản phẩm, đặt hàng trực tuyến
Ngoài ra còn có nhóm người dùng là nhân viên, nhân viên có nhiệm vụ quản lý đơn hàng và theo dõi đơn hàng, quản lý bài viết và chỉnh sửa thông tin cá nhân
Quy trình lựa chọn và thực hiện xong một giao dịch của hệ thống là khi khách hàng truy cập vào website, cho phép khách hàng xem các thông tin sản phẩm theo từng danh mục, sau khi chọn một sản phẩm cụ thể, khách hàng sẽ
22 được chuyển đến trang chi tiết cho sản phẩm vừa chọn, tại đây khách hàng có thể zoom hình ảnh, phóng to, xem qua giá cả, mẫu mã, mô tả, tình trạng sản phẩm, Chức năng giỏ hàng cho phép khách hàng xem lại các mặt hàng đã lựa chọn
3.3.3.1 Lập kế hoạch Test (Testplan)
Bước 1: Giới thiệu dự án bao gồm
- Tóm tắt thông tin dự án
- Phạm vi Test: Mô tả các giai đoạn kiểm tra và các loại hình kiểm tra sẽ được xác định trong kế hoạch
Bước 2: Xác định các yêu cầu đối với kiểm tra phần mềm gồm yêu cầu chức năng và yêu cầu phi chức năng
Bước 3: Chiến lược kiểm tra
- Các loại hình kiểm tra (Unit Test, Intergration Test, System Test, Acceptance Test)
- Các tiêu chuẩn về testing
+ Điều kiện bắt buộc khi thực hiện test + Khi nào dừng test
+ Tiêu chuẩn test thành công + Khi nào test quy hồi
Bước 4: Tool kiểm thử (Nếu có)
- Xác định nhận lực và vai trò, trách nhiệm
- Yêu cầu về đào tạo
- Môi trường kiểm thử (của tester và khách hàng)
Bước 5 Xác định lịch trình Test
- Kế hoạch thiết kế Testcase
- Kế hoạch thực hiện test
Bước 6: Yêu cầu bàn giao sản phẩm
ID: Giá trị cần để xác định số lượng trường hợp cần để kiểm thử
Test Items: Dựa theo chức năng của hệ thống có thể chia nhỏ các functions ra để tạo TCs rõ ràng hơn
Implementation steps: Các bước thực hiện test
Test data: Dữ liệu kiểm thử
Expected Output: Kết quả đầu ra
Result: Thường là pass hoặc false
3.3.3.3 Các bước xác định testcase
Test Case là một tập hợp các trường hợp điều kiện theo đó mà người kiểm thử có thể dựa vào nó để xác định liệu ứng dụng, hệ thống phần mềm hoặc là một trong các tính năng của nó có hoạt động theo mong muốn khách hàng
Bước 1: Xác định mục đích test: Trước tiên, cần hiểu rõ đặc tả yêu cầu của khách hàng Khi bắt đầu viết testcase cho các tính năng của phần mềm, việc đầu tiên cần xác định đó là cần hiểu và xác định được đặc tả, nghiệp vụ phần mềm
Bước 2: Xác định hiệu suất testing: (Dựa trên sự hiểu biết về hệ thống phần mềm) Để viết kịch bản thử nghiệm tốt, bạn nên quen thuộc với các yêu cầu chức năng Bạn cần phải biết làm thế nào phần mềm được sử dụng bao gồm các hoạt động , tổ chức chức năng khác nhau
Bước 3: Xác định các yêu cầu phi chức năng: Là để hiểu những khía cạnh khác của phần mềm liên quan đến các yêu cầu phi chức năng (non-function) như yêu cầu phần cứng, hệ điều hành, các khía cạnh an ninh phải được xem xét và điều kiện tiên quyết khác như các tập tin dữ liệu hoặc chuẩn bị dữ liệu thử nghiệm
Bước 4: Xác định biểu mẫu cho testcase Các mẫu, các trường hợp thử nghiệm nên bao gồm giao diện, chức năng, khả năng chịu lỗi, khả năng tương thích và hiệu suất của một số chức năng Mỗi thể loại nên được xác định phù hợp với logic của ứng dụng phần mềm
Bước 5: Xác định tính ảnh hưởng giữa các nguyên tắc modul: Trước tiên cần hiểu rõ chức năng thực hiện của 1 mô-đun và sự tương tác của mô-đun đó với các mô-đun khác để xác định được sự khớp nối của hệ thống
Testcase nên được thiết kế để có thể che phủ được sự ảnh hưởng của các modul với nhau ở mức độ cao nhất Muốn biết được vấn đề đó, bận cần xác định rõ được tính năng của từng modul riêng biệt, cách thức nó hoạt động tương tác với modul khác
ID Summary Implementation steps Test Data Expected Output Result Bugs
TC_01 Kiểm tra giao diện màn hình đăng nhập
1 Người dùng truy cập vào hệ thống của trang web
Hiển thị giao diện đăng nhập gồm các trường: đăng nhập, đăng ký, button đăng nhập, button đăng ký ngay
TC_02 Kiểm tra con trỏ chuột tại textbox đầu tiên
Trong giao diện Đăng nhập
1 Nhấn vào trường nhập dữ liệu Tên tài khoản
Hiển thị con trỏ nhập dữ liệu tại trường tài khoản, con trỏ chuột sẽ dịch texbox từ trái qua phải, trên xuống dưới
TC_03 Kiểm tra con trỏ chuột tại textbox cuối cùng
Trong giao diện Đăng nhập
1 Nhấn vào trường nhập dữ liệu Mật khẩu
Hiển thị con trỏ nhập dữ liệu tại trường mật khẩu, con trỏ chuột sẽ dịch texbox từ trái qua phải, trên xuống dưới
Kiểm tra thông tin đăng nhập tên tài khoản người dùng hợp lệ và mật khẩu hợp lệ
1 Người dùng truy cập vào hệ thống
3 Nhập tên tài khoản hợp lệ
4 Nhập mật khẩu hợp lệ
4 admin123 Đăng nhập thành công >>
Chuyển đến màn hình trang chủ
Kiểm tra thông tin đăng nhập tên tài khoản người dùng không hợp lệ và mật khẩu hợp lệ
1 Người dùng truy cập vào hệ thống
3 Nhập tên tài khoản không hợp lệ
4 Nhập mật khẩu hợp lệ
Hiển thị thông báo “Tài khoản hoặc mật khẩu không đúng”
Kiểm tra thông tin đăng nhập tên tài khoản người dùng hợp lệ và mật khẩu không hợp lệ
1 Người dùng truy cập vào hệ thống
3 Nhập tên tài khoản hợp lệ
4 Nhập mật khẩu không hợp lệ
Hiển thị thông báo “Tài khoản hoặc mật khẩu không đúng”
Kiểm tra thông tin đăng nhập tên tài khoản người dùng không hợp lệ và mật khẩu không hợp lệ
1 Người dùng truy cập vào hệ thống
3 Nhập tên tài khoản không hợp lệ
4 Nhập mật khẩu không hợp lệ
Hiển thị thông báo “Tài khoản hoặc mật khẩu không đúng”
Kiểm tra thông tin đăng nhập tên tài khoản người dùng và mật khẩu 1 trong
2 rỗng và trường còn lại hợp lệ hoặc ko hợp lệ
1 Người dùng truy cập hệ thống
3 Không nhập tên tài khoản người dùng
4 Nhập mật khẩu hợp lệ
Hiển thị thông báo “Tài khoản hoặc mật khẩu không đúng” và tại trường bị rỗng
" Vui lòng nhập trường này"
Kiểm tra thông tin đăng nhập tên người dùng và mật khẩu đều rỗng
1 Người dùng truy cập hệ thống
3 Không nhập tên tài khoản người dùng và mật khẩu
Hiển thị thông báo tại các trường bị rỗng “Vui lòng nhập trường này”
ID Summary Implementation steps Test Data Expected Output Result Bugs
TC_01 Kiểm tra giao diện màn hình đăng ký
1 Người dùng truy cập vào hệ thống
Hiển thị giao diện đăng ký gồm các trường: tên tài khoản, mật khẩu, xác nhận mật khẩu, button đăng ký, button đăng nhập
TC_02 Kiểm tra con trỏ chuột tại textbox đầu tiên
Trong giao diện Đăng ký
1 Nhấn vào trường nhập dữ liệu Tên tài khoản
Hiển thị con trỏ nhập dữ liệu tại trường tên tài khoản, con trỏ chuột sẽ dịch textbox từ trái qua phải, trên xuống dưới
TC_03 Kiểm tra con trỏ chuột tại textbox kế tiếp
Trong giao diện Đăng ký
1 Nhấn vào trường nhập dữ liệu Mật khẩu
Hiển thị con trỏ nhập dữ liệu tại trường mật khẩu, con trỏ chuột sẽ dịch textbox từ trái qua phải, trên xuống dưới
TC_04 Kiểm tra con trỏ chuột tại textbox cuối cùng
Trong giao diện đăng ký
1 Nhấn vào trường xác nhận mật khẩu
Hiển thị con trỏ nhập dữ liệu tại trường xác nhận mật khẩu, con trỏ chuột sẽ dịch textbox từ trái qua phải, trên xuống dưới
Kiểm tra thông tin đăng ký tên tài khoản người dùng hợp lệ, mật khẩu và xác nhận mật khẩu hợp lệ
1 Người dùng truy cập vào hệ thống
3 Nhập tên tài khoản hợp lệ
4 Nhập mật khẩu và xác nhận mật khẩu hợp lệ
Hiển thị thông báo "Đăng ký tài khoản thành công " PASS
Kiểm tra thông tin đăng ký tên tài khoản người dùng hợp lệ, mật khẩu hợp lệ và xác nhận mật khẩu không hợp lệ
1 Người dùng truy cập vào hệ thống
3 Nhập tên tài khoản hợp lệ
4 Nhập mật khẩu hợp lệ
5 Nhập xác nhận mật khẩu không hợp lệ
Hiển thị thông báo "Xác nhận mật khẩu không trùng khớp" PASS
Kiểm tra thông tin đăng ký tên tài khoản người dùng không hợp lệ, mật khẩu và xác nhận mật khẩu hợp lệ
1 Người dùng truy cập vào hệ thống
3 Nhập tên tài khoản không hợp lệ
4 Nhập mật khẩu và xác nhận mật khẩu hợp lệ
Hiển thị thông báo tại tường tên tài khoản "Tên tài khoản bắt buộc từ 5-10 ký tự, phải chứa chữ thường và chữ số"
Kiểm tra thông tin đăng ký tên tài khoản người dùng hợp lệ, mật khẩu và xác nhận mật khẩu không hợp lệ
1 Người dùng truy cập vào hệ thống
3 Nhập tên tài khoản hợp lệ
4 Nhập mật khẩu và xác nhận mật khẩu không hợp lệ
Hiển thị thông báo tại trường mật khẩu “Mật khẩu phải chứa từ 8-16 ký tự”
Kiểm tra thông tin đăng ký tên tài khoản người dùng, mật khẩu và xác nhận mật khẩu không hợp lệ
1 Người dùng truy cập vào hệ thống
3 Nhập tên tài khoản không hợp lệ
4 Nhập mật khẩu và xác nhận mật khẩu không hợp lệ
Hiển thị thông báo tại trường tên tài khoản và mật khẩu
“Tên tài khoản bắt buộc từ 5-
10 ký tự, phải chứa chữ thường và chữ số; Mật khẩu phải chứa từ 8-16 ký tự”
Kiểm tra thông tin đăng ký trùng với tài khoản đã đăng ký
1 Người dùng truy cập vào hệ thống
3 Nhập tên tài khoản đã dược đăng ký
4 Nhập mật khẩu và xác nhận mật khẩu đã được đăng ký
Hiển thị thông báo “Tài khoản này đã tồn tại” PASS
Kiểm tra thông tin đăng ký
2 trường tên tài khoản người dùng và mật khẩu 1 trong 2 rỗng và trường còn lại hợp lệ hoặc cả 2 đều rỗng và xác nhận mật khẩu hợp lệ hoặc rỗng hoặc không hợp lệ
1 Người dùng truy cập hệ thống
3 Không nhập tên tài khoản người dùng và mật khẩu
4 Nhập xác nhận mật khẩu hợp lệ hoặc rỗng hoặc không hợp lệ
Hiển thị thông báo tại các trường bị rỗng “Vui lòng nhập trường này” và trường xác nhận mật khẩu " Xác nhận mật khẩu không trùng khớp"
Kiểm tra thông tin đăng ký
2 trường tên tài khoản người dùng và mật khẩu 1 trong 2 không hợp lệ và trường còn lại hợp lệ hoặc cả 2 đều không hợp lệ và xác nhận mật khẩu hợp lệ hoặc không hợp lệ hoặc rỗng
1 Người dùng truy cập hệ thống
3 Nhập tên tài khoản người dùng và mật khẩu không hợp lệ hoặc 1 trong 2 không hợp lệ và trường còn lại hợp lệ
4 Nhập xác nhận mật khẩu hợp lệ hoặc rỗng hoặc không hợp lệ
Hiển thị thông báo tại các trường không hợp lệ “Tên tài khoản bắt buộc từ 5-10 ký tự, phải chứa chữ thường và chữ số; Mật khẩu phải chứa từ 8-
16 ký tự” và trường xác nhận mật khẩu " Xác nhận mật khẩu không trùng khớp"
Kiểm tra thông tin đăng ký tên tài khoản người dùng, mật khẩu và xác nhận mật khẩu đều rỗng
1 Người dùng truy cập vào hệ thống
Hiển thị thông báo tại các trường bị rỗng “Vui lòng nhập trường này”
Bảng 3.3: Testcase Tìm kiếm sản phẩm
ID Summary Implementation steps Test Data Expected Output Result Bugs
TC_01 Kiểm tra trường tìm kiếm Check hiển thị default
- Hiển thị placeholder “ Tìm kiếm sản phẩm”
- Hiển thị icon kính lúp tìm kiếm
Kiểm tra từ khóa nhập vào khung tìm kiếm của người dùng hợp lệ
1 Người dùng truy cập vào hệ thống
2 Chọn chức năng tìm kiếm sản phẩm
3 Nhập từ khóa hợp lệ
Hiển thị các sản phẩm có liên quan đến từ “Áo” và
Kiểm tra từ khóa nhập vào khung tìm kiếm của người dùng không hợp lệ
1 Người dùng truy cập vào hệ thống
2 Chọn chức năng tìm kiếm sản phẩm
3 Nhập từ khóa không hợp lệ
Không hiển thị sản phẩm theo từ khóa khách hàng đã nhập
Kiểm tra từ khóa gợi ý tìm kiếm nhập vào khung tìm kiếm của người dùng theo Danh mục
1 Người dùng truy cập vào hệ thống
2 Chọn chức năng tìm kiếm sản phẩm
3 Nhập từ khóa hợp lệ
Hiển thị danh sách gợi ý danh mục theo từ khóa khách hàng đã nhập
Kiểm tra từ khóa gợi ý tìm kiếm nhập vào khung tìm kiếm của người dùng theo Sản phẩm
1 Người dùng truy cập vào hệ thống
2 Chọn chức năng tìm kiếm sản phẩm
3 Nhập từ khóa hợp lệ
Hiển thị danh sách gợi ý tên sản phẩm theo từ khóa khách hàng đã nhập
Không hiển thị sản phẩm gợi ý nào
Bảng 3.4: Testcase Quản lý giỏ hàng
ID Summary Implementation steps Test Data Expected Output Result Bugs
TC_01 Kiểm tra giao diện giỏ hàng
1 Người dùng truy cập vào hệ thống
2 Nhấn icon giỏ hàng góc phải trên màn hình
Hiển thị tất cả những sản phẩm được thêm vào giỏ hàng
TC_02 Kiểm tra giao diện thanh toán
1 Người dùng truy cập vào hệ thống
2 Nhấn icon giỏ hàng góc phải trên màn hình
Chuyển sang màn thanh toán gồm các trường thông tin như:
- Title “Địa chỉ nhận hàng”, các thông tin về địa chỉ
- Button thêm địa chỉ, button sửa, button xóa địa chỉ
- Lable “ Mã giảm giá”, “Nhập mã giảm giá của bạn nếu có”, Hiển thị placeholder
“ Nhập mã giảm giá(chỉ áp dụng 1 lần)”, button áp dụng
- Title “ Phương thức thanh toán”, radio button “thanh toán
- Checkbox “ Tôi đồng ý với các điều khoản và điều kiện”
Kiểm tra người dùng có thể đặt hàng được không
1 Người dùng truy cập vào hệ thống
2 Chọn bắt đầu mua sắm
3 Nhấn vào sản phẩm và thêm sản phẩm vào giỏ hàng
4 Đi đến giỏ hàng tiến hành thanh toán
5 Tích chọn đầy đủ thông tin và tiến hành đặt hàng
3 Áo Khoác Nhung Tăm Túi Hộp Bé Trai
- Lovekids Đặt hàng thành công PASS
Kiểm tra người dùng có thể đặt hàng được không khi tích thiếu trường checkbox
“Đồng ý với điều khoản cửa hàng”
1 Người dùng truy cập vào hệ thống
2 Chọn bắt đầu mua sắm
3 Nhấn vào sản phẩm và thêm sản phẩm vào giỏ hàng
4 Đi đến giỏ hàng tiến hành thanh toán
5 Tích thiếu trường và tiến hành đặt hàng
3 Áo Khoác Nhung Tăm Túi Hộp Bé Trai
Không hiển thị button chọn đặt hàng PASS
Kiểm tra ngời dùng có thể tăng số lượng sản phẩm trong giỏ hàng được không
1 Người dùng truy cập vào hệ thống
3 Chọn sản phẩm cần thao tác
3 Áo Khoác Nhung Tăm Túi Hộp Bé Trai
Số lượng tăng thêm 1 PASS
Kiểm tra người dùng có thể giảm số lượng sản phẩm trong giỏ hàng được không
1 Người dùng truy cập vào hệ thống
3 Chọn sản phẩm cần thao tác
3 Áo Khoác Nhung Tăm Túi Hộp Bé Trai
Số lượng giảm đi 1 PASS
Kiểm tra người dùng có thể xóa sản phẩm trong giỏ hàng được không
1 Người dùng truy cập vào hệ thống
3 Chọn sản phẩm cần thao tác
3 Áo Khoác Nhung Tăm Túi Hộp Bé Trai
Sản phẩm cần xóa không còn trong giỏ hàng
Bảng 3.5: Testcase Quản lý sản phẩm
ID Summary Implementation steps Test Data Expected Output Result Bugs
TC_01 Kiểm tra giao diện danh sách sản phẩm
1 Quản lý truy cập vào hệ thống
2 Chọn quản lý sản phẩm, danh sách sản phẩm
Hiển thị danh sách tất cả sản phẩm gồm các trường:
- Mã sản phẩm, sản phẩm, danh mục , thương hiệu, số lượng, trạng thái, thao tác Ẩn/ Hiện, Sửa, Xóa
TC_02 Kiểm tra giao diện thêm sản phẩm
1 Quản lý truy cập vào hệ thống
2 Chọn quản lý sản phẩm, thêm sản phẩm
Hiển thị giao diện thêm sản phẩm gồm các trường:
- Lable “ Thêm sản phẩm”, “ Vui lòng nhập tên”
- Lable “ Danh mục”, select “ Chọn danh mục sản phẩm”
- Lable “ Thương hiệu”, select “ Chọn thương hiệu”
- Lable “ Vui lòng nhập giá”, “ Vui lòng nhập số lượng”
- Button thêm sản phẩm, button trở về
Kiểm tra quản lý có thể thêm được sản phẩm không với các trường đã nhập hợp lệ
1 Quản lý đăng nhập vào hệ thống
2 Chọn quản lý sản phẩm, thêm sản phẩm
3 Nhập các trường hợp lệ
Hiển thị thông báo thêm sản phẩm thành công, sản phẩm được lưu vào CSDL và hiển thị ra trang giao diện khách hàng
Kiểm tra quản lý có thể thêm được sản phẩm không với các trường đã nhập không hợp lệ
1.Quản lý đăng nhập vào hệ thống
2 Chọn quản lý sản phẩm, thêm sản phẩm
3 Để trống 1 trường bất kỳ
Không thể nhất nút thêm sản phẩm PASS
TC_05 Kiểm tra quản lý có thể ẩn sản phẩm không
1 Quản lý đăng nhập vào hệ thống
2 Chọn quản lý sản phẩm, danh sách sản phẩm
3 Chọn hoặc ấn tìm kiếm sản phẩm cần ẩn
3 Áo Vest cho bé trai ILABY chất liệu nhung tăm Ẩn thành công và sản phẩm không còn xuất hiện ở trang giao diện khách hàng
Kiểm tra quản lý có thể hiện sản phẩm không
1 Quản lý đăng nhập vào hệ thống
2 Chọn quản lý sản phẩm, danh sách sản phẩm
3 Chọn hoặc ấn tìm kiếm sản phẩm cần hiện
3 Áo Vest cho bé trai ILABY chất liệu nhung tăm
Hiện thành công và sản phẩm đã xuất hiện ở trang giao diện khách hàng
Kiểm tra quản lý có thể sửa được sản phẩm không với các trường đã nhập hợp lệ
1 Quản lý đăng nhập vào hệ thống
2 Chọn quản lý lý sản phẩm, danh sách sản phẩm
3 Chọn hoặc ấn tìm kiếm sản phẩm cần sửa
4 Nhập các trường hợp lệ
3 Áo Vest cho bé trai ILABY chất liệu nhung tăm
Sửa sản phẩm thành công và lưu vào CSDL PASS
Kiểm tra quản lý có thể sửa được sản phẩm không với các trường đã nhập không hợp lệ
1 Quản lý đăng nhập vào hệ thống
2 Chọn quản lý lý sản phẩm, danh sách sản phẩm
3 Chọn hoặc ấn tìm kiếm sản phẩm cần sửa
4 Bỏ trống 1 trường bất kỳ
3 Áo Vest cho bé trai ILABY chất liệu nhung tăm
Không thể nhấn nút sửa sản phẩm PASS
Kiểm tra quản lý có thể xóa sản phẩm không
1 Quản lý đăng nhập vào hệ thống
2 Chọn quản lý sản phẩm, danh sách sản phẩm
3 Chọn hoặc ấn tìm kiếm sản phẩm cần xóaKiểm tra quản lý có thể xóa sản phẩm không
3 Áo Vest cho bé trai ILABY chất liệu nhung tăm
Xóa thành công, sản phẩm bị xóa khỏi CSDL PASS