Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 26 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
26
Dung lượng
2,06 MB
Nội dung
1 TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA CÔNG NGHỆ PHẦN MỀM BÁO CÁO THỰC TẬP Automation Testing Công ty thực tập : Công ty Capgemini VN Người phụ trách : Mr Trần Hoàng Long Thực tập sinh : Trần Thanh Lâm TP Hồ Chí Minh, tháng 06 năm 2022 Trần Hoàng Long Trần Thanh Lâm LỜI MỞ ĐẦU Kiểm thử phần mềm có mặt Việt Nam cách chưa lâu, nói thời gian gần đây, với phát triển ngành CNTT, đặc biệt lĩnh vực gia công phát triển phần mềm, Kiểm thử phần mềm dần thu hút quan tâm tìm hiểu bạn trẻ, đặc biệt bạn nữ Tester hay gọi chuyên viên kiểm thử phần mềm, công việc Tester tìm kiếm lỗi hệ thống phần mềm thẩm định, xác minh xem hệ thống phần mềm có đáp ứng yêu cầu kỹ thuật yêu cầu nghiệp vụ hay không Công việc Tester chia mức: Unit Test (Kiểm tra mức đơn vị), Integration Test (Kiểm tra tích hợp), System Test (Kiểm tra mức hệ thống), Acceptance Test (Kiểm tra chấp nhận sản phẩm) khâu Regression Test (Kiểm tra hồi quy) Chính kiểm thử phần mềm khâu sống sản phẩm trước đưa vào sử dụng, Tester vị trí khơng thể thiếu công việc định nhiều vào thành công dự án Quan trọng vậy, số lượng Tester Việt Nam chưa đáp ứng nhu cầu thị trường, dự án phần mềm giới, trung bình lập trình viên có kiểm thử phần mềm, nay, tỉ lệ Việt Nam 5:1 Việt Nam dự báo trở thành nước mạnh CNTT, gia cơng phần mềm chiếm tỉ trọng lớn, nhu cầu nhân lực Tester tăng theo Tại hội nghị quốc tế kiểm thử phần mềm tự động (12/2011, TP HCM), báo cáo cho thấy: với đà tăng trưởng mạnh mẽ ngành gia công phần mềm, vài năm tới, Việt Nam thiếu khoảng 10.000 Tester Sau ba năm rưỡi học tập trường, mong muốn có thêm kinh nghiệm thực tế, muốn tham gia vào công đoạn kiểm thử cơng ty phần mềm chun nghiệp Vì vậy, em tham gia chương trình thực tập cơng ty Capgemini để tích lũy thêm kiến thức testing nói chung automation testing nói riêng Trần Hồng Long Trần Thanh Lâm LỜI CẢM ƠN Trân trọng gửi lời cảm ơn Công ty Capgemini Việt Nam tạo điều kiện cho em có hội thực tập cơng ty Chỉ thời gian ngắn, nhờ dẫn nhiệt tình nhóm trainer, em tiếp thu kiến thức quan trọng lĩnh vực Automation Test Chân thành cảm ơn anh chị nhóm trainer bỏ nhiều thời gian,công sức để hướng dẫn em hoàn thành đợt thực tập Đặc biệt cảm ơn anh Trần Hoàng Long, training kiến thức Java, Selenium, Rest Assured, BDD framework, hướng dẫn, giúp đỡ cho chúng em tận tình khó khăn cơng việc, đến khó khăn việc làm quen với môi trường Cũng xin cảm ơn thầy khoa Cơng nghệ phần mềm nhiệt tình hỗ trợ, tạo điều kiện em làm báo cáo Trần Thanh Lâm TpHCM, ngày 16 tháng năm 2022 Trần Hoàng Long Trần Thanh Lâm NHẬN XÉT CỦA KHOA Trần Hoàng Long Trần Thanh Lâm Mục lục Chương 1: Giới thiêu công ty thực tập Giới thiệu công ty Capgemini VN Chương 2: Nội dung thực tập Tìm hiểu cơng ty kỹ công ty Nghiên cứu kỹ thuật 2.1 Các công cụ làm việc 2.2 Tìm hiểu ngơn ngữ Java 2.3 Tìm hiểu Selenium Framework 2.4 Tìm hiểu Rest Assured 10 2.5 Tìm hiểu Cucumber 11 Thực project 12 Lịch làm việc 12 Chương 3: Chi tiết project 14 TÀI LIỆU THAM KHẢO 255 TỔNG KẾT 266 Trần Hoàng Long Trần Thanh Lâm Chương 1: Giới thiêu công ty thực tập Giới thiệu công ty Capgemini VN Với đội ngũ 190.000 ngàn nhân viên có mặt 40 quốc gia giới, Tập đoàn Capgemini kỷ niệm 50 năm thành lập năm 2017 Là tập đoàn dẫn đầu lĩnh vực tư vấn, công nghệ dịch vụ gia cơng phần mềm, doanh thu tồn cầu Capgemini năm 2016 báo cáo 12,5 tỷ EUR Để đồng hành với khách hàng mình, Capgemini không ngừng sáng tạo cung cấp giải pháp kỹ thuật, công nghệ thương mại nhằm đáp ứng yêu cầu khách hàng việc đổi tang khả cạnh tranh Capgemini, tổ chức đa văn hóa sâu sắc, phát triển phương thức hoạt động riêng mình, the Collaborative Business ExperienceTM, and draws on Rightshore®, mơ hình phân phối toàn giới Capgemini Capgemini Vietnam văn phòng lớn tọa lạc lầu 2, tòa nhà Centre Point, 106 Nguyễn Văn Trỗi , quận Phú Nhuận, Thành phố Hồ Chí Minh Ngồi việc trở thành nhà cung cấp uy tín dịch vụ ứng dụng web, Capgemini Vietnam cịn cung cấp dịch vụ cơng nghệ thơng tin cho Tập đồn bảo hiểm Ngân hàng lớn giới Trần Hoàng Long Trần Thanh Lâm Thơng tin liên hệ • Địa văn phòng 2nd CentrePoint Building, 106 Nguyễn Văn Trỗi, Phú Nhuận, TP Hồ Chí Minh • Điện thoại liên hệ (+84) 839978100 • Website www.capgemini.com Trần Hồng Long Trần Thanh Lâm Chương 2: Nội dung thực tập Đợt thực tập với chủ đề “Automation Testing” nhằm mục đích giúp sinh viên thực tập đào tạo toàn diện Kiểm thử phần mềm tự động, đồng thời rèn luyện kỹ mềm làm việc nhóm, thuyết trình, giao tiếp Tại cơng ty, sinh viên có hội học tập, khám phá làm việc môi trường phát triển phần mềm chuyên nghiệp Tìm hiểu công ty kỹ công ty Thời gian : ngày Nội dung: Sinh viên cung cấp slide video clip giới thiệu công ty, hướng dẫn vấn đề khác thời gian, văn hoá quy định làm việc công ty Kết : Hiểu thêm cơng ty Capgemini, q trình thành lập phát triển Có thêm kỹ việc sử dụng email cơng việc, làm việc có kế hoạch, có kỷ luật, có trách nhiệm Nghiên cứu kỹ thuật 2.1 Các công cụ làm việc Thời gian : ngày Nội dung : Tìm hiểu cơng cụ sử dụng trình làm việc Trong thời gian này, mentor em giới thiệu cho em công cụ Intellij IDEA, Selenium Framework, Maven, TestNG Thực : Thực hành sử dụng phần mềm nêu Kết : Hiểu công cụ cần thiết để test website Seleium 2.2 Tìm hiểu ngơn ngữ Java Thời gian : ngày (1 tuần) Nội dung : Được training kỹ thuật Java nâng cao, kiến thức quan trọng cho việc sử dụng ngơn ngữ lập trình Java Selenium Framework - Lập trình hướng đối tượng Trần Hồng Long Trần Thanh Lâm Các kiến thức lập trình hướng đối tượng khái niêm, đặc tính tính kế thừa, tính đóng gói, tính ảo hóa, tính đa hình - Java 8: Thực tập sinh tìm hiểu tính Java 8, ứng dụng ngôn ngữ Java kiểm thử tự động Seleium Thực : - Tham gia đầy đủ buổi training công ty - Làm thực hành, kiểm tra kiến thức học Kết : - Nâng cao kỹ lập trình với ngơn ngữ Java - Có kiến thức quan trọng cho việc lập trình Java cho Seleium - Ngồi cịn biết thêm số quy tắc việc viết code cho chuẩn, dễ đọc, dễ hiểu 2.3 Tìm hiểu Selenium Framework Thời gian: tuần Nội dung: Các kiến thức Selenium để test trang web - Khái niệm Seleium Nắm khái niệm Seleium, đặt biệt Seleium WebDriver, thực cách tiếp cận đại ổn định việc tự động hóa hành động trình duyệt Ngồi ra, mentor cịn giúp em hiểu nhiều khái niệm Selenium locator, wait, report, … Thực hiện: Trần Hoàng Long Trần Thanh Lâm 10 - Tham gia đầy đủ buổi trainning - Làm tập thực hành test số chức đơn giản - Tìm kiếm tài liệu mạng để tìm hiểu thêm Kết : - Hiểu khái niệm Selenium 2.4 Tìm hiểu Rest Assured Thời gian : tuần Nội dung : Các khái niệm Rest Assured Framework dùng để test API - Định nghĩa API: API viết tắt Application Programming Interface – phương thức trung gian kết nối ứng dụng thư viện khác Nó cung cấp khả truy xuất đến tập hàm hay dùng, từ trao đổi liệu ứng dụng - Tìm hiểu Rest Assured Framework: Rest-assured (RestA) thư viện Java DSL xây dựng HTTP Builder (thư viện tạo HTTP request), cho phép thực gửi request kiểm tra response Thực : - Tham gia đầy đủ buổi training - Test API Kết quả: - Hiểu trình test API, khái niệm Rest Assured Trần Hoàng Long Trần Thanh Lâm 12 Thực project Sau tháng training thực hành, thực tập sinh nắm kiến thực Automation Testing Trong tháng cuối cùng, mentor hướng dẫn thực tập sinh áp dụng kiến thức học để test trang web thực tế Chi tiết đồ án nói phần sau Lịch làm việc Tuần Cơng việc Tìm hiểu cơng ty, cách tổ chức công ty - Làm quen với công cụ làm việc công ty - Học cách trao đổi, làm việc qua email - Cài đặt môi trường Java - Cài đặt Maven - Cài đặt Intellị IDEA - Luyện tập Java - Tìm hiểu Selenium Webdriver - Học mơ hình POM - Tìm hiểu TestNG - Viết số test case - Tìm hiểu Rest Assured - Tìm hiểu API - Luyện tập test API với Rest Assured - Tìm hiểu Cucumber - Tích hợp Cucumber với Selenium - Tìm hiểu Jenkins - Trần Hoàng Long Mức Người hướng độ dẫn hoàn thành Anh Trần 100 Hoàng Long Anh Trần Hoàng Long 100 Anh Trần Hoàng Long 100 Anh Trần Hoàng Long 100 Anh Trần Hoàng Long 100 Nhận xét người hướng dẫn Trần Thanh Lâm 13 Thực xây dựng Anh Trần test case để test trang web Hoàng Long cảu công ty Capgemini - Xuất file Report Anh Trần - Bổ xung thêm test Hoàng Long case thiếu - Fixbug - - Trần Hoàng Long Mentor review lại project Đưa cách làm tối ưu, thư viện Báo cáo project cho mentor Anh Trần Hoàng Long 100 100 Trần Thanh Lâm 14 Chương 3: Chi tiết project Trong thời gian thực tập công ty, người hướng dẫn giao cho dự án kiểm thử trang web cơng ty có đường dẫn: www.capgemini.com Hình Website công ty 3.2 Mô tả dự án Tên: Capgemini Website Test Project Người thực hiện: Trần Thanh Lâm Yêu cầu cài đặt: • Java (jdk 8) • Apache Maven • Selenium (version 3.141.59) • TestNG (version 7.4.0) • Log4j (version 2.17.0) • Web Driver Manager (version 5.0.3) • Allure Report (version 2.13.8) Trần Hoàng Long Trần Thanh Lâm 15 • IDE: IntelliJ IDEA Chạy test comandline: mvn test mvn test -Denv=staging Hình Cài đặt chạy test comandline mvn test -Dretry=3 Hình Cài đặt chạy lại testcase bị thất bại Hỗ trợ parameters testNG.xml: • Trình duyệt: chrome, edge, firefox Trần Hồng Long Trần Thanh Lâm 16 Hình Cài đặt trình duyệt để kiểm thử Thiết lập Listeners testNG.xml: • listeners.TestListener Hình Thiết lập Listeners Class (1) Trần Hồng Long Trần Thanh Lâm 17 Hình Thiết lập Listeners Class (2) Hình Thiết lập Listeners Class (3) Trần Hồng Long Trần Thanh Lâm 18 Cấu trúc • Trong BasePage, thiết lập trình duyệt, mơi trường, thời gian, URL Report Hình Thiết lập Base Page class • Trong Home Page, đưa tất elements vào class tạo function cho trang Hình Thiết lập Element sử dụng Home Page class Trần Hoàng Long Trần Thanh Lâm 19 • Trong BaseTest, sử dụng Annotation TestNG gọi hàm setUP từ BagePage Hình 10 Thiết lập Base Test class • Trong MainPageTest, viết testcase, bỏ qua đến trang chủ click vào link Khi click vào, trang trở lại trang Relearning Hình 11 Testcase Main Page class Trần Hồng Long Trần Thanh Lâm 20 • Trong SearchTest, đến SearchPage tìm: job Sử dụng thư viện Jsoup để lấy tất link trang Hình 12 Testcase Search Test class • Trong IndustriesTest, đến AutomotivePage, TelecomsPage, RetailPage xác minh tiêu đề trang Trần Hồng Long Trần Thanh Lâm 21 Hình 13 Testcase Industries Test class • Trong ServicesTest, đến CloudStrategyPage nhấn vào Minimizing's link Hình 14 Testcase Services Test class • Trong InsightsNewsTest, đến InsightsNewsPage, EventsPage xác minh tiêu đề trang Hình 15 Testcase Insights News Test class Trần Hoàng Long Trần Thanh Lâm 22 • Trong AboutUsTest, đến AllOurBrandsPage, PurposePage lấy nội dung trang Hình 16 Testcase About Us Test class Tất lớp kế thừa từ BaseTest Nếu testcase bị thất bại, Listeners chụp hình lên report Trần Hoàng Long Trần Thanh Lâm 23 3.1 Report dự án - Sử dụng Allure Report: Hình 17 Tổng quan report - Tất testcase chạy Hình 18 Tất testcase chạy Trần Hồng Long Trần Thanh Lâm 24 - Đối với testcase bị thất bại tự động chụp hình Hình 19 Chụp hình với testcase bị thất bại - Tổng quan trạng thái Hình 20 Tổng quan trạng thái report Trần Hoàng Long Trần Thanh Lâm 25 TÀI LIỆU THAM KHẢO For Java https://www.java.com/en/ For Selenium https://www.selenium.dev/ https://testng.org/doc/ https://github.com/allure-framework For Rest Assured https://rest-assured.io/ For Cucumber https://cucumber.io/ Trần Hoàng Long Trần Thanh Lâm 26 TỔNG KẾT Trong thời gian thực tập công ty Capgemini, thân em học hỏi trau dồi nhiều kiến thức Automation Testing, thái độ phong cách làm việc chuyên nghiệp ngành IT Những kiến thức bổ trợ cho em nhiều đường tương lai sau Sau cùng, em xin chân thành cảm ơn thầy cô trường Đại học Công nghệ thông tin, thầy cô khoa Công nghệ phần mềm, cơng ty Capgemini, chị Lê Hiền, anh Trần Hồng Long, bạn team giúp đỡ em thời gian thực tập Trần Hồng Long Trần Thanh Lâm ... www.capgemini.com Trần Hồng Long Trần Thanh Lâm Chương 2: Nội dung thực tập Đợt thực tập với chủ đề ? ?Automation Testing? ?? nhằm mục đích giúp sinh viên thực tập đào tạo tồn diện Kiểm thử phần mềm tự động, đồng... tháng training thực hành, thực tập sinh nắm kiến thực Automation Testing Trong tháng cuối cùng, mentor hướng dẫn thực tập sinh áp dụng kiến thức học để test trang web thực tế Chi tiết đồ án nói... kiến thức testing nói chung automation testing nói riêng Trần Hồng Long Trần Thanh Lâm LỜI CẢM ƠN Trân trọng gửi lời cảm ơn Công ty Capgemini Việt Nam tạo điều kiện cho em có hội thực tập công