TỔNG QUAN VỀ VỊ TRÍ THỰC TẬP VÀ ĐƠN VỊ THỰC TẬP
Giơ ́ i thiê ̣u tổng quát về doanh nghiê ̣p thực tâ ̣p
Công ty TNHH Giải pháp Phần mềm Tường Minh Bình Định (TMA Solutions Bình Định), thành lập năm 1997, là một trong những tập đoàn công nghệ hàng đầu tại Việt Nam với đội ngũ 4000 kỹ sư TMA phục vụ khách hàng từ 30 quốc gia, bao gồm nhiều tập đoàn công nghệ cao hàng đầu thế giới Hiện tại, công ty có 7 chi nhánh tại Việt Nam (6 tại Tp.HCM và 1 tại Tp Quy Nhơn) và 6 chi nhánh quốc tế tại Mỹ, Úc, Canada, Đức, Nhật Bản và Singapore.
Tháng 6 năm 2018, TMA đã mở chi nhánh tại Bình Định Sau 4 năm, TMA Bình Định đã phát triển nhanh chóng với hơn 400 kỹ sư, trong đó có nhiều kỹ sư đang làm việc tại TP.HCM đã trở về làm việc tại quê hương
Tháng 8 năm 2018, TMA đã khởi công xây dựng Công viên Sáng tạo TMA Bình Định (TMA Innovation Park – TIP) trên 10 hecta tại Thung lũng Sáng tạo Quy Nhơn (Quy Nhon Innovation Park – QNIVY) với vốn đầu tư hàng trăm tỷ đồng
Công viên Sáng tạo TMA, trung tâm phần mềm đầu tiên tại Thung lũng Sáng tạo Quy Nhơn, hướng tới mục tiêu trở thành trung tâm phát triển phần mềm và công nghệ cao hàng đầu miền Trung Nơi đây đóng góp quan trọng vào việc biến Thung lũng Sáng tạo Quy Nhơn thành điểm đến công nghệ 4.0 tại Việt Nam Với diện tích sử dụng hơn 15,000m2, Công viên Sáng tạo TMA bao gồm nhiều cơ sở như Trung tâm Phát triển Phần Mềm, Xưởng Phần mềm, Trung tâm R&D, Trung tâm Khoa học Dữ liệu và Học viện Công Nghệ.
Công viên Sáng tạo TMA, với hơn 3000 kỹ sư và môi trường làm việc hiện đại đạt tiêu chuẩn quốc tế, không chỉ thu hút sinh viên miền Trung mà còn là nơi hội tụ nhân tài từ khắp nơi Thông qua mối quan hệ hợp tác chiến lược với các Đại học lớn tại miền Trung – Tây Nguyên như ĐH Quy Nhơn, ĐH Tây Nguyên, ĐH Phú Yên và ĐH Phạm Văn Đồng, TMA thúc đẩy sự phát triển công nghệ cao, khoa học kỹ thuật, giáo dục và kinh tế xã hội tại Bình Định và các tỉnh lân cận.
TMA là doanh nghiệp CNTT với 25 năm kinh nghiệm, phục vụ nhiều khách hàng hàng đầu toàn cầu Chúng tôi tự hào đạt được các tiêu chuẩn quốc tế cao như CMMI-L5, TL 9000, ISO 9001:2000 và ISO 27001:2013.
Hình 1.1.1 TMA Solutions Bình Định
TMA chuyên cung cấp các dịch vụ:
TMA cung cấp giải pháp cho nhiều lĩnh vực:
Hình 1.2 Sơ đồ cơ cấu tổ chức của công ty
- Board of Advisors: Cố vấn cho công ty
- CEO: Giám đốc điều hành của công ty
- Student Development Center (SDC): Có nhiệm vụ liên kết với sinh viên, nhận sinh viên thực tập tại công ty nhằm thu hút và bồi dưỡng nhân tài
- Delivery Centers: Trung tâm chuyển giao sản phẩm cho khách hàng
TMA Mobile Solutions (TMS) chuyên phát triển ứng dụng di động và thử nghiệm, cung cấp dịch vụ điện thoại di động và các giải pháp giá trị gia tăng cho các nhà khai thác di động Công ty cũng tạo ra các ứng dụng phục vụ cho nội dung và doanh nghiệp, đáp ứng nhu cầu ngày càng cao của thị trường di động.
- ICT R&D Center (iRDC - Information and Communications Technology Research & Development Center): Trung tâm nghiên cứu và phát triển công nghệ thông tin và truyền thông
- TMA Training Center (TTC): Trung tâm đào tạo nhân lực
Phát triển kinh doanh là việc củng cố mối quan hệ với khách hàng hiện tại và mở rộng kết nối với khách hàng mới Đặc biệt, bộ phận IT của TMA Solutions đảm nhận nhiều nhiệm vụ đa dạng liên quan đến lập trình và cung cấp giải pháp phần mềm hiệu quả.
- Back-end & Front-end Developer
- Business Analyst (BA) - Chuyên viên phân tích nghiệp vụ
- Product Owner - Product Manager - Project Manager
- Development (Dev) và Operations (Ops) - DevOps
Tại TMA, môi trường làm việc không chỉ được đánh giá qua cơ sở vật chất mà còn nhờ vào các chính sách hỗ trợ tài chính và chăm sóc sức khỏe cho nhân viên và gia đình Chương trình bảo hiểm sức khỏe toàn diện, chính sách cho vay tiền không lãi suất, và hỗ trợ tài chính khẩn cấp cho những trường hợp khó khăn hoặc mắc bệnh hiểm nghèo là những ví dụ tiêu biểu cho cam kết của TMA đối với phúc lợi nhân viên.
TMA luôn linh hoạt trong việc điều chỉnh thu nhập và khen thưởng cho các cá nhân xuất sắc, đồng thời đảm bảo các phúc lợi đi kèm được duy trì đầy đủ.
- Cung cấp cho nhân viên đầy đủ các gói BHYT, BHXH,
Chương trình Bảo hiểm chăm sóc sức khỏe toàn diện cung cấp mức bảo hiểm cao, giúp nhân viên dễ dàng tiếp cận khám chữa bệnh và sử dụng dịch vụ y tế tại các bệnh viện uy tín.
- Chính sách cho vay tiền không lãi suất, không thế chấp để chia sẻ với nhân viên nỗi lo về tài chính
Quỹ từ thiện “Khát vọng TMA” đã được thành lập với số vốn ban đầu 1 tỷ đồng, nhằm kịp thời hỗ trợ tài chính cho các nhân viên và những người có hoàn cảnh khó khăn trên khắp cả nước.
- Quỹ Team building hỗ trợ các hoạt động ngoại khóa hàng năm cho sinh viên
- Quỹ khen thưởng hàng Quý (TMA Quarterly Star Performer) cho nhân viên xuất sắc lên đến 1 tỷ đồng/năm.
Tổng quan về vi ̣ tri ́ viê ̣c làm
1.2.1 Yêu cầu về kiến thức và kỹ năng cần có của Tester:
1.2.1.1 Yêu cầu về kiến thức:
Kiến thức về phát triển phần mềm rất quan trọng, bao gồm quy trình phát triển và các khái niệm cơ bản như yêu cầu, thiết kế, lập trình và triển khai Nắm vững kiến thức lập trình và công nghệ phần mềm sẽ giúp bạn hiểu rõ hơn về hoạt động của ứng dụng cũng như các thử nghiệm liên quan.
Kiến thức về kiểm thử phần mềm bao gồm các nguyên tắc, phương pháp và quy trình cần thiết để đảm bảo chất lượng sản phẩm Điều này bao gồm các khái niệm như kiểm thử đơn vị, kiểm thử tích hợp, kiểm thử hệ thống, kiểm thử chấp nhận và kiểm thử tự động Ngoài ra, cần nắm vững kiểm thử chức năng và phi chức năng, cũng như các yếu tố liên quan đến giao diện người dùng, hiệu năng, bảo mật và khả năng mở rộng của phần mềm.
Để thực hiện kiểm thử tự động hiệu quả, bạn cần có kiến thức cơ bản về các ngôn ngữ lập trình như Java, C#, Python hoặc JavaScript Sự hiểu biết này giúp bạn nắm vững cấu trúc mã nguồn và áp dụng các framework và thư viện phù hợp cho quy trình kiểm thử.
Hiểu biết về các công cụ kiểm thử phần mềm là rất quan trọng, bao gồm những công cụ phổ biến như Selenium, Appium, JUnit, TestNG và Cucumber Việc nắm vững cách sử dụng các công cụ này giúp bạn triển khai và thực hiện các kịch bản kiểm thử hiệu quả, từ đó nâng cao chất lượng phần mềm.
Quản lý bug là một quy trình quan trọng trong phát triển phần mềm, bao gồm việc ghi lại, theo dõi và báo cáo các lỗi Để hiệu quả, cần phân loại và ưu tiên các lỗi, đồng thời tương tác chặt chẽ với các thành viên trong nhóm để nhanh chóng giải quyết các vấn đề phát hiện.
Kiến thức về các phương pháp kiểm thử và kỹ thuật là rất quan trọng trong lĩnh vực kiểm thử phần mềm Các phương pháp kiểm thử bao gồm kiểm thử hộp đen, kiểm thử hộp trắng, kiểm thử chức năng, kiểm thử phi chức năng và kiểm thử hiệu năng Bên cạnh đó, các kỹ thuật kiểm thử như kiểm thử mô hình xác định, kiểm thử tạo lập, kiểm thử dựa trên rủi ro và kiểm thử kiểu dữ liệu cũng cần được nắm vững để đảm bảo chất lượng sản phẩm phần mềm.
1.2.1.2 Yêu cầu về kỹ năng:
Kỹ năng phân tích logic là yếu tố quan trọng trong công việc của tester, giúp họ đánh giá và nhận định các lỗi có thể xảy ra khi thử nghiệm phần mềm Trong quá trình kiểm thử thủ công (Manual testing), tester cần phải phân tích một cách chi tiết để phát hiện những sai sót nhỏ nhất trong giai đoạn Defect.
Management (quản lý lỗi, sự cố) Nếu thiếu khả năng phân tích logic sẽ rất mất thời gian để thực hiện giai đoạn này
Kỹ năng phân tích và ghi nhận lỗi là khả năng quan trọng trong quá trình kiểm thử, cho phép người kiểm thử phát hiện và phân tích các lỗi cũng như vấn đề phát sinh Điều này bao gồm việc xác định nguyên nhân gốc rễ của các lỗi và ghi lại chúng một cách chi tiết, giúp cải thiện chất lượng sản phẩm.
8 cách tái tạo lỗi và cung cấp thông tin cần thiết để giúp nhóm phát triển khắc phục các vấn đề
Kỹ năng sử dụng công cụ kiểm thử phần mềm là rất quan trọng, bao gồm việc thành thạo các công cụ kiểm thử và kiểm thử tự động Người kiểm thử cần biết cách cấu hình và triển khai các bộ kiểm thử, quản lý các kịch bản kiểm thử hiệu quả, cũng như phân tích kết quả kiểm thử để đảm bảo chất lượng phần mềm.
Kỹ năng ghi nhận và báo cáo là rất quan trọng, bao gồm khả năng ghi lại kết quả kiểm thử và tạo báo cáo chi tiết về các lỗi và vấn đề phát hiện Người thực hiện cần biết mô tả các bước tái tạo lỗi, đính kèm thông tin cần thiết và đánh giá mức độ ưu tiên của từng lỗi.
Kỹ năng học hỏi là yếu tố quan trọng trong môi trường làm việc chuyên nghiệp; việc chủ động nâng cao kiến thức chuyên môn, học hỏi từ những người có kinh nghiệm, và nắm vững quy trình cũng như công cụ testing sẽ giúp tester phát triển nhanh chóng và mở rộng cơ hội thăng tiến trong tương lai.
Kỹ năng giao tiếp là rất quan trọng trong việc diễn giải các lỗi hệ thống để cả khách hàng và lập trình viên đều có thể hiểu Trình bày thông tin một cách rõ ràng và dễ hiểu không chỉ tiết kiệm thời gian mà còn giảm bớt công sức cần thiết để tìm ra phương án khắc phục.
Kỹ năng làm việc nhóm là yếu tố quan trọng trong môi trường dự án, bao gồm khả năng giao tiếp hiệu quả và cộng tác với các thành viên Để trở thành tester, việc phát hiện và cải thiện lỗi không thể thực hiện đơn lẻ mà cần sự phối hợp chặt chẽ giữa các bộ phận Quan trọng là biết lắng nghe, đặt câu hỏi và trao đổi thông tin một cách rõ ràng để đạt được sự đồng thuận trong nhóm.
Kỹ năng viết testcase là yếu tố quan trọng trong quy trình kiểm thử phần mềm, giúp tester tạo ra các testcase phù hợp với yêu cầu cụ thể của khách hàng Việc viết testcase rõ ràng và chính xác không chỉ đảm bảo chất lượng sản phẩm mà còn phản ánh hiệu suất làm việc của đội ngũ tester.
Tinh thần cầu tiến là yếu tố quan trọng trong lĩnh vực kiểm thử phần mềm Điều này bao gồm việc sẵn lòng học hỏi, nắm bắt công nghệ mới và cải thiện kỹ năng cá nhân Tham gia vào các hoạt động đào tạo và phát triển cá nhân sẽ giúp nâng cao trình độ và hiệu suất của bạn trong vai trò Intern Tester.
1.2.2 Mô tả công việc của Tester: a Nghiên cứu, phân tích những yêu cầu liên quan đến kỹ thuật:
CƠ SỞ LÝ THUYẾT
Tổng quan về kiểm thử phần mềm
2.1.1 Khái niệm kiểm thử phần mềm:
Kiểm thử phần mềm là quá trình thực hiện chương trình hoặc ứng dụng nhằm phát hiện lỗi và đảm bảo rằng sản phẩm đáp ứng yêu cầu của khách hàng, từ đó đánh giá chất lượng sản phẩm.
2.1.2 Tầm quan trọng của kiểm thử phần mềm: Để chỉ ra các khiếm khuyết và lỗi đã được thực hiện trong các giai đoạn phát triển:
- Nó đảm bảo rằng khách hàng thấy tổ chức đáng tin cậy và sự hài lòng của họ trong ứng dụng được duy trì
- Để đảm bảo chất lượng của sản phẩm
- Kiểm thử là cần thiết để ứng dụng hoặc sản phẩm phần mềm hoạt động hiệu quả
Để tránh những lỗi tốn kém trong tương lai hoặc trong các giai đoạn phát triển tiếp theo, việc đảm bảo ứng dụng hoạt động ổn định là rất quan trọng.
2.1.3 Mục tiêu của kiểm thử phần mềm:
Mục đích của kiểm thử phần mềm là:
- Đảm bảo chất lượng sản phẩm
- Phòng ngừa và phát hiện lỗi
- Sẵn sàng tích hợp và sửa đổi
- Mang đến cho khách hàng sản phẩm phần mềm chất lượng
- Có được sự tin tưởng của khách hàng và đảm bảo uy tín
- Giảm chi phí bảo trì và cải tiến quy trình
2.1.4 Bảy nguyên tắc trong kiểm thử phần mềm:
- Kiểm thử cho thấy sự hiện diện của lỗi
- Kiểm thử toàn diện là không thể
- Kiểm thử càng sớm càng tốt
- Nghịch lý thuốc trừ sâu
- Kiểm thử phụ thuộc vào ngữ cảnh
- Ngụy biện không có lỗi
2.1.5 Vòng đời kiểm thử phần mềm:
STLC (Software Testing Life Cycle) là một quy trình kiểm thử phần mềm được thực hiện một cách có hệ thống và có kế hoạch Mỗi hoạt động trong quy trình STLC được thực hiện với sự chuẩn bị kỹ lưỡng, đảm bảo rằng mỗi giai đoạn đạt được những mục tiêu cụ thể Mặc dù các tổ chức có thể có những giai đoạn khác nhau trong quy trình này, nhưng các nguyên tắc cơ bản vẫn giữ nguyên.
Vòng đời kiểm thử phần mềm gồm 6 giai đoạn:
- Lên kế hoạch kiểm thử
- Thiết lập môi trường kiểm thử
- Đóng quy trình kiểm thử
2.1.6 Phân biệt Error, Fault, Failure:
- Error: Là hành động của con người tạo ra kết quả không chính xác dẫn đến lỗi
- Fault: Sự hiện diện của lỗi tại thời điểm thực thi phần mềm
- Failure: Trạng thái của phần mềm do lỗi
2.1.7 Phân biệt Verification và Validation:
- Verification: Là đọc tài liệu đặc tả để kiểm thử phần mềm, xác nhận rằng sản phẩm khớp với yêu cầu của khách hàng
- Validation: Là xác thực lại thực sự người dùng có hài lòng với kết quả làm ra hay không
2.1.8 Sự khác nhau giữa QA & QC:
Quality Assurance (QA) là một chuỗi nhiệm vụ nhằm ngăn ngừa lỗi và đảm bảo rằng các kỹ thuật, phương pháp, cách tiếp cận và quy trình được thiết kế cho ứng dụng cụ thể được triển khai chính xác Việc thực hiện QA không chỉ giúp nâng cao chất lượng sản phẩm mà còn tối ưu hóa hiệu suất và sự hài lòng của người dùng.
Kiểm soát chất lượng (QC) là một chuỗi các nhiệm vụ nhằm đảm bảo chất lượng phần mềm bằng cách phát hiện và khắc phục lỗi trong quá trình phát triển Quy trình này mang tính phản ứng, với mục tiêu chính là sửa tất cả các lỗi trước khi phần mềm được phát hành.
Vòng đời phát triển phần mềm
2.2.1 Khái niệm vòng đời phát triển phần mềm:
Vòng đời phát triển phần mềm (SDLC) là quy trình thiết yếu trong việc thiết kế, phát triển và kiểm tra phần mềm chất lượng cao Mục tiêu của SDLC là đáp ứng hoặc vượt qua mong đợi của khách hàng, đồng thời đảm bảo hoàn thành dự án đúng thời gian và trong phạm vi ngân sách đã ước tính.
Hình 2.1 Vòng đời phát triển phần mềm
2.2.2 Một số mô hình SDLC cơ bản: a Mô hình thác nước:
Mô hình SDLC đầu tiên được áp dụng rộng rãi trong Công nghệ phần mềm nhằm đảm bảo thành công cho dự án là mô hình thác nước Mô hình này chia toàn bộ quá trình phát triển phần mềm thành các giai đoạn riêng biệt, trong đó kết quả của mỗi giai đoạn sẽ là đầu vào cho giai đoạn tiếp theo một cách tuần tự.
Mô hình SDLC này thực hiện các quy trình theo cách tuần tự theo hình chữ V, được gọi là mô hình Xác minh và Xác thực Mỗi giai đoạn trong chu kỳ phát triển đều có một giai đoạn thử nghiệm tương ứng, đảm bảo tính chính xác và hiệu quả trong quá trình phát triển phần mềm.
16 Đây là một mô hình có tính kỷ luật cao và giai đoạn tiếp theo chỉ bắt đầu sau khi hoàn thành giai đoạn trưng c Mô hình Agile:
Mô hình SDLC là phương pháp phát triển phần mềm dựa trên quy trình lặp đi lặp lại Các phương pháp linh hoạt chia nhỏ nhiệm vụ thành các bước lặp nhỏ, không tập trung vào lập kế hoạch dài hạn Phạm vi và yêu cầu của dự án được xác định ngay từ đầu, với các kế hoạch chi tiết về số lần lặp, thời gian và phạm vi của mỗi lần lặp được thiết lập rõ ràng.
Scrum là một trong những khung quy trình phổ biến nhất cho phương pháp Agile, thường được sử dụng để quản lý phát triển sản phẩm và phần mềm phức tạp Mô hình này giúp giải quyết các vấn đề thích nghi phức tạp, đồng thời tối ưu hóa giá trị sản phẩm một cách hiệu quả và sáng tạo Trong khung làm việc Scrum, có sự tham gia của đội ngũ Scrum cùng với các vai trò, sự kiện và nguyên tắc liên quan.
Kanban, lấy cảm hứng từ Hệ thống sản xuất Toyota và Sản xuất tinh gọn, đã được Toyota cải tiến vào những năm 1940 bằng cách mô hình hóa quy trình kỹ thuật qua các bảng công việc Các bảng này được chia thành nhiều cột, mỗi cột đại diện cho một giai đoạn trong quy trình, với các công việc cần làm di chuyển tùy thuộc vào trạng thái của chúng Phương pháp Kanban giúp doanh nghiệp phân tích và xử lý dữ liệu một cách rõ ràng, từ đó gia tăng năng suất và hiệu quả làm việc, cải thiện hình ảnh và lợi thế cạnh tranh so với các đối thủ khác.
Loại kiểm thử và phương pháp kiểm thử
Kiểm thử thủ công là quy trình kiểm thử phần mềm trong đó các trường hợp kiểm thử được thực hiện hoàn toàn bằng tay, không sử dụng công cụ tự động Quy trình này được thực hiện bởi tester từ góc nhìn của người dùng cuối, nhằm đảm bảo ứng dụng hoạt động đúng như mong đợi và tuân thủ tài liệu đặc tả Đây là một trong những phương pháp kiểm thử cơ bản nhất, giúp phát hiện cả lỗi hiển thị và lỗi ẩn trong phần mềm.
Trong kiểm thử tự động, người kiểm thử cần xây dựng các kịch bản kiểm thử và sử dụng công cụ hỗ trợ để thực hiện Phương pháp này giúp nâng cao hiệu quả kiểm thử và tiết kiệm thời gian Kiểm thử tự động lý tưởng cho việc thực hiện các kịch bản kiểm thử lặp đi lặp lại và các nhiệm vụ kiểm thử khó khăn khác.
2.3.3 Kỹ thuật kiểm thử tĩnh:
Kỹ thuật kiểm thử tĩnh là phương pháp kiểm thử phần mềm nhằm phát hiện lỗi trong ứng dụng mà không cần chạy mã Việc áp dụng kỹ thuật này trong giai đoạn phát triển ban đầu giúp phát hiện và xử lý lỗi dễ dàng hơn.
2.3.4 Kỹ thuật kiểm thử động:
Kỹ thuật kiểm thử động là một yếu tố quan trọng trong kiểm thử phần mềm, giúp phân tích hành vi động của mã nguồn Phương pháp này hoạt động bằng cách cung cấp các giá trị đầu vào cho phần mềm và kiểm tra xem đầu ra có đúng như mong đợi hay không.
Kỹ thuật kiểm thử tĩnh bao gồm hai loại chính: Kiểm thử hộp trắng và Kiểm thử hộp đen Việc thực hiện các trường hợp thử nghiệm cụ thể có thể được thực hiện thủ công hoặc thông qua quy trình tự động hóa, giúp đánh giá hiệu quả và chất lượng phần mềm.
2.3.5 Phương pháp kiểm thử: a Kiểm thử hộp đen:
Kiểm thử hộp đen là phương pháp kiểm thử phần mềm tập trung vào việc đánh giá chức năng và yêu cầu của phần mềm mà không cần truy cập vào mã nguồn hay cấu trúc nội bộ Phương pháp này chủ yếu dựa vào các đặc điểm kỹ thuật và yêu cầu được khách hàng cung cấp.
Kiểm thử hộp trắng là phương pháp kiểm thử phần mềm dựa trên cấu trúc và mã nguồn của ứng dụng Với quyền truy cập vào mã nguồn, tester có thể thiết kế các test case để đánh giá tính logic và cấu trúc của chương trình Phương pháp này giúp xác định lỗi lập trình, phát hiện các đoạn code không được thực thi, và đảm bảo rằng tất cả các nhánh và điều kiện trong code đều được kiểm tra đầy đủ.
Các cấp độ kiểm thử
Kiểm thử đơn vị là một phương pháp kiểm thử phần mềm, trong đó các thành phần riêng lẻ như hàm, lớp và phương thức được kiểm tra kỹ lưỡng Hoạt động này diễn ra trong giai đoạn phát triển ứng dụng, cụ thể là khi viết mã Những lỗi phát sinh trong giai đoạn này thường được sửa chữa ngay lập tức mà không cần phải lưu trữ hay quản lý như ở các cấp độ kiểm thử khác.
Kiểm thử tích hợp là quá trình kiểm tra các module phần mềm hoặc chức năng riêng lẻ khi chúng được kết hợp lại với nhau Mỗi dự án phần mềm thường bao gồm nhiều module do nhiều lập trình viên khác nhau phát triển, do đó, kiểm thử tích hợp chú trọng vào việc kiểm tra sự truyền dữ liệu giữa các module Mục tiêu chính là phát hiện lỗi tương tác giữa các đơn vị (Unit), tập trung vào các giao diện và thông tin trao đổi giữa chúng, đồng thời tích hợp các Unit riêng lẻ thành các hệ thống nhỏ hơn.
Kiểm tra theo phương pháp top down diễn ra theo luồng điều khiển của hệ thống, bắt đầu từ các đơn vị cao nhất và tiến dần xuống các cấp đơn vị thấp hơn, thực hiện kiểm tra từng bước một.
Phương pháp Bottom Up là cách tiếp cận ngược lại với Top Down, trong đó các đơn vị cấp thấp được kiểm tra trước, sau đó mới đến các cấp đơn vị cao hơn.
Phương pháp Hybrid/Sandwich kết hợp hai phương pháp Top Down và Bottom Up, trong đó các module cao cấp được kiểm tra song song với các module thấp cấp Đồng thời, các module thấp cấp cũng được tích hợp và kiểm thử với các module cao cấp, đảm bảo tính toàn vẹn và hiệu suất của hệ thống.
Kiểm thử hệ thống là quá trình kiểm tra một hệ thống phần mềm tích hợp hoàn chỉnh, bao gồm phần mềm và phần cứng tương tác với nhau Mục tiêu của kiểm thử hệ thống là đảm bảo toàn bộ hoạt động của hệ thống máy tính phần mềm được thực hiện đúng theo yêu cầu Quá trình này bao gồm nhiều loại kiểm thử khác nhau nhằm đánh giá hiệu suất và tính khả dụng của hệ thống.
Kiểm thử chấp nhận là giai đoạn kiểm thử chính thức dựa trên yêu cầu của người dùng và chức năng của phần mềm Mục tiêu của kiểm thử này là xác định xem phần mềm có đáp ứng đầy đủ các yêu cầu đã được chỉ định và nhu cầu của người dùng hay không Đây là cấp độ cuối cùng trong quy trình kiểm thử phần mềm.
Trong kiểm thử chấp nhận lại chia ra làm 2 loại:
Kiểm thử Alpha là giai đoạn kiểm tra phần mềm do các thành viên trong tổ chức phát triển thực hiện, thường là những người trong bộ phận quản lý sản phẩm nhưng không tham gia trực tiếp vào dự án Quá trình này diễn ra tại nơi sản xuất phần mềm và được coi là một hình thức kiểm thử nội bộ, nhằm phát hiện lỗi trước khi phần mềm được chuyển sang giai đoạn kiểm thử Beta.
Thử nghiệm Beta là giai đoạn kiểm tra phần mềm được thực hiện bởi nhóm người dùng cuối trước khi phát hành chính thức Mục tiêu chính của thử nghiệm này là thu thập phản hồi từ người dùng và phát hiện các vấn đề cần khắc phục, đảm bảo phần mềm hoạt động hiệu quả khi ra mắt.
Kỹ thuật thiết kế test case
Nhóm kỹ thuật kiểm thử dựa trên đặc tả chỉ tập trung vào việc kiểm tra các yếu tố bên ngoài của hạng mục, bao gồm các đặc điểm kỹ thuật, thiết kế và cách vận hành Phương pháp này cho phép tester đánh giá chất lượng bên ngoài mà không làm ảnh hưởng đến cấu trúc nội tại của phần mềm Một trong những kỹ thuật trong nhóm này là phân vùng tương đương (equivalence partitioning).
Kỹ thuật phân vùng tương đương (Equivalence Partitioning) giúp phân loại các đầu vào thành các phân vùng dựa trên logic cụ thể Tester sẽ chọn một đầu vào từ mỗi phân vùng để thiết kế và thực hiện test case Nếu đầu vào đó hợp lệ hoặc không hợp lệ, toàn bộ phân vùng sẽ được coi là hợp lệ hoặc không hợp lệ Bên cạnh đó, phân tích giá trị biên (Boundary Value Analysis) cũng là một phương pháp quan trọng trong kiểm thử phần mềm.
Boundary value analysis is utilized to identify errors at boundary values Test cases are designed based on the boundary values derived from equivalence partitioning If the input is within the boundary value, the test case is considered positive testing; conversely, if the input falls outside the boundary value, it is classified as negative testing Additionally, decision table testing is another method used in this context.
Bảng quyết định là một kỹ thuật kiểm thử quan trọng, giúp tester đánh giá đầu ra khi kết hợp các đầu vào khác nhau Kỹ thuật này trình bày rõ ràng các điều kiện đầu vào cùng với các hành động hoặc đầu ra tương ứng, từ đó hỗ trợ xây dựng logic phần mềm một cách hiệu quả Kiểm thử chuyển đổi trạng thái cũng là một phương pháp đáng chú ý trong quy trình kiểm thử phần mềm.
Khi áp dụng kỹ thuật chuyển trạng thái, người kiểm thử cần phân tích phần mềm theo một trình tự cụ thể, tương ứng với thứ tự chuyển đổi trạng thái trong sơ đồ Kỹ thuật này chủ yếu được sử dụng để kiểm tra khả năng nhập, thoát và chuyển đổi trạng thái của phần mềm, từ đó đảm bảo tính chính xác và hiệu quả trong quá trình vận hành.
Kỹ thuật này dựa vào trường hợp sử dụng (use case), mô tả sự tương tác giữa phần mềm và các tác nhân như người dùng hoặc hệ thống khác Việc thiết kế test case dựa trên use case giúp kiểm tra các yêu cầu nghiệp vụ và chức năng một cách hiệu quả.
Nhóm kỹ thuật này phụ thuộc vào hiểu biết và năng lực của tester, với kiến thức và kinh nghiệm của họ là cơ sở để thiết kế test case Chất lượng của các test case sẽ hoàn toàn dựa vào kinh nghiệm của tester Nhóm kỹ thuật này được chia thành 4 loại, trong đó có kỹ thuật đoán lỗi (error guessing techniques).
Kỹ thuật đoán lỗi là một phương pháp phân tích rủi ro, trong đó người kiểm thử có kinh nghiệm sử dụng sự khôn ngoan và kinh nghiệm của mình để phát hiện các khu vực hoặc chức năng của phần mềm có khả năng chứa lỗi tiềm ẩn Tester sẽ phân loại từng khu vực theo mức độ rủi ro: thấp, trung bình và cao, từ đó chuẩn bị các trường hợp thử nghiệm nhằm xác định vị trí các lỗi này.
Trong kiểm thử thăm dò, người kiểm thử nghiên cứu và phân tích sản phẩm phần mềm, áp dụng kỹ năng và kinh nghiệm để phát triển chiến lược và trường hợp kiểm thử Phương pháp này đặc biệt hiệu quả khi thông số kỹ thuật và yêu cầu không đầy đủ, cùng với thời gian hạn chế Thử nghiệm dựa trên danh sách kiểm tra cũng là một phương pháp quan trọng trong quá trình này.
Trong kỹ thuật kiểm thử này, người kiểm thử có kinh nghiệm sử dụng kiến thức từ những lần kiểm thử trước để xây dựng một danh sách kiểm tra Danh sách này đóng vai trò như một hướng dẫn quan trọng, giúp định hướng quy trình kiểm thử một cách hiệu quả Nó được thiết kế ở mức cao và tuân thủ các tiêu chuẩn nhất định, luôn nhắc nhở người kiểm thử về các yếu tố cần chú ý trong quá trình thực hiện.
21 người kiểm tra sẽ xác định nội dung cần kiểm tra Danh sách kiểm tra do họ chuẩn bị không phải là cố định, mà có thể thay đổi linh hoạt để đáp ứng nhu cầu và yêu cầu phát sinh trong quá trình kiểm tra Thử nghiệm tấn công lỗi (Fault Attack testing) là một phần quan trọng trong quy trình này.
Thử nghiệm tấn công là một kỹ thuật kiểm tra, tương tự như thử nghiệm tiêu cực nhưng có sự khác biệt Kỹ thuật này xem xét tất cả các tính năng, chức năng và giao diện tương tác với các yếu tố bên ngoài như ứng dụng, hệ thống và các giao diện khác Mục tiêu chính của thử nghiệm tấn công là các giao diện bên ngoài, giao diện cơ sở dữ liệu, API và hệ điều hành, nhằm phát hiện các lỗ hổng bảo mật.
Report Bug
Báo cáo lỗi cung cấp thông tin quan trọng về sự cố trong phần mềm, bao gồm nguyên nhân, các bước tái hiện lỗi và môi trường phát sinh lỗi Những thông tin này giúp lập trình viên xác định và khắc phục sự cố một cách hiệu quả.
2.6.2 Các thành phần của một report bug:
- Bug title (tiêu đề lỗi):
- Bug description (mô tả lỗi)
- Severity (mức độ nghiêm trọng)
- Attachments/ Evidence (Tệp đính kèm/bằng chứng)
Hình 2.3 Vòng đời phát triển phần mềm
PHÂN TÍCH THIẾT KẾ
Tổng quan về website LUMA
LUMA là một giao diện mẫu cho Magento, không phải là cửa hàng thực tế, mà là một ví dụ có sẵn trong Magento Open Source và Magento Commerce Được thiết kế để hướng dẫn người dùng và nhà phát triển, LUMA sở hữu giao diện thân thiện, giúp người dùng dễ dàng tìm kiếm và chọn lựa sản phẩm Trang web cung cấp thông tin chi tiết về từng sản phẩm, bao gồm hình ảnh, mô tả, thông số kỹ thuật và giá cả.
Hình 3.1 Trang chủ website LUMA
3.1.2 Giới thiệu chức năng “So sánh sản phẩm”:
Tính năng "So sánh sản phẩm" cho phép người dùng lựa chọn và hiển thị nhiều sản phẩm hoặc công cụ phần mềm trong một bảng so sánh chi tiết Người dùng dễ dàng nhận diện các điểm tương đồng và khác biệt giữa các sản phẩm, đồng thời truy cập thông tin chi tiết về từng sản phẩm, bao gồm các tính năng chính, thông số kỹ thuật và giá cả.
Tính năng “So sánh sản phẩm” cung cấp công cụ hữu ích giúp khách hàng đưa ra quyết định mua sắm thông minh, tiết kiệm thời gian và công sức bằng cách tìm kiếm sản phẩm phù hợp nhất với nhu cầu và mong đợi của họ.
3.1.4 Use Case của website LUMA:
Tác nhân Ý nghĩa, nhiệm vụ của tác nhân
Tác nhân User trong vai trò khách hàng là những người truy cập vào cửa hàng trực tuyến và thực hiện mua sắm Tác nhân User có quyền:
- Quản lý thông tin cá nhân
- Thêm sản phẩm vào giỏ hàng
- Thêm sản phẩm vào mục yêu thích
- Cập nhật mục sản phẩm yêu thích
- Thêm sản phẩm vào mục so sánh
- Cập nhật mục so sánh sản phẩm
Bảng 3.1 Tác nhân của hệ thống
Trong phạm vi bài báo cáo này em sẽ tiến hành phân tích và thực hiện kiểm thử cho các use case sau:
- Use case “Đăng ký” cho actor User
- Use case “Thêm sản phẩm vào mục so sánh” cho actor User
- Use case “Cập nhật mục so sánh” cho actor User
⇨ Dưới đây là nội dung phân tích nghiệp vụ chi tiết cho từng use case đã hoàn thành kiểm thử.
Phân tích hệ thống
3.2.1 Phân tích use case “Đăng ký”:
3.2.1.1 Sơ đồ use case chi tiết cho chức năng “Đăng ký”
3.2.1.2 Đặc tả yêu cầu cho chức năng “Đăng ký”
- Điều kiện tiên quyết: Truy cập vào trang web và đang ở trạng thái chưa đăng ký tài khoản
Người dùng có thể dễ dàng tạo tài khoản mới trên trang web LUMA để tham gia vào các hoạt động mua sắm và khám phá nhiều tính năng hấp dẫn khác.
- Hậu điều kiện: Người dùng đã tạo thành công tài khoản và có thể đăng nhập để sử dụng các tính năng của trang web
- Mô tả chi tiết use case: Use case này bắt đầu khi người dùng muốn tạo một tài khoản mới trên trang web LUMA
Bước 1: Người dùng muốn tạo tài khoản mới, cần đăng nhập vào website LUMA qua link https://magento.softwaretestingboard.com/
Bước 2: Người dùng muốn đăng ký tài khoản để thực hiện các chức năng của user, thực hiện click vào button “Create an Account”
Bước 3: Hệ thống hiển thị màn hình “Create New Customer Account” Người dùng nhập các thông tin theo form và click vào button “Create an Account” để đăng ký
Step 4: Upon successful registration, the system will display the "My Account" screen with the message "Thank you for registering with Main Website Store." At this point, users can access all available user functions.
Bước 5: Kết thúc use case
- Luồng sự kiện phụ: Nếu thông tin người dùng cung cấp không hợp lệ trong bước 3:
+ Hệ thống hiển thị thông báo lỗi tương ứng với từng trường thông tin không hợp lệ
+ Người dùng cần sửa các trường thông tin không hợp lệ và nhấn nút "Create an Account" lại
3.2.2 Phân tích use case “Thêm sản phẩm vào mục so sánh”:
3.2.2.1 Sơ đồ use case chi tiết cho chức năng “Thêm sản phẩm vào mục so sánh”
3.2.2.2 Đặc tả yêu cầu cho chức năng “Thêm sản phẩm vào mục so sánh”
- Điều kiện tiên quyết: Đăng nhập vào website
Chức năng "Thêm sản phẩm vào mục so sánh" cho phép người dùng dễ dàng thêm sản phẩm vào danh sách so sánh, giúp họ so sánh giá cả, đánh giá và các thuộc tính của sản phẩm trên website một cách hiệu quả.
Người dùng có thể dễ dàng quản lý các sản phẩm đã thêm vào mục so sánh, cho phép họ xem danh sách sản phẩm hiện tại hoặc tiếp tục thêm những sản phẩm khác để đưa ra quyết định mua sắm tốt nhất.
- Mô tả chi tiết use case: Use case này bắt đầu khi người dùng muốn thêm sản phẩm vào danh sách so sánh
Bước 1: Người dùng muốn thêm sản phẩm mong muốn vào danh sách so sánh, cần đăng nhập vào website LUMA qua link https://magento.softwaretestingboard.com/
Người dùng cần tìm kiếm sản phẩm muốn so sánh và chọn sản phẩm từ trang chi tiết hoặc danh sách sản phẩm Sau đó, họ chỉ cần nhấn vào nút “ADD TO COMPARE” để thêm sản phẩm vào danh sách so sánh Nếu thao tác thành công, hệ thống sẽ hiển thị thông báo “You added product”.
(tên sản phẩm) to the comparison list.”
Nhập tên sản phẩm vào thanh tìm kiếm
Hệ thống hiển thị danh sách các sản phẩm
Trang chi tiết sản phẩm
Bước 3: Click vào title “comparison list” hoặc Compare Products để kiểm tra sản phẩm vừa được thêm vào
Bước 4: Kết thúc use case
- Luồng sự kiện phụ: Sản phẩm không tồn tại
Sau bước 2 của quy trình chính, hệ thống xác minh sự tồn tại của sản phẩm mà người dùng muốn thêm vào danh sách so sánh Nếu sản phẩm không có trong cơ sở dữ liệu hoặc không thể truy cập, hệ thống sẽ thông báo lỗi cho người dùng.
+ Thông báo lỗi cho người dùng rằng sản phẩm không tồn tại hoặc có lỗi kết nối
+ Người dùng được khuyến nghị quay lại danh sách sản phẩm và kiểm tra lại + Kết thúc luồng sự kiện phụ
3.2.3 Phân tích use case “Cập nhật mục so sánh sản phẩm”:
3.2.3.1 Sơ đồ use case tổng quát cho chức năng “Cập nhật mục so sánh sản phẩm”
3.2.3.2 Phân tích use case “Thêm sản phẩm vào giỏ hàng”
3.2.3.2.1 Sơ đồ use case chi tiết cho chức năng “Thêm sản phẩm vào giỏ hàng”
3.2.3.2.2 Đặc tả yêu cầu cho chức năng “Thêm sản phẩm vào giỏ hàng”
- Điều kiện tiên quyết: Đăng nhập vào website và đã thêm sản phẩm vào compare products
Use case "Thêm sản phẩm vào giỏ hàng" cho phép người dùng dễ dàng thêm sản phẩm từ danh sách so sánh vào giỏ hàng, giúp quá trình mua sắm trở nên thuận tiện hơn.
- Hậu điều kiện: Sản phẩm đã được thêm vào giỏ hàng của người dùng và có thể tiếp tục mua sắm hoặc tiến hành thanh toán
Use case này bắt đầu khi người dùng chọn một sản phẩm cụ thể từ danh sách so sánh và thêm vào giỏ hàng để tiếp tục quá trình mua sắm.
Bước 1: Người dùng muốn thêm sản phẩm mong muốn vào giỏ hàng từ Compare Products, cần đăng nhập vào website LUMA qua link https://magento.softwaretestingboard.com/
Tại trang chủ LUMA, người dùng có thể nhấn vào nút "So sánh sản phẩm" để truy cập vào trang so sánh, nơi họ có thể xem xét các thuộc tính chi tiết của sản phẩm trước khi quyết định thêm vào giỏ hàng.
Người dùng chọn sản phẩm từ danh sách so sánh và nhấn nút “Add to Cart” để thêm vào giỏ hàng Nếu thao tác thành công, sẽ có thông báo “You added (tên sản phẩm) to your shopping cart.” và số lượng sản phẩm trong giỏ hàng sẽ được cập nhật tự động.
Bước 4: Click vào title “shopping cart” hoặc biểu tượng giỏ hàng ở góc phải để kiểm tra sản phẩm vừa được thêm vào
Bước 5: Kết thúc use case
- Luồng sự kiện phụ: Lỗi thêm sản phẩm vào giỏ hàng
+ Sau bước 3 của luồng sự kiện chính trong use case "Thêm sản phẩm vào giỏ hàng", hệ thống thực hiện quá trình thêm sản phẩm vào giỏ hàng
+ Nếu trong quá trình thêm sản phẩm vào giỏ hàng xảy ra lỗi, hệ thống hiển thị thông báo lỗi cho người dùng
+ Người dùng được khuyến nghị thử lại việc thêm sản phẩm vào giỏ hàng sau một thời gian ngắn
+ Kết thúc luồng sự kiện phụ
3.2.3.3 Phân tích use case “Thêm sản phẩm vào mục yêu thích”
3.2.3.3.1 Sơ đồ use case chi tiết cho chức năng “Thêm sản phẩm vào mục yêu thích”
3.2.3.3.2 Đặc tả yêu cầu cho chức năng “Thêm sản phẩm vào mục yêu thích”
- Điều kiện tiên quyết: Đăng nhập vào website và đã thêm sản phẩm vào compare products
Chức năng "Thêm sản phẩm vào mục yêu thích" cho phép người dùng dễ dàng lưu trữ các sản phẩm từ danh sách so sánh vào Wish List, giúp việc theo dõi và mua sắm sau này trở nên thuận tiện hơn.
Sản phẩm đã được thêm vào danh sách yêu thích của người dùng, cho phép họ dễ dàng theo dõi và mua sắm sau này Người dùng có thể xem lại danh sách các sản phẩm yêu thích để tiếp tục quan tâm và thực hiện giao dịch khi cần.
Người dùng bắt đầu sử dụng tính năng lưu sản phẩm yêu thích sau khi đã truy cập vào danh sách sản phẩm đã so sánh Họ quyết định lưu trữ một sản phẩm cụ thể vào mục yêu thích để dễ dàng truy cập và theo dõi sau này.
Bước 1: Người dùng muốn thêm sản phẩm mong muốn vào Wish List từ Compare Products, cần đăng nhập vào website LUMA qua link https://magento.softwaretestingboard.com/
Trên trang chủ LUMA, người dùng có thể nhấn vào nút "So sánh sản phẩm" để truy cập vào trang so sánh, nơi họ có thể xem xét các thuộc tính chi tiết của sản phẩm trước khi thêm vào danh sách mong muốn.
Sau khi xem xét thông tin chi tiết, người dùng có thể thêm sản phẩm vào danh sách yêu thích bằng cách chọn sản phẩm từ danh sách so sánh và nhấn vào biểu tượng hình trái tim bên dưới Nếu thao tác thành công, hệ thống sẽ hiển thị thông báo “(Tên sản phẩm) has been added to your Wish List Click here to continue shopping.” và tự động chuyển đến danh sách sản phẩm yêu thích.
Bước 4: Kết thúc use case
- Lỗi thêm sản phẩm vào mục yêu thích
TRIỂN KHAI THỰC NGHIỆM
Dữ liệu kiểm thử
Muốn tiến hành kiểm thử sẽ phải đáp ứng những yêu cầu truy cập sau
- Truy cập vào Google sheet
+ Viết test case và thực thi kiểm thử
- Truy cập vào website: https://magento.softwaretestingboard.com/
Công cụ kiểm thử
Các công cụ sau đây được sử dụng trong dự án:
Tạo test case - Google Sheet
Thực thi kiểm thử Thủ công:
Quản lý test case - Google Sheet
Quản lý và theo dõi lỗi - Google Sheet
Tiêu chí thực hiện kiểm thử
- Passed: Nhập nội dung này nếu test case đã được thực hiện và kết quả đã kiểm thử đúng như kết quả mong đợi
- Failed: Nhập nội dung này nếu test case đã được thực hiện và kết quả đã kiểm thử không đúng như kết quả mong đợi.
Thiết kế test cases
Hiện nay, việc xây dựng một test case hoàn chỉnh phụ thuộc vào nhiều yếu tố, bao gồm công cụ sử dụng và mẫu test case Trong dự án mà tôi tham gia, chúng tôi đã áp dụng một mẫu test case cụ thể để đảm bảo tính hiệu quả và chính xác trong quá trình kiểm thử.
- STT: Số thứ tự của test case
- Test case: Trường hợp thử nghiệm
- Test Description: Mô tả trường hợp thử nghiệm
- Steps: Các bước của một test case
- Step Description: Mô tả các bước của một test case
- Expected Result: Kết quả mong đợi
- Actual Result: Kết quả thực tế
Nội dung chi tiết các test cases của chức năng “So sánh sản phẩm” được trình bày ở phần phụ lục
1 Đăng ký tài khoản Quỳnh 7
2 - Thêm sản phẩm vào mục so sánh
- Thêm sản phẩm vào giỏ hàng
- Thêm sản phẩm vào mục yêu thích
- In danh sách so sánh sản phẩm
- Xóa sản phẩm khỏi mục so sánh
Bảng 4.2 Thiết kế test case
Kết quả kiểm thử
Kết quả kiểm thử được thể hiện ở bảng 4.3
STT Test cases Actual result
1 Verify the user cannot create a new account if the password condition is passed
2 Verify user cannot create new account if using registered email account
3 Verify the user cannot create a new account if any fields are missing
4 Verify a user can create an account using capital letters Passed
5 Verify users can create accounts with alphanumeric characters
6 Verify users can create accounts with special characters Passed
7 Verify users can create accounts with lowercase characters Passed
8 Verify the user who can create an account new Passed
9 Verify User Can't Login if any fields are missing Passed
10 When user login account, verify user can add products to the comparison list
11 When user login account, verify user can search and add products to the comparison list
12 When user login account, verify user can select multiple products to compare
13 When user login account, verify user can see the product comparison list
14 When user login account, verify user can add products from comparison list to cart
15 When user login account, verify user can add products from comparison list to Wish List
16 When user login account, verify user can remove any product from comparison list
17 When user login account, verify user can print product comparison list
18 When user login account, verify the user can access the product detail page
19 When user doesn't login account, verify users can add products to the comparison list
20 When user doesn't login account, verify that when the user reloads the page, the product still exists in the compare products section
21 When user doesn't login account, verify that when user closes the tab page, reopens a new tab, there are still products in the compare products section
22 When user doesn't login account, verify user clicking on
Home page still has products in Compare Products section
23 When user doesn't login account, verify that the user has left the page for 1 time without losing products in
24 When user doesn't login account, verify users print Passed
25 When user doesn't login account, verify user can add products from comparison list to cart
26 When user doesn't login account, verifyuser cannot add products to Wish list item from comparison list
27 When user doesn't login account, verify user can remove any product from comparison list
Bảng 4.3 Kết quả kiểm thử
Sau mười tuần thực tập tại TMA Solutions Bình Định, tôi đã có cơ hội học hỏi và trải nghiệm văn hóa làm việc tại công ty Tôi được tiếp xúc trực tiếp với các mentor và nhận được sự hỗ trợ nhiệt tình Dưới sự hướng dẫn tận tình của giảng viên, tôi đã có những tiến bộ tích cực và thay đổi đáng kể trong quá trình phát triển bản thân.
- Nâng cao khả năng tự học, khả năng tìm hiểu kiến thức một cách chủ động
- Cải thiện kỹ năng giao tiếp, nâng cao hiểu biết của bản thân về môi trường cũng như văn hóa làm việc doanh nghiệp chuyên nghiệp
- Cải thiện kỹ năng giao tiếp tiếng Anh và kỹ năng đọc hiểu tài liệu bằng tiếng Anh
- Nắm rõ quy trình phát triển phần mềm và quản lý dự án
- Tiếp thu được nhiều kiến thức mới mẻ về mảng tester cũng như các công việc liên quan được nâng cao
Các buổi training của công ty đã giúp nâng cao các kỹ năng mềm, bao gồm việc viết email chuyên nghiệp, tạo và trình bày slide một cách hiệu quả, cải thiện khả năng thuyết trình trước đám đông và phát triển kỹ năng làm việc nhóm.
- Vận dụng những kiến thức học được để xây dựng kịch bản kiểm thử phần mềm, cách viết test case để kiểm tra hệ thống
- Phát triển và hoàn thiện bản thân cả trong tính cách lẫn công việc như tỉ mỉ, cẩn thận và chủ động hơn trong công việc
Do thời gian thực tập có hạn, em chưa có cơ hội tìm hiểu sâu về nghề tester Các kỹ năng và kiến thức liên quan đến công việc này của em vẫn chỉ dừng lại ở những kiến thức căn bản.
- Các chức năng của hệ thống vẫn chưa được kiểm thử đầy đủ, việc thiết kế các trường hợp kiểm thử còn hạn chế
Sau quá trình học hỏi và thực tập tại doanh nghiệp, tôi đã có những định hướng rõ ràng hơn về công việc tương lai của mình Những kiến thức và trải nghiệm này giúp tôi phát triển bản thân và xác định mục tiêu nghề nghiệp một cách hiệu quả.
Sau thời gian thực tập, tôi sẽ tiếp tục rèn luyện và củng cố kiến thức đã học Đồng thời, tôi sẽ trau dồi kỹ năng và tìm hiểu sâu hơn về lĩnh vực Tester để mở rộng cơ hội nghề nghiệp trong tương lai.