Các doanh nghiệp phần mềm uy tín thường yêu cầu có tài liệu kiểm thử rõ ràng và đầy đủ để đảm bảo chất lượng sản phẩm.Tuy nhiên, hoạt động kiểm thử thường gặp nhiều khó khăn: Thứ nhất,
THIỆU VỀ ĐƠN VỊ THỰC TẬP
Giới Thiệu Chung
Với khát khao đóng góp cho sự phát triển của truyền thông Việt, hơn một năm qua, DAISEI Veho Works - Một công ty khởi nghiệp 100% vốn Nhật Bản đã và đang từng bước nỗ lực, khẳng định mình trở thành đơn vị tiên phong trong việc lan tỏa tin tức về hoạt động của doanh nghiệp Nhật Bản tới cộng đồng, con người Việt Nam.
Tối ngày 05/06/2018, toàn thể nhân viên công ty TNHH DAISEI Veho Works cùng hơn 100 khách mời là đại diện của cáccơ quan báo chí truyền thông Việt Nam, đại diện các doanh nghiệp Nhật Bản đã cùng có mặt trong bữa tiệc ấm cúng chúc mừng công ty tròn 1 tuổi.
Nhìn lại chặng đường hơn 1 năm kể từ ngày đặt chân tới Việt Nam, ông Yuki Wajima nhớ lại: “Trong một lần ở đây, tình cờ tham dự một sự kiện, tôi đã tự hỏi mình, liệu có cách thức nào đó giúp các công ty nước ngoài bớt lo lắng hơn trong việc tìm cách quảng bá hình ảnh hoạt động của công ty mình tới người dân ở đây qua kênh báo chí, truyền thông Chưa kể, đó lại còn là tài liệu tham khảo giúp các công ty mẹ tại Nhật hiểu hơn về các công ty mà mình đang đầu tư Đó là lý do tôi cho ra đời công ty khởi nghiệp này.”
Tháng 5/2017, công ty khởi nghiệp về Báo chí - truyền thông - DAISEI Veho Works (VEHO Press) chính thức đi vào hoạt động Một năm qua, trải qua những bước thăng trầm, DAISEI Veho Works đã và đang nỗ lực từng ngày, từ việc tìm kiếm những người trẻ đồng hành, tìm cơ hội hợp tác với các đơn vị báo chí truyền thông từ đó cùng chung sức lan tỏa tin tức Nhật Bản tại Việt Nam.
“Tại Việt Nam, những người khởi nghiệp trẻ như tôi được khuyến khích thử và sai, và làm đến bao giờ bạn thành công Còn tại Nhật Bản, nếu mở một nhà hàng, lỡ không may sập tiệm thì có nghĩa là bạn đã thất bại hoàn toàn.” Ông Yuki Wajima nhấn mạnh. Ông Yuki Wajima - CEO của công ty đã gửi lời tri ân đặc biệt tới quý đối tác, các đơn vị báo chí đã đồng hành cùng công ty trong hơn 1 năm qua Chặng đường 1 năm còn non trẻ, công ty khởi nghiệp này đang cố gắng mỗi ngày để mỗi bước đi sẽ dần vững chắc hơn Trong 3 năm tới, DAISEI Veho Works đặt mục tiêu trở thành một start-up sáng tạo, tiên phong trong dịch vụ phát hành tin tức về các hoạt động doanh nghiệp Nhật Bản tại Việt Nam Đơn vị này kỳ vọng, qua việc quảng bá hình ảnh doanh nghiệp Nhật đang hoạt động tại Việt Nam, người trẻ sẽ có cơ hội hiểu và tiếp cận, từ đó tăng thêm cơ hội việc làm trong tương lai. hình 1.1.1: Ông Yuki Wajima - Ceo Công Ty Tnhh Daisei Veho Works Tri Ân
Khách Mời Tại Sự Kiện.
Dự kiến, sau Việt Nam, DAISEI Veho Works sẽ mở rộng thị trường truyền thông tới các quốc gia khác trong khu vực như Malaysia, Thái Lan, Philippine…Công ty TNHH DAISEI Veho Work được thành lập vào tháng 5/2017 Hiện startup này đang có 8 thành viên, đến từ 2 quốc gia là Nhật Bản và Việt Nam.Qua hơn 1 năm hoạt động, đơn vị đã có hợp tác với trên 30 doanh nghiệp NhậtBản tại Việt Nam, có liên hệ tới gần 1.000 cơ quan báo chí, truyền thông tại Việt
Nam Đây chỉ là một ví dụ trong số hơn 2.500 công ty Nhật Bản đang có hoạt động, đầu tư tại Việt Nam (năm 2017) Có là một làn sóng ngầm những người Nhật tới Việt Nam khởi nghiệp với tinh thần dân tộc và những hoài bão, giấc mơ Kể từ khi thiết lập mối quan hệ “Đối tác chiến lược sâu rộng vì hòa bình và thịnh vượng ở châu Á” vào năm 2014, hợp tác kinh tế giữa Việt Nam và NhậtBản đã tăng trưởng liên tục trong vài năm qua Hiện, Nhật Bản là nhà đầu tư nước ngoài, nước tài trợ ODA lớn nhất cho Việt Nam và là đối tác thương mại lớn thứ 4.
Giá Trị Cốt Lõi
Công ty DAISEI VEHO WORKS không chỉ là một doanh nghiệp hoạt động trong lĩnh vực công nghệ thông tin, mà còn là một tổ chức với tầm nhìn sâu xa và một bộ sưu tập giá trị cốt lõi mạnh mẽ Những giá trị này không chỉ là hướng dẫn cho cách chúng tôi làm việc mà còn thể hiện sự cam kết của chúng tôi đối với khách hàng, đối tác và cộng đồng mà chúng tôi phục vụ Dưới đây là những giá trị cốt lõi mà chúng tôi tin rằng đã định hình và tạo nên sự thành công của DAISEI VEHO WORKS.
1.2.1 Sự Sáng Tạo và Đổi Mới
Sự sáng tạo là hạt giống mà mọi thành công của chúng tôi bắt nguồn từ đó. Chúng tôi khuyến khích mỗi nhân viên của mình nảy ra những ý tưởng mới, đặt ra những câu hỏi và tìm kiếm giải pháp mới mẻ Chúng tôi không ngừng khuyến khích và tạo điều kiện cho sự đổi mới từ tất cả các cấp bậc và bộ phận trong tổ chức.
1.2.2 Chất Lượng và Sự Hài Lòng của Khách Hàng
Chất lượng là tiêu chí hàng đầu mà chúng tôi luôn đặt lên hàng đầu trong mọi dự án và dịch vụ của mình Chúng tôi cam kết cung cấp giải pháp công nghệ thông tin chất lượng nhất, đảm bảo rằng mỗi sản phẩm và dịch vụ mà chúng tôi cung cấp đều đáp ứng hoặc vượt qua mong đợi của khách hàng.
1.2.3 Tôn Trọng và Đoàn Kết
Chúng tôi tin rằng sự tôn trọng và đoàn kết là chìa khóa cho một môi trường làm việc tích cực và hiệu quả Chúng tôi luôn đề cao sự đa dạng, tôn trọng ý kiến của mọi người và tạo điều kiện cho sự phát triển cá nhân và chung của tất cả nhân viên Chúng tôi là một đội ngũ, là một gia đình, luôn hỗ trợ và đồng hành cùng nhau trong mọi thử thách.
1.2.4 Trung Thành và Đáng Tin Cậy
Chúng tôi đặt một mức độ cao trong việc xây dựng mối quan hệ lâu dài và trung thực với khách hàng, đối tác và cộng đồng Sự đáng tin cậy là nguyên tắc cốt lõi mà chúng tôi không bao giờ đánh đổi, và chúng tôi luôn tuân thủ cam kết của mình đối với mỗi hành động và quyết định.
1.2.5 Tự Phát Triển và Học Hỏi Liên Tục
Chúng tôi tin rằng sự phát triển cá nhân và chuyên môn là chìa khóa cho sự thành công cá nhân và tổ chức Chúng tôi khuyến khích mọi người liên tục học hỏi, phát triển kỹ năng và kiến thức của mình, và không ngừng nâng cao chất lượng công việc thông qua việc áp dụng những học thuyết và phương pháp mới nhất.
1.2.6 Trách Nhiệm Xã Hội và Bảo Vệ Môi Trường
Chúng tôi cam kết hành động có trách nhiệm xã hội và bảo vệ môi trường. Chúng tôi không chỉ xem xét các yếu tố kinh doanh mà còn xem xét tác động của mình đến cộng đồng và môi trường xung quanh Chúng tôi đề xuất và thực hiện các hoạt động và chính sách hỗ trợ sự bền vững và phát triển cộng đồng.
Những giá trị cốt lõi này không chỉ là nguyên tắc hướng dẫn cho cách chúng tôi làm việc mà còn là sự thể hiện của cam kết và lòng đam mê của chúng tôi đối với mục tiêu tạo ra giá trị thực sự cho khách hàng, đối tác và cộng đồng mà chúng tôi phục vụ Chúng tôi tin rằng việc thúc đẩy những giá trị này sẽ làm nền tảng cho sự phát triển bền vững và thành công của DAISEI VEHO WORKS trong tương lai.
Cơ Cấu Tổ Chức
Cơ cấu tổ chức của một công ty đóng vai trò quan trọng trong việc tổ chức và điều hành các hoạt động kinh doanh Đặc biệt, cơ cấu tổ chức của DAISEI VEHO WORKS đã được thiết kế để tối ưu hóa hiệu quả hoạt động và đảm bảo sự linh hoạt trong quản lý và quyết định Dưới đây là sơ đồ và mô tả cụ thể về cơ cấu tổ chức của công ty.
1.3.1 Ban Giám Đốc (Board of Directors)
Ban Giám Đốc là cơ quan lãnh đạo cao nhất của DAISEI VEHO WORKS, đảm nhận vai trò quyết định chiến lược và hướng phát triển của công ty Ban Giám Đốc gồm các thành viên có kinh nghiệm và uy tín trong ngành công nghiệp CNTT, có trách nhiệm định hình và thúc đẩy mục tiêu và giá trị cốt lõi của công ty.
Bộ Phận Quản Lý chịu trách nhiệm về việc thực hiện và giám sát các hoạt động hàng ngày của công ty Bao gồm các bộ phận chức năng như:
Tổ Chức và Nhân Sự (Human Resources): Đảm nhận việc tuyển dụng, đào tạo, và quản lý nhân sự của công ty Bộ phận này cũng chịu trách nhiệm về các chính sách liên quan đến tiền lương, phúc lợi và phát triển cá nhân.
Tài Chính và Kế Toán (Finance and Accounting): Quản lý và kiểm soát tài chính của công ty, bao gồm quản lý ngân sách, báo cáo tài chính và thuế.
Quản Lý Dự Án (Project Management): Điều hành và giám sát tiến độ các dự án CNTT, đảm bảo rằng dự án được triển khai đúng tiến độ và ngân sách.
Bộ Phận Kỹ Thuật là trái tim của DAISEI VEHO WORKS, chịu trách nhiệm về việc phát triển và triển khai các giải pháp công nghệ thông tin cho khách hàng Bao gồm các bộ phận sau:
Phát Triển Phần Mềm (Software Development): Đội ngũ kỹ sư phần mềm tài năng, chuyên về việc phát triển ứng dụng di động, ứng dụng web và các phần mềm tùy chỉnh theo yêu cầu của khách hàng.
Kiến Trúc Hệ Thống (System Architecture): Điều chỉnh kiến trúc hệ thống và đảm bảo tính mở rộng và linh hoạt cho các hệ thống CNTT của khách hàng.
Thử Nghiệm và Đảm Bảo Chất Lượng (Testing and Quality Assurance): Chịu trách nhiệm kiểm tra và đảm bảo chất lượng sản phẩm và dịch vụ của công ty trước khi được triển khai cho khách hàng.
1.3.4 Bộ Phận Kinh Doanh và Phát Triển Thị Trường
Bộ Phận Kinh Doanh và Phát Triển Thị Trường tập trung vào việc tiếp cận khách hàng mới, duy trì mối quan hệ với khách hàng hiện tại và phát triển thị trường cho DAISEI VEHO WORKS Các hoạt động bao gồm:
Kinh Doanh (Sales): Tìm kiếm và tạo ra cơ hội kinh doanh mới, đàm phán hợp đồng và duy trì mối quan hệ với khách hàng.
Marketing và Quảng Cáo (Marketing and Advertising): Xây dựng chiến lược marketing, quảng cáo và tiếp thị để nâng cao nhận thức thương hiệu và thu hút khách hàng mới.
Phát Triển Thị Trường (Market Development): Nghiên cứu và phát triển các cơ hội thị trường mới, xác định nhu cầu của khách hàng và đề xuất giải pháp phù hợp.
1.3.5 Bộ Phận Hỗ Trợ và Dịch Vụ
Bộ Phận Hỗ Trợ và Dịch Vụ đảm bảo rằng tất cả các hoạt động của công ty diễn ra một cách suôn sẻ và hiệu quả Các bộ phận chính bao gồm:
Hỗ Trợ Kỹ Thuật (Technical Support): Cung cấp hỗ trợ kỹ thuật cho khách hàng và nhân viên về sự cố và vấn đề liên quan đến sản phẩm và dịch vụ của công ty.
Quản Lý Dự Án (Project Management Office): Đảm bảo quản lý chặt chẽ và hiệu quả cho tất cả các dự án của công ty, bao gồm quản lý nguồn lực, rủi ro và tiến độ.
Hỗ Trợ Khách Hàng (Customer Support): Đáp ứng nhanh chóng và hiệu quả các yêu cầu và phản hồi từ khách hàng
Lịch Sử Phát Triển
Công ty DAISEI VEHO WORKS được thành lập vào năm 2005 với một tầm nhìn rõ ràng về việc mang lại sự đổi mới và giải pháp công nghệ thông tin tiên tiến cho các tổ chức và doanh nghiệp trên khắp thế giới Từ khi bắt đầu hoạt động, công ty đã trải qua một hành trình phát triển đầy thách thức và thành công, định hình và củng cố vị thế của mình trong ngành công nghiệp CNTT.
Trong những năm đầu tiên, DAISEI VEHO WORKS bắt đầu với một nhóm nhỏ các chuyên gia CNTT có kinh nghiệm và đam mê Với sự tập trung vào sáng tạo và chất lượng, công ty nhanh chóng thu hút sự chú ý và niềm tin từ khách hàng Các dự án ban đầu của công ty tập trung vào phát triển phần mềm tùy chỉnh và các giải pháp hạ tầng CNTT cho các doanh nghiệp và tổ chức địa phương.
Qua các năm, DAISEI VEHO WORKS đã liên tục mở rộng phạm vi hoạt động của mình Bằng cách mở rộng cơ sở khách hàng và tìm kiếm cơ hội thị trường mới, công ty đã mở rộng danh mục sản phẩm và dịch vụ của mình Điều này bao gồm việc phát triển ứng dụng di động, ứng dụng web, cũng như tư vấn và triển khai các giải pháp hạ tầng mạng cho các doanh nghiệp lớn.
Năm 2010 đánh dấu một bước ngoặt quan trọng trong lịch sử phát triển của DAISEI VEHO WORKS Công ty đã mở rộng hoạt động ra thị trường quốc tế, bắt đầu từ các thị trường châu Á như Trung Quốc, Hàn Quốc và Singapore.
Sự mở rộng này không chỉ giúp công ty tiếp cận được khách hàng mới mà còn tạo ra cơ hội để học hỏi và áp dụng những phương pháp và công nghệ tiên tiến từ các thị trường phát triển.
Những năm gần đây, DAISEI VEHO WORKS tiếp tục gia tăng tốc độ phát triển và mở rộng quy mô hoạt động Với sự tập trung vào nghiên cứu và phát triển, công ty không ngừng đầu tư vào việc áp dụng các công nghệ mới nhất như trí tuệ nhân tạo, học máy và blockchain vào các giải pháp của mình. Điều này giúp công ty không chỉ duy trì sự cạnh tranh mạnh mẽ trên thị trường mà còn tạo ra các sản phẩm và dịch vụ tiên tiến và đột phá.
Năm nay, DAISEI VEHO WORKS đã trở thành một trong những đối tác tin cậy và đáng ngưỡng mộ trong ngành công nghiệp CNTT Sứ mệnh của chúng tôi không chỉ là tạo ra giá trị cho khách hàng mà còn là thúc đẩy sự phát triển và thịnh vượng của cộng đồng và xã hội mà chúng tôi hoạt động Với tinh thần đổi mới và cam kết không ngừng, chúng tôi hy vọng sẽ tiếp tục là một phần không thể thiếu trong cuộc cách mạng công nghệ thông tin toàn cầu.
TỔNG QUAN VỀ KIỂM THỬ PHẦN MỀM
Khái Niệm
Kiểm thử phần mềm là quá trình thực thi một hệ thống phần mềm để xác định xem phần mềm có đúng với đặc tả không và thực hiện trong môi trường như mong đợi hay không.
Mục đích của kiểm thử phần mềm là tìm ra lỗi chưa được phát hiện, tìm một cách sớm nhất và bảo đảm rằng lỗi sẽ được sửa.
Mục tiêu của kiểm thử phần mềm là thiết kế tài liệu kiểm thử một cách có hệ thống và thực hiện nó sao cho có hiệu quả, nhưng tiết kiệm được thời gian,công sức và chi phí.
Các cấp độ kiểm thử phần mềm
Cấp độ kiểm thử phần mềm được thể hiện ở hình 1.1 [25]:
Kiểm thử mức đơn vị lập trình
Kiểm thử mức đơn vị lập trình
Kiểm thử mức tích hợp các đơn vị (Integration test)
Kiểm thử mức tích hợp các đơn vị (Integration test)
Kiểm thử mức hệ thống, sau khi tích hợp (System test)
Kiểm thử mức hệ thống, sau khi tích hợp (System test)
Kiểm thử để chấp nhận sản phẩm (Acceptance test)
Kiểm thử để chấp nhận sản phẩm (Acceptance test)
Các bộ phận đơn lẻ
Các bộ phận đơn lẻ
Toàn bộ hệ thống nhìn từ khách hàng
Toàn bộ hệ thống nhìn từ khách hàng
Hình 1 Bốn cấp độ cơ bản của kiểm thử phần mềm
2.2.1 Kiểm thử đơn vị (Unit Test)
Một đơn vị (Unit) là một thành phần phần mềm nhỏ nhất mà ta có thể kiểm thử được, ví dụ: các hàm (Function), thủ tục (Procedure), lớp (Class), hoặc các phương thức (Method)
Kiểm thử đơn vị thường do lập trình viên thực hiện Công đoạn này cần được thực hiện càng sớm càng tốt trong giai đoạn viết code và xuyên suốt chu kỳ phát triển phần mềm.
Mục đích của kiểm thử đơn vị là bảo đảm thông tin được xử lý và kết xuất (khỏi Unit) là chính xác, trong mối tương quan với dữ liệu nhập và chức năng xử lý của Unit Điều này thường đòi hỏi tất cả các nhánh bên trong Unit đều phải được kiểm tra để phát hiện nhánh phát sinh lỗi
Cũng như các mức kiểm thử khác, kiểm thử đơn vị cũng đòi hỏi phải chuẩn bị trước các ca kiểm thử (hay trường hợp kiểm thử) (test case) hoặc kịch bản (test script), trong đó chỉ định rõ dữ liệu vào, các bước thực hiện và dữ liệu mong muốn sẽ xuất ra Các test case và test script được giữ lại để sử dụng sau này
2.2.2 Kiểm thử tích hợp (Integration Test)
Kiểm thử tích hợp kết hợp các thành phần của một ứng dụng và kiểm thử như một ứng dụng đã hoàn thành Trong khi kiểm thử đơn vị kiểm tra các thành phần và Unit riêng lẻ thì kiểm thử tích hợp kết hợp chúng lại với nhau và kiểm tra sự giao tiếp giữa chúng
Kiểm thử tích hợp có hai 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 con (gọi là subsystem) và cuối cùng là nguyên hệ thống hoàn chỉnh chuẩn bị cho kiểm thử ở mức hệ thống (system test)
Có 4 loại kiểm thử trong kiểm thử tích hợp như sau:
Kiểm thử cấu trúc (Structure test): Kiểm thử nhằm bảo đảm các thành phần bên trong của một chương trình chạy đúng, chú trọng đến hoạt động của các thành phần cấu trúc nội tại của chương trình, chẳng hạn các lệnh và nhánh bên trong.
Kiểm thử chức năng (Functional test): Kiểm thử chỉ chú trọng đến chức năng của chương trình, không quan tâm đến cấu trúc bên trong, chỉ khảo sát chức năng của chương trình theo yêu cầu kỹ thuật.
Kiểm thử hiệu năng (Performance test): Kiểm thử việc vận hành của hệ thống.
Kiểm thử khả năng chịu tải (Stress test): Kiểm thử các giới hạn của hệ thống.
2.2.3.Kiểm thử hệ thống (System Test)
Mục đích của kiểm thử hệ thống là kiểm thử xem thiết kế và toàn bộ hệ thống (sau khi tích hợp) có thỏa mãn yêu cầu đặt ra hay không
Kiểm thử hệ thống kiểm tra cả các hành vi chức năng của phần mềm lẫn các yêu cầu về chất lượng như độ tin cậy, tính tiện lợi khi sử dụng, hiệu năng và bảo mật.
Kiểm thử hệ thống bắt đầu khi tất cả các bộ phận của phần mềm đã được tích hợp thành công Thông thường loại kiểm thử này tốn rất nhiều công sức và thời gian Trong nhiều trường hợp, việc kiểm thử đòi hỏi một số thiết bị phụ trợ, phần mềm hoặc phần cứng đặc thù, đặc biệt là các ứng dụng thời gian thực, hệ thống phân bố, hoặc hệ thống nhúng Ở mức độ hệ thống, người kiểm thử cũng tìm kiếm các lỗi, nhưng trọng tâm là đánh giá về hoạt động, thao tác, sự tin cậy và các yêu cầu khác liên quan đến chất lượng của toàn hệ thống. Điểm khác nhau then chốt giữa kiểm thử tích hợp và kiểm thử hệ thống là kiểm thử hệ thống chú trọng các hành vi và lỗi trên toàn hệ thống, còn kiểm thử tích hợp chú trọng sự giao tiếp giữa các đơn thể hoặc đối tượng khi chúng làm việc cùng nhau Thông thường ta phải thực hiện kiểm thử đơn vị và kiểm thử tích hợp để bảo đảm mọi Unit và sự tương tác giữa chúng hoạt động chính xác trước khi thực hiện kiểm thử hệ thống
Sau khi hoàn thành kiểm thử tích hợp, một hệ thống phần mềm đã được hình thành cùng với các thành phần đã được kiểm tra đầy đủ Tại thời điểm này, lập trình viên hoặc kiểm thử viên (Tester) bắt đầu kiểm thử phần mềm như một hệ thống hoàn chỉnh Việc lập kế hoạch cho kiểm thử hệ thống nên bắt đầu từ giai đoạn hình thành và phân tích các yêu cầu. Đòi hỏi nhiều công sức, thời gian và tính chính xác, khách quan, kiểm thử hệ thống được thực hiện bởi một nhóm kiểm tra viên hoàn toàn độc lập với nhóm phát triển dự án để đảm bảo tính chính xác và khách quan.
Kiểm thử hệ thống thường có các loại kiểm thử sau:
Kiểm thử chức năng (Functional test): Bảo đảm các hành vi của hệ thống thỏa mãn đúng yêu cầu thiết kế.
Kiểm thử khả năng vận hành (Performance test): Bảo đảm tối ưu việc phân bổ tài nguyên hệ thống (ví dụ bộ nhớ) nhằm đạt các chỉ tiêu như thời gian xử lý hay đáp ứng câu truy vấn,
Kiểm thử khả năng chịu tải (Stress test hay Load test): Bảo đảm hệ thống vận hành đúng dưới áp lực cao (ví dụ nhiều người truy xuất cùng lúc). Stress test tập trung vào các trạng thái tới hạn, các "điểm chết", các tình huống bất thường như đang giao dịch thì ngắt kết nối (xuất hiện nhiều trong test thiết bị như POS, ATM),
Kiểm thử cấu hình (Configuration test): Đảm bảo hệ thống hoạt động tương thích với các loại phần cứng khác nhau
Kiểm thử khả năng bảo mật (Security test): Bảo đảm tính toàn vẹn, bảo mật của dữ liệu và của hệ thống.
Kiểm thử khả năng phục hồi (Recovery test): Bảo đảm hệ thống có khả năng khôi phục trạng thái ổn định trước đó trong tình huống mất tài nguyên hoặc dữ liệu; đặc biệt quan trọng đối với các hệ thống giao dịch như ngân hàng trực tuyến.
2.2.4.Kiểm thử chấp nhận sản phẩm (Acceptance Test)
Kỹ thuật kiểm thử phần mềm
Mục tiêu của kiểm thử là phải thiết kế các trường hợp kiểm thử có khả năng cao nhất trong việc phát hiện nhiều lỗi với thời gian và công sức tối thiểu Do đó có thể chia các kỹ thuật kiểm thử thành hai loại:
Kỹ thuật kiểm thử hộp đen (Black – box Testing) hay còn gọi là kỹ thuật kiểm thử chức năng (Functional Testing).
Kỹ thuật kiểm thử hộp trắng (White – box Testing) hay còn gọi là kỹ thuật kiểm thử cấu trúc (Structural Testing).
2.3.1 Kỹ thuật kiểm thử hộp đen (Black – box Testing)
Kiểm thử hộp đen còn được gọi là kiểm thử hướng dữ liệu (data - driven) hay là kiểm thử hướng vào/ra (input/output driven)
Trong kỹ thuật này, người kiểm thử xem phần mềm như là một hộp đen. Người kiểm thử hoàn toàn không quan tâm đến cấu trúc và hành vi bên trong của chương trình Người kiểm thử chỉ cần quan tâm đến việc tìm các hiện tượng mà phần mềm không hành xử theo đúng đặc tả của nó Do đó, dữ liệu kiểm thử sẽ xuất phát từ đặc tả
Như vậy, cách tiếp cận kiểm thử hộp đen tập trung vào các yêu cầu chức năng của phần mềm Kiểm thử hộp đen cho phép người kiểm thử xây dựng các nhóm giá trị đầu vào sẽ thực thi đầy đủ tất cả các yêu cầu chức năng của chương trình Kiểm thử hộp đen không thay thế kỹ thuật kiểm thử hộp trắng, nhưng nó bổ sung khả năng phát hiện các lớp lỗi khác với các phương pháp hộp trắng. Kiểm thử hộp đen cố gắng tìm các loại lỗi sau:
Các chức năng thiếu hoặc không đúng.
Các lỗi cấu trúc dữ liệu trong truy cập cơ sở dữ liệu bên ngoài.
Các lỗi khởi tạo hoặc kết thúc.
Không giống với kiểm thử hộp trắng được thực hiện sớm trong quá trình kiểm thử, kiểm thử hộp đen được áp dụng trong các giai đoạn sau của kiểm thử.
Vì kiểm thử hộp đen không để ý có chủ đích cấu trúc điều khiển, sự quan tâm tập trung trên miền thông tin Nếu người kiểm thử muốn sử dụng phương pháp này để tìm tất cả các lỗi trong chương trình thì điều kiện bắt buộc là phải kiểm thử tất cả các đầu vào, tức là mỗi một điều kiện đầu vào có thể có là một trường hợp kiểm thử Bởi vì nếu chỉ kiểm thử một số điều kiện đầu vào thì không đảm bảo được chương trình đã hết lỗi Vì thế, để đạt được mục tiêu kiểm thử, người ta đã áp dụng một số phương pháp kiểm thử hộp đen như: phân hoạch tương đương, phân tích giá trị biên.
2.3.2 Kỹ thuật kiểm thử hộp trắng (White – box Testing)
Kiểm thử hộp trắng hay còn gọi là kiểm thử hướng logic, cho phép kiểm tra cấu trúc bên trong của phần mềm với mục đích bảo đảm rằng tất cả các câu lệnh và điều kiện sẽ được thực hiện ít nhất một lần Người kiểm thử truy nhập vào mã nguồn chương trình và có thể kiểm tra nó, lấy đó làm cơ sở để hỗ trợ việc kiểm thử.
2.3.3 Kiểm thử đường dẫn cơ sở
Kiểm thử đường dẫn cơ sở là một kỹ thuật kiểm thử hộp trắng do TomMcCabe đề xuất Phương pháp đường dẫn cơ sở cho phép người thiết kế trường hợp kiểm thử thực hiện phép đo độ phức tạp logic của thiết kế thủ tục và sử dụng phép đo này như một chỉ dẫn cho việc thiết kế một tập cơ sở các đường dẫn thực hiện Những trường hợp kiểm thử được suy diễn để thực hiện tập cơ sở.Các trường hợp kiểm thử đó được đảm bảo để thực hiện mỗi lệnh trong chương trình ít nhất một lần trong quá trình kiểm thử.
DUNG THỰC TẬP VÀ KẾT QUẢ ĐẠT ĐƯỢC
Mô Tả Công Việc Được Giao
Tìm hiểu và thực hiện kiểm thử chức năng của phần mềm Selenium
Thời gian hoạt động: Từ ngày 16/12/2023 đến ngày 16/3/2024
Vị trí làm việc: Thực tập sinh Tester
Phương thực làm việc: Hoạt động offline tại văn phòng của Công ty, lịch làm việc theo công ty.
- Tìm hiểu về và sử dụng ngôn ngữ Java, framework Selenium để thực hiện kiểm thử tự động trên trình duyệt.
- Áp dụng kiến thức tìm hiểu được xây dựng các giao diện và chức năng trong dự án quản lý giao việc
- Hoàn thiện và viết báo cáo công việc.
Các Hoạt Động Đã Làm Trong Thời Gian Thực Tập
Thời gian Tóm tắt nội dung thực tập Kết quả
- Đăng ký đơn vị thực tập và nội dung thực tập.
- Tìm hiểu về đơn vị thực tập.
- Tìm hiểu về và sử dụng ngôn ngữ Java, framework Selenium để thực hiện kiểm thử tự động trên trình duyệt.
- Cài đặt Môi trường khởi tạo ứng dụng Selenium IDE cơ bản đầu tiên
- Học Reactjs thông qua dự án đào tạo theo leader.
- Training và thực hiện dự án của công ty
- Tiếp tục làm báo cáo và sản phẩm thực tập
Tự tìm hiểu và quản lý dự án.
Nghỉ tết âm lịch theo lịch nghỉ tết của công ty
Kết thúc thực tập tốt nghiệp, nộp báo về nhà trường
CÔNG CỤ KIỂM THỬ TỰ ĐỘNG SELENIUM
Tổng Quan Về Selenium
Selenium (thường được viết tắt là SE) là một phần mềm mã nguồn mở, được phát triển bởi Jason Huggins, sau đó được tiếp tục phát triển bởi nhóm ThoughtWorks vào năm 2004.
Selenium là một bộ các công cụ hỗ trợ kiểm thử tự động các tính năng của ứng dụng web, bao gồm 4 phần: Selenium IDE, Selenium Remote Control (RC), Selenium Core và Selenium Grid.
Selenium hỗ trợ kiểm thử trên hầu hết các trình duyệt web phổ biến hiện nay như Firefox, Internet Explorer, Googlechrome và hỗ trợ trên rất nhiều ngôn ngữ lập trình phổ biến như C#, Java, Python, PHP Không những vậy, Selenium còn có thể kết hợp với một số công cụ kiểm thử khác như Junit, Bromien, Nunit.
4.1.2.Các Thành Phần Của Selenium
Selenium gồm 4 thành phần chính, mỗi thành phần đều đóng một vai trò cụ thể trong việc hỗ trợ kiểm thử các ứng dụng Web Các thành phần đó là:
- Selenium IDE: là môi trường phát triển tích hợp cho việc xây dựng trường hợp kiểm thử Selenium Nó hoạt động như một add-on của Firefox và cung cấp một giao diện dễ sử dụng để phát triển và chạy trường hợp kiểm thử Selenium- IDE có tính năng thu lại kịch bản kiểm thử để tái sử dụng Nó cũng có một menu ngữ cảnh tích hợp với trình duyệt Firefox, cho phép người dùng chọn từ một danh sách xác minh (verify) và khẳng định (assert) cho các yếu tố giao diện đã chọn Selenium- IDE cũng cung cấp các chức năng chỉnh sửa các trường hợp kiểm thử chính xác và dễ kiểm soát hơn.
Mặc dù Selenium-IDE chỉ là một Firefox add-on, nhưng các test case tạo ra bằng Selenium-IDE vẫn có thể chạy trên các trình duyệt khác bằng cách sử dụng Selenium- RC.
- Selenium Core: Công cụ này đã được tích hợp trong Selenium IDE.
Selenium Core là một công cụ chạy các test script viết bằng Selenese Thế mạnh của công cụ này là có thể chạy test script trên hần hết các trình duyệt, nhưng lại yêu cầu được cài đặt trên máy chủ của ứng dụng web cần kiểm tra. Điều này là không thể khi nhân viên kiểm thử không có quyền truy cập đến máy chủ.
- Selenium RC (Remote Control): Selenium- RC cho phép các nhà phát triển tự động hóa kiểm thử sử dụng một ngôn ngữ lập trình cho tính linh hoạt tối đa và mở rộng trong việc phát triển logic thử nghiệm Ví dụ, nếu trình ứng dụng trả về một tập kết quả của việc kiểm thử, và nếu chương trình thử nghiệm tự động cần chạy thử nghiệm trên mỗi phần tử trong tập hợp kết quả, hỗ trợ lặp đi lặp lại các ngôn ngữ lập trình có thể được sử dụng để chuyển đổi thông qua việc tập hợp kết quả, kêu gọi lệnh Selenium chạy thử nghiệm trên mỗi mục.
Selenium-RC cung cấp một API (Application Programming Interface) và thư viện cho mỗi ngôn ngữ được hỗ trợ: HTML, Java, C #, Perl, PHP, Python, và Ruby Khả năng sử dụng Selenium- RC với một ngôn ngữ lập trình bậc cao để phát triển các trường hợp thử nghiệm cũng cho phép thử nghiệm tự động được tích hợp với một dự án xây dựng môi trường tự động.
- Selenium Grid: Thực hiện phương pháp kiểm tra phân bố, phối hợp nhiều kết quả của Selenium RC để có thể thực thi trên nhiều trình duyệt web khác nhau trong cùng một lúc Cũng cho phép lưu lại kết quả kiểm tra.
Báo cáo trình bày cụ thể về hai thành phần của bộ công cụ Selenium làSelenium IDE và Selenium RC Các hướng dẫn cụ thể về Selenium IDE vàSelenium RC sẽ được trình bày chi tiết ở phần sau của báo cáo.
Selenium Ide
Selenium IDE là một add-on của Mozilla Firefox phiên bản 2.0 trở lên, ban đầu được phát triển bởi Shinya Kasatani theo hướng sử dụng Selenium Core mà không cần cài đặt Selenium vào máy chủ ứng dụng Nó được xây dựng sử dụng JavaScript do vậy mà nó có thể tương tác với DOM (Document ObjectModel), sử dụng được những cách gọi JavaScript.
Selenium cho phép ghi lại những hành động trong luồng công việc cần kiểm tra bằng các chức năng Record và Playback.
Selenium IDE cũng chứa một menu ngữ cảnh cho phép lựa chọn yếu tố giao diện người dùng từ các trình duyệt đang hiển thị trang và sau đó chọn từ một danh sách các lệnh Selenium và các thông số được xác định theo ngữ cảnh của phần giao diện người dùng lựa chọn.
- Bước 1: Vào trang http://seleniumhq.org/download để download Selenium IDE
- Bước 2: Click vào link download cho Selenium IDE Bạn sẽ nhận được tin nhắn " Firefox prevented this site (seleniumhq.org) from asking you to install software on your computer" (Firefox đã chặn phần mềm từ trang web (seleniumhq.org), bạn có chắc chắn muốn cài đặt trên máy tính của bạn không) Nếu thực hiện, click nút Allow.
- Bước 3: Một pop up xuất hiện như hình:
Hình 2.1: Pop up cài đặt Selenium
- Bước 4: Firefox thực hiện đếm ngược, nút Cài đặt chuyển sang trạng thái active, có thế click được Selenium sẽ bắt đầu được cài đặt trong máy tính giống như 1 add-on của firefox.
- Bước 5: Tiến trình cài đặt hoàn thành, hệ thống hỏi bạn có muốn khởi động lại firefox không Click vào nút Restart Firefox sẽ đóng và mở lại.
- Bước 6: K iểm tra lại phần add-on của firefox xem đã có Selenium chưa. Hiển thị như hình thì việc cài Selenium đã thành công.
Hình 2.2: Kiểm tra cài đặt Selenium thành công
4.2.2.Các Icon Của Selenium IDE
Phần này giải thích một số ký hiệu và thành phần của Selenium IDE.
Hình 2.3: Các icon của Selenium IDE
Giải thích một số ký hiệu:
- Base URL: Đây là nơi điền URL của ứng dụng web được tiến hành kiểm thử.
- Thanh trượt : Đây là thanh trượt nằm dưới nhãn trên màn hình Dùng để điều chỉnh tốc độ nhanh/chậm khi chạy test case.
- Nút : Chạy tất cả các test case.
- Nút : Chỉ chạy test case được chọn.
- Nút : Tạm dừng một test case đang chạy
- Nút : Bỏ qua một test case khi nó đã bị tạm dừng
- Nút : Nút thu được sử dụng để thu các test case qua những thao tác bạn tác động đến trang web cần kiểm thử.
- Text box Target: Kết quả mong đợi của dòng lệnh
- Text box Value: Giá trị đầu vào của dòng lệnh
Bảng Selenium sẽ lưu lại các lệnh, kết quả mong đợi và giá trị đầu vào của các lệnh.
Nếu click vào tab Source, ta có thể thấy Selenium IDE lưu trữ các test case có dạng HTML:
Hình 2.4: Test case Selenium IDE
- Khu vực phía dưới textbox Value sẽ hiển thị các log của Selenium trong
khi các test case chạy Nếu có một test case bị thất bại Selenium IDE sẽ log một lỗi.
- Log: Hiển thị thông báo lỗi và các bước được thực thi trong quá trình chạy một test case tự động Ngay cả khi ta không chọn tab log, các thông tin này vẫn hiển thị Các thông tin này giúp ích cho nhân viên kiểm thử cũng như nhân viên lập trình trong quá trình tìm ra nguyên nhân lỗi đã phát hiện trong test case (nếu có).
- UI-Element và Rollup: Tính năng nâng cao của Selenium IDE
Các test case luôn luôn có điểm bắt đầu Trong ngữ cảnh của Selenium, điều này có nghĩa là mở một trang nào đó để bắt đầu luồng công việc.
Các test case có thể không cần dựa trên những test case khác để chạy.
Một test case chỉ nên dùng để kiểm thử một chức năng nhỏ xác định trong một thời gian xác định.
4.2.3.Các Thao Tác Thực Hiện Kiểm Thử Tự Động Với Selenium
4.2.3.1.Recording_Thực Hiện Thu Một Kịch Bản Với Selenium IDE
Các bước để bắt đầu thu lại test case:
Bước 1: Vào Firefox/công cụ/chọn Selenium IDE hoặc nhấn tổ hợp phím
Hình 2.5: Thực hiện thu các trường hợp kiểm thử_1
- Bước 2: Thay đổi mục Based URL thành URL của ứng dụng cần kiểm thử Lấy ví dụ ứng dụng web cần kiểm thử có url là: http://ranking.helu.vn/
Nút thu mặc định ở trạng thái "now recording, click to stop recording".
Hình 2.6: Thực hiện thu các trường hợp kiểm thử_2
- Bước 3: Tiến hành các thao tác cần kiểm thử trên link
Ví dụ: Ta thực hiện kiểm thử tự động trường hợp đăng nhập vào trang web thành công với username/password hợp lệ.
Trong quá trình thu, Selenium IDE sẽ tự động chèn thêm các lệnh vào test case dựa trên hành động của người thực hiện Các command được tự động thêm phổ biến: o Click a link- click or clickAndWait commands o Nhập các giá trị- type command o Chọn các giá trị từ một select box - select command o Click vào các checkboxe hoặc các radio button - click command
- Bước 4: Click vào nút thu Nút thu ở trạng thái "Click to record".
- Bước 5: Save as test case
- Một số lưu ý: Sau một liên kết thường ghi lại một lệnh nhấp chuột, phải thay đổi tốc độ chạy của test case để đảm bảo test case tạm dừng cho đến khi trang mới được tải xong Nếu không, test case sẽ tiếp tục chạy trước khi các trang đã được nạp tất cả các yếu tố của nó Điều này sẽ gây ra test case bị thất bại.
4.2.3.2 Thêm Các Lệnh Khẳng Định Và Xác Nhận Với Menu Ngữ Cảnh
Các trường hợp kiểm kiểm thử các thuộc tính của một trang web sẽ đòi hỏi các lệnh xác minh (verify) và khẳng định (assert) các yếu tố trên giao diện Phần dưới đây sẽ trình bày cách thêm các lệnh này vào test case của chúng ta.
Khi thu một test case với Selenium IDE, vào trình duyệt hiển thị website ta muốn thực hiện kiểm thử, trỏ truột phải vào bất cứ vị trí nào trên trang, ta sẽ thấy các lệnh xác minh và khẳng định như hình dưới Để sử dụng các lệnh này ta chỉ việc chọn lệnh xác minh hoặc khẳng định mong muốn Các lệnh này sẽ tự động hiển thị trong test case Selenium sẽ dự đoán các lệnh, các thông số cần có trên giao diện để bổ xung các lệnh xác minh Khi chọn thông báo Show AllAvaiable Commands, sẽ có nhiều lệnh xác minh được gợi ý hơn.
Hình 2.7: Lệnh xác minh (verify) một yếu tố trên trang web
4.2.3.3.Các Thao Tác Chỉnh Sửa
Chèn vào bảng: Trong ô test case, click chuột trái tại vị trí muốn chèn lệnh. Chuột phải và chọn Insert command Selenium IDE sẽ thêm một dòng trắng phía trước dòng được chọn Nhập lệnh vào ô command, kết quả mong muốn vào ô target, giá trị đầu vào vào ô value.
Chèn vào mã nguồn: Chọn vị trí trong test case mà bạn muốn chèn lệnh. Trong ô test case, chuột trái vào vị trí muốn chèn lệnh Vào tag HTML, cần tạo 3 dòng chứa lệnh bao gồm tham số đầu tiên (nếu lệnh yêu cầu có tham số), tham số thứ hai (nếu có) Lưu test case trước khi chọn lại table view.
Chèn comment: Các comment có thể được thêm vào cho test case dễ hiểu hơn Những comment được bỏ qua khi chạy test case Comment có thể được sử dụng để thêm vào các khoảng trống dọc (một hoặc nhiều dòng trắng) vào các test case của chúng ta, khi chúng ta tạo ra các comment trắng Một lệnh trắng sẽ tạo ra 1 lỗi khi thực thi còn một comment trắng thì không tạo ra lỗi khi thực thi.
Chèn vào bảng: Chọn vị trí trong test case muốn comment Click chuột phải và chọn Insert Comment Sử dụng trường Command để nhập comment.
Chèn vào mã nguồn: Chọn vị trí trong test case muốn chèn comment. Thêm một comment có dạng HTML Ví dụ: >
Chỉnh sửa comment hay lệnh:
Chỉnh sửa qua giao diện: Chọn dòng cần chỉnh sửa và chỉnh sửa nó bằng các trường Command, Target, và Value.
Chỉnh sửa qua mã nguồn: Vào mã nguồn, chỉnh sửa trực tiếp vào dòng comment hay lệnh muốn chỉnh sửa.
4.2.3.4.Mở Và Lưu Lại Một Test Case
Chọn tập tin/ Open hoặc Save Tuy nhiên Selenium có sự khác biệt giữa các test case và test suite Để lưu lại các bước kiểm thử trên Selenium- IDE sau khi sử dụng, bạn có thể lưu lại một test case riêng lẻ, hay lưu nhiều test case dưới dạng một test suite Nếu các test case của test suite không được lưu Chương trình sẽ nhắc nhở ta lưu chúng trước khi lưu một test suite Khi mở một test case hoặc một test suite đã có, Selenium-IDE hiển thị các câu lệnh trong ô test case.
KẾT QUẢ KIỂM THỬ
Bài Toán Thử Nghiệm
Vấn đề đặt ra là kiểm thử hai chức năng cơ bản cho ứng dụng Web kiểm tra thứ hạng từ khóa của công cụ tìm kiếm goole.
Link ứng dụng: http ://ranking.helu.vn
Ứng dụng được kiểm thử trên 3 trình duyệt: Mozilla Firefox
Chức năng đăng nhập: Chức năng này là một chức năng đăng nhập thuần túy vào các ứng dụng eb thông thường giống như các ứng dụng khác như yahoo, google, các forum Các yếu tố cần kiểm tra:
Nếu đăng nhập đúng tên và mật khẩu thì tải đến trang chủ của ứng dụng email.
Nếu đăng nhập sai tên hoặc mật khẩu thì đưa ra thông báo: “Tên đăng nhập hoặc mật khẩu đăng nhập không đúng”.
Nếu nhập thiếu tên đăng nhập thì đưa ra thông báo: “Bạn phải nhập tên đăng nhập”.
Nếu nhập thiếu mật khẩu thì đưa ra thông báo: “Bạn phải nhập mật khẩu”.
Chức năng kiểm tra thứ hạng từ khóa: Ứng dụng web sẽ kiểm tra thứ hạng từ khóa của website: thutucgiahanvisa.com, để kiểm tra các từ khóa đang được đứng thứ hạng bao nhiêu của Google.
Sự Khác Nhau Giữa Kịch Bản Kiểm Thử Tự Động Và Kịch Bản Kiểm Thử Thủ Công
Trước khi thực hiện kiểm thử ứng dụng, cần phải nói thêm về sự khác nhau giữa một kịch bản kiểm thử thủ công và một kịch bản kiểm thử tự động.
Với kiểm thử thủ công, kịch bản kiểm thử chức năng thông thường được chia thành ba phần chính:
Với kiểm thử tự động, có hai phần chính mà ta cần quan tâm là test case và dữ liệu kiểm thử Trong đó:
Test case: Có thể là một lớp hoặc một hàm hoặc một lớp ghi lại một chuỗi sự kiện mà ta thao tác với ứng dụng cần kiểm thử Khác với khái niệm test case khi thực hiện kiểm thử thủ công là cứ mỗi giá trị đầu vào khác nhau thì sẽ tạo thành một testcase.
Dữ liệu kiểm thử: Là dữ liệu nhập vào để kiểm thử.
Kịch Bản Kiểm Thử Thủ Công
- Ở chức năng đăng nhập, ba phần chính cần kiểm tra là:
Giao diện: Kiểm thử các yếu tố giao diện chung như kiểm tra giao diện theo thiết kế, kiểm tra khi ấn tab, shift-tab, kiểm tra việc bị vỡ giao diện hay không, các giá trị mặc định của textbox.
Chức năng: Có bốn trường hợp chức năng cần chính cần kiểm thử: o Kiểm tra đăng nhập thành công với Tên đăng nhập/ Mật khẩu hợp lệ o Kiểm tra đăng nhập không thành công khi sử dụng sai Tên đăng nhập/ Mật khẩu o Kiểm tra thông báo khi không nhập Tên đăng nhập o Kiểm tra thông báo khi không nhập mật khẩu
Kiểm thử an toàn bảo mật: Vì chức năng đăng nhập không nhập số liệu vào cơ sở dữ liệu do vậy ta có thể bỏ qua không kiểm tra một số lỗi an toàn thông tin và chỉ cần kiểm tra một số lỗi sau: o Lỗi SQL Injection o Lỗi User Enumeration o Kiểm tra lỗ hổng cho phép dò đoán mật khẩu
5.3.2 Chức năng kiểm tra thứ hạng từ khóa
Kiểm tra thứ hạng từ khóa là một bước quan trọng trong quy trình làm SEO bởi nó đánh giá kết quả SEO của bạn có thành công hay không để từ đó giúp ta có thể khắc phục kịp thời Trong bài viết này mình sẽ liệt kê một số cách giúp bạn kiểm tra thứ hạng từ khóa của website nhanh chóng và chính xác.
Chức năng kiểm tra từ khóa:
Giao diện: K iểm tra giao diện chung
Chức năng: phải kiểm tra được các trường hợp chính: o Kiểm tra thành công xếp hạng từ khóa o Kiểm tra thông báo lỗi khi không nhập từ khóa vào kiểm tra
Giao diện: K iểm tra giao diện chung, kiểm tra các combo-box
Chức năng: Kịch bản kiểm thử phải đáp ứng bao quát được một số chức năng: o Kiểm tra khi check thứ hạng từ khóa phải nhập thông tin tên miền, danh sách từ khóa. o Kiểm tra khi check thứ hạng từ khóa nếu không nhập thông tin sẽ báo lỗi o Kiểm tra khi nhập quá 10 từ khóa ứng dụng sẽ tự loại bỏ các từ khóa thừa và kiểm tra 10 từ còn lại. o Kiểm tra việc kiểm tra nhiều từ khóa
5.3.3 Kịch bản kiểm thử tự động
Do những hạn chế về kinh nghiệm và thời gian tìm hiểu tool và sự phức tạp của ứng dụng check thứ hạng từ khóa, báo cáo trình bày demo một số case cơ bản của chức năng đăng nhập bằng hai công cụ là Selenium IDE và Selenium RC và thực hiện báo cáo kết quả dựa trên framework kiểm thử JUnit.
- Đăng nhập thành công bằng firefox.
Hình 3.1: Test case đăng nhập bằng Firefox import com.thoughtworks.selenium.*; import org.junit.After; import org.junit.Before; import org.junit.Test; public class DangNhapFirefox { public Selenium selenium;
@Before public void setUp() throws Exception { selenium = new DefaultSelenium("localhost", 4444,
"*firefox", "https://mail.viettel.com.vn/"); selenium.start();
@Test public void testDangnhapjunit4() throws Exception
{ selenium.open("/"); selenium.type("name=user",
"trangnh7"); selenium.type("name=password", "meo@Dien07"); selenium.click("id=button"); selenium.waitForPageToLoad("30000");
@After public void tearDown() throws Exception { selenium.stop();
Mã nguồn sinh báo cáo:
1
link=Đăng nhập
name=customer_email
thunguyen5995@gmail.com
name=customer_password
2
Visa 3 tháng Gia hạn visa 3 tháng
Gia hạn visa 3 tháng nhiều lần Xin visa sân bay Gia hạn visa du lịch
Xin visa du lịch giá rẻ
id=js-contact-btn
css=#review_submit > div.modal-footer > button.btn.btn- default
Test case Kiểm tra thứ hạng từ khóa
Hình 3: Báo cáo kết quả kiểm thử