Sử dụng thư viện nguồn mở – Bài toán pros and cons muôn thủa

Tại IVS.AT (thuộc FPT Software), đội dự án đã thực hiện nhiều dự án Automation Test cho các loại ứng dụng khác nhau. Đa phần để thực hiện các dự án Automation này cần viết code dựa trên các thư viện mã nguồn mở hoặc sử dụng các công cụ Automation thương mại trên thị trường có kèm license. Việc này mang lại những paint-point mà bất cứ ai đã từng làm dự án đều gặp phải: Nếu sử dụng thư viện nguồn mở, sẽ không nhanh chóng và dễ dàng để khởi động một dự án automation.

Nó thường bắt đầu bằng việc xây dựng Automation Framework, sau đó scripter dựa trên framework này để code ra test scripts, cuối cùng là deploy để chạy và maintain script mỗi khi có thay đổi.

Tất cả những việc trên đòi hỏi người scripter phải có kỹ năng lập trình thuần thục (đây là kỹ năng của Dev mà các Tester không mạnh) và đồng thời hiểu biết rõ về Testing cũng như nắm rõ về nghiệp vụ của ứng dụng cần test (đây là kỹ năng của một Tester).

Như vậy, Automation scripter là tổng hợp của 2 trong 1 Dev và Test. Để đào tạo ra một Automation Scripter tốt mà lại yêu nghề là một việc không hề đơn giản và mất nhiều thời gian.

Nếu sử dụng các tool thương mại, sẽ có điểm lợi về mặt thời gian khởi động và sự hỗ trợ giải quyết vấn đề của đội hỗ trợ, bù lại chi phí License của tool thường rất cao và sẽ được tính trực tiếp vào giá bán dịch vụ cho khách hàng. Đây sẽ là điểm bất lợi cho dự án trong nỗ lực cung cấp dịch vụ có giá cạnh tranh với các đối thủ khác.

Và khi hỏi về sự ra đời của akaAT, tác giả Nguyễn Duy Vinh cho biết: “Anh nhớ CEO Phạm Minh Tuấn từng chia sẻ, trong chiến lược đi lên World Class, bên cạnh softskill, hard skill thì đội ngũ cũng cần được trang bị vũ khí hạng nặng để tăng năng suất, tăng chất lượng đưa tới khách hàng, và chiến dịch tích lũy kinh nghiệm thành sản phẩm, khởi nghiệp trong lòng công ty đang sôi sục ở mọi đơn vị, mọi mặt trận.

Với những kinh nghiệm đã tích lũy được và liên tục học hỏi từ các công cụ hiện có trên thị trường, akaAT ra đời với sứ mệnh giải quyết những paint point mà các Dev – Test thường gặp phải, cung cấp thêm một vũ khí góp phần tăng năng suất, giảm giá thành, tăng tính cạnh tranh để phục vụ khách hàng ngày càng tốt hơn.”

akaAT – Giải pháp tự động hóa cho mọi vấn đề Dev

akaAT là công cụ hỗ trợ tạo Auto Test script nhanh, không cần có nhiều kỹ năng các Developer, Tester vẫn thực hiện được. akaAT được phát triển dựa trên các thư viện tự động hóa mã nguồn mở phổ biến hiện tại như Selenium(WEB), Appium(Mobile), WinappDriver(Desktop)…; cung cấp giao điện trực quan để các Tester/Scripter có thể tạo test scripts và khởi chạy test nhanh chóng mà không phải code.

akaAT cung cấp giao diện trực quan để Tester và Automation Tester có thể tạo tests script nhanh bằng cách ghép các Keyword lại với nhau thành kịch bản test mong muốn mà không cần phải code. akaAT tương tác và hỗ trợ test trên nhiều platform, phù hợp với các loại dự án khác nhau, từ Web, Mobile, Desktop tới Web service, APIs; giúp tăng năng suất dự án, từ đó cũng sẽ mang lại lợi ích cho cả dự án lẫn khách hàng. Các Tester có thể sử dụng tool này để tạo Automation test script phục vụ công việc, vừa tăng năng suất vừa có thời gian tập trung nâng cao kỹ năng Test của mình.

Ở version hiện tại akaAT cung cấp các tính năng chính sau:

  • Codeless GUI: Giao diện GUI hỗ trợ Tester tạo test script đơn giản chỉ bằng ghép các keyword lại với nhau.
  • Multiplatform: Tạo testscript cho các loại ứng dụng khác nhau, Web App/Mobile App/Desktop App/ Web Service(API).
  • Parallel Running: Hỗ trợ cấu hình để chạy test song song, giảm thời gian chạy.
  • DevOps Ready: Ứng dụng khả năng chạy từ commandline, sẵn sàng để tích hợp vào các hệ thống CI/CD và DevOps phổ biến.

akaAT phù hợp áp dụng vào các dự án phát triển theo mô hình Agile: script Automation test có thể được tạo ngay sau khi ứng dụng lên khung Prototype mà chưa cần hoàn thiện; hoặc khi áp dụng vào các dự án Regression Test: dự án nâng cấp version mới liên tục, cần test đi test lại để đảm bảo các tính năng trước đó không bị lỗi. Với sự trợ giúp của akaAT, dự án có thể tiết kiệm từ 30%-50% effort so với test bằng tay, và có thể đạt tỉ lệ tiết kiệm effort lớn hơn nếu được sử dụng một cách hiệu quả.

Thành công bước đầu – Chào sân với dự án 5 Tỷ

Đội dự án đã khởi động tạo sản phẩm từ đầu năm 2020 và đã có bản release đầu tiên đưa tới tay người dùng cuối. Hiện tại akaAT đã được sử dụng ở các dự án Automation Test tại IVS. Tool đang được submit chương trình SKU share tới các dự án trong FPT Software nhằm sử dụng theo chính sách trial miễn phí của tool.

Đội sản phẩm triển khai hướng dẫn cách dùng cho các dự án. Ảnh: ĐCVV.

Song song với màn chào sân trên khắp các diễn đàn SKU vào tháng 4, tháng 5 và tháng 6 của akaAT. Vào ngày 01/07, IVS đã chính thức ký hợp đồng license và services với khách hàng là một tập đoàn bảo hiểm quốc tế tại Việt Nam (viết tắt là W). Đây là hợp đồng license về akaAT (Automation Test Tool) có giá trị lớn nhất ở IVS/ FPT Software từ trước đến nay.

Với sự hợp tác giữa IVS và tập đoàn bảo hiểm W, IVS sẽ mang lại giải pháp tự động hóa quy trình kiểm thử các dòng sản phẩm của tập đoàn bảo hiểm. Dự kiến, tập đoàn bảo hiểm W sẽ tiết kiệm được hơn 100 man-months trong năm 2020 và tiết kiệm hơn 200 man-months về kiểm thử truyền thống trong năm 2021.

Tự tin về akaAT, anh Vũ Thùy, giám đốc Independent Verification Services (IVS), đề cập “akaAT là công cụ chiến lược của IVS trong năm 2020. Tôi hy vọng với phát sung khởi đầu tại W, akaAT sẽ được triển rộng rãi không chỉ cho khách hàng mà còn phục vụ tốt cho các dự án có thể áp dụng kiểm thử tự động. akaAT hướng tới mục tiêu là một công cụ DX tại FPT Software năm 2020.”

Trong thời gian tới, đội dự án akaAT sẽ không ngừng bổ sung tính năng và cải tiến dựa trên roadmap phát triển và feedback từ người dùng, cụ thể như: Tính năng hỗ trợ nhận diện Object Locator; Recorder ghi lại hành động người dùng tự động tạo ra test script; Inject Custom code cho các hành động phức tạp; Integrate vào các Testmanagement tool. Với việc hoàn thiện/bổ xung các tính năng cho sản phẩm, đội dự án akaAT hướng tới phục vụ cho ngày càng nhiều các dự án khác nhau trong FPT và từng bước public sản phẩm ra cộng đồng Automation Test tại Việt Nam.

Thảo Nguyên

Tin liên quan: