Ứng dụng công cụ test tự động
kiểm thử website
Phạm Tiến Hùng
phamtienhung@vnpt.vn
Web App Automated Testing - Hungpt 105/01/2018
Nội dung
1. Giới thiệu về kiểm thử tự động
2. Bắt đầu với kiểm thử tự động
1. Lựa chọn test case
2. Lựa chọn công cụ
3. Lựa chọn Framework
3. Giới thiệu công cụ kiểm thử tự động
 Selenium
 Katalon Studio
4. QA
Web App Automated Testing - Hungpt 205/01/2018
1. Giới thiệu về kiểm thử tự động
Kiểm thử thủ công
Kiểm thử tự động
Công cụ kiểm thử tự động
05/01/2018 Web App Automated Testing - Hungpt 3
1. Giới thiệu về kiểm thử tự động
2. Lập kế hoạch và
viết test case
05/01/2018 Web App Automated Testing - Hungpt 4
Kiểm thử thủ công
3. Thực hiện test
1. Tìm hiểu sản
phẩm
4. Đưa ra kết quả test
và phản hồi
Manual testing, Agile 1 tech
1. Giới thiệu về kiểm thử tự động
05/01/2018 Web App Automated Testing - Hungpt 5
Kiểm thử thủ công
Kiểm thử
thủ công
Ưu điểm Nhược điểm
• Chi phí thấp trong thời gian
ngắn
• Dễ tìm thấy các vấn đề người
dùng thực sự gặp phải
• Linh động
• Chi phí cao trong thời
gian dài
• Nhàm chán, dễ bỏ sót lỗi
• Không thể tái sử dụng
1. Giới thiệu về kiểm thử tự động
05/01/2018 Web App Automated Testing - Hungpt 6
Kiểm thử tự động
Irfan Ebrahim,
Waterfall vs. Agile vs. Lean Explained in 1 Picture
1. Giới thiệu về kiểm thử tự động
• Công cụ thực hiện test theo kịch bản được định nghĩa trước và so sánh kết quả
• Quản lý kết quả và báo cáo bằng công cụ
• Cần biết kiến thức về công cụ kiểm thử tự động hoặc lập trình
05/01/2018 Web App Automated Testing - Hungpt 7
Kiểm thử tự động
1. Giới thiệu về kiểm thử tự động
• Rút ngắn thời gian đưa sản
phẩm ra thị trường
• Có thể tiết kiệm chi phí trong
thời gian dài
• Thú vị hơn làm thủ công
• Giúp tăng Test Coverage
05/01/2018 Web App Automated Testing - Hungpt 8
Kiểm thử tự động
Nhược điểm
Ưu điểm
• Mất nhiều thời gian cài đặt
ban đầu.
• Khó mở rộng, bảo trì
• Không thể áp dụng cho 100%
các test case
1. Giới thiệu về kiểm thử tự động
• Selenium
• Katalon Studio
05/01/2018 Web App Automated Testing - Hungpt 9
Công cụ kiểm thử tự động
2. Bắt đầu với Kiểm thử tự động
2.1. Lựa chọn test case
2.2. Lựa chọn công cụ
2.3. Lựa chọn automation test framework
05/01/2018 Web App Automated Testing - Hungpt 10
2. Bắt đầu với Kiểm thử tự động
Ghi nhớ: Không bao giờ có thể tự động hóa 100% các bài test
1. Test mà yêu cầu hiếm khi bị thay đổi
2. Test cần thực hiện lặp lại nhiều lần
3. Test chạy trên nhiều môi trường
4. Thực thi performance test
5. Test có số lượng đầu vào quá nhiều
05/01/2018 Web App Automated Testing - Hungpt 11
2.1. Lựa chọn test case
2. Bắt đầu với Kiểm thử tự động
Cân nhắc những điểm mấu chốt sau để ra quyết định lựa chọn công cụ phù hợp:
1. Khả năng hỗ trợ nền tảng phần mềm và công nghệ của sản phẩm.
2. Yêu cầu về kỹ năng của tester
3. Tính năng phong phú nhưng cũng phải dễ để sử dụng
05/01/2018 Web App Automated Testing - Hungpt 12
2.2. Lựa chọn công cụ
2. Bắt đầu với Kiểm thử tự động
1. Modular Automation Framework
2. Data Driven Automation Framework
3. Keyword Driven Automation Framework
4. Behavior Driven Development Framework
5. Hybrid Automation Framework
05/01/2018 Web App Automated Testing - Hungpt 13
2.3. Lựa chọn automation test framework
2. Bắt đầu với Kiểm thử tự động
Modular Automation Framework
- Chia test script thành các module độc lập
- Xâu chuỗi test script cho các module độc lập
thành test script cho module lớn hơn.
05/01/2018 Web App Automated Testing - Hungpt 14
2.3. Lựa chọn automation test framework
Modular Driven Framework, Toolsqa.com
2. Bắt đầu với Kiểm thử tự động
Data Driven Automation Framework
- Tách dữ liệu test khỏi test script.
05/01/2018 Web App Automated Testing - Hungpt 15
2.3. Lựa chọn automation test framework
Modular Driven Framework, Toolsqa.com
2. Bắt đầu với Kiểm thử tự động
Keyword Driven Automation Framework
- Tách dữ liệu test khỏi test script.
- Tách logic test khỏi test script.
05/01/2018 Web App Automated Testing - Hungpt 16
2.3. Lựa chọn automation test framework
Modular Driven Framework, Toolsqa.com
2. Bắt đầu với Kiểm thử tự động
Hybrid Automation Framework
- Kết hợp các framework với nhau
05/01/2018 Web App Automated Testing - Hungpt 17
2.3. Lựa chọn automation test framework
Modular Driven Framework, Toolsqa.com
2. Bắt đầu với Kiểm thử tự động
Behavior Driven Development Framework
- Viết test case theo hướng BDD
05/01/2018 Web App Automated Testing - Hungpt 18
2.3. Lựa chọn automation test framework
A Universal Automation Framework based
on BDD Cucumber and Ruby on Rails
, Pham Quoc Anh
3. Giới thiệu công cụ kiểm thử tự
động
3.1. Selenium
3.2. Katalon Studio
05/01/2018 Web App Automated Testing - Hungpt 19
3. Giới thiệu công cụ kiểm thử tự động
05/01/2018 Web App Automated Testing - Hungpt 20
3.1. Katalon Studio
3. Giới thiệu công cụ kiểm thử tự động
05/01/2018 Web App Automated Testing - Hungpt 21
3.1. Katalon Studio
3. Giới thiệu công cụ kiểm thử tự động
05/01/2018 Web App Automated Testing - Hungpt 22
3.1. Katalon Studio
Ưu điểm nổi bật
Không yêu cầu
kỹ năng coding
Test web app và mobile app Đầy đủ tính năng
tích hợp sẵn
Tài liệu online Miễn phí sử dụng
3. Giới thiệu công cụ kiểm thử tự động
DEMO
- Công cụ: Katalon Studio (v4.8.0)
- Test case:
- Đăng nhập vào hệ thống SmartCloud
- Tạo máy ảo
- Thanh toán
- Đăng xuất
05/01/2018 Web App Automated Testing - Hungpt 23
3.1. Katalon Studio
3. Giới thiệu công cụ kiểm thử tự động
Khi nào nên chọn Katalon
• Test web hoặc mobile app
• Có khả năng scripting
• Công cụ miễn phí và dễ sử dụng
05/01/2018 Web App Automated Testing - Hungpt 24
3.1. Katalon Studio
3. Giới thiệu công cụ kiểm thử tự động
Công cụ tích hợp
• GIT
• CI (Jenkins)
05/01/2018 Web App Automated Testing - Hungpt 25
3.1. Katalon Studio
3. Giới thiệu 3 công cụ kiểm thử tự động
05/01/2018 Web App Automated Testing - Hungpt 26
3.2. Selenium
Phát triển bởi Jason Huggins năm 2004
Open source
Tập trung vào test ứng dụng web
Đa browser, Đa nền tảng, Đa ngôn ngữ lập
trình.
3. Giới thiệu 3 công cụ kiểm thử tự động
05/01/2018 Web App Automated Testing - Hungpt 27
3.2. Selenium
3. Giới thiệu 3 công cụ kiểm thử tự động
Ưu điểm nổi bật
05/01/2018 Web App Automated Testing - Hungpt 28
3.2. Selenium
Đa trình duyệt, đa nền tảng
Apache 2.0
license
Mã nguồn mở Cộng đồng mạnh Test song song
3. Giới thiệu công cụ kiểm thử tự động
DEMO
- Công cụ: Visual Studio 2017
- Ngôn ngữ lập trình: C#
- Test case:
- Đăng nhập vào hệ thống SmartCloud
05/01/2018 Web App Automated Testing - Hungpt 29
3.2. Selenium
3. Giới thiệu công cụ kiểm thử tự động
Khi nào nên chọn Selenium
• Test ứng dụng web
• Công cụ miễn phí
• Cộng đồng phát triển mạnh
• Biết lập trình và tích hợp các thư viện mã nguồn
mở khác
05/01/2018 Web App Automated Testing - Hungpt 30
3.2. Selenium
3. Giới thiệu công cụ kiểm thử tự động
Khó khăn khi áp dụng
• Kỹ năng lập trình
• Thuyết phục áp dụng
• Thay đổi nghiệp vụ
• Quy trình
05/01/2018 Web App Automated Testing - Hungpt 31
3.2. Selenium
3. Giới thiệu công cụ kiểm thử tự động
Công cụ tích hợp
• Cucumber (JAVA)/Specflow (.NET)
• CI (Jenkins, VSTS)
• Messaging
05/01/2018 Web App Automated Testing - Hungpt 32
3.2. Selenium
4. Q/A
05/01/2018 Mapping to Relational Database - Hungpt 33
Cảm ơn đã lắng nghe !
05/01/2018 Mapping to Relational Database - Hungpt 34

Ứng dụng công cụ test tự động kiểm thử website

  • 1.
    Ứng dụng côngcụ test tự động kiểm thử website Phạm Tiến Hùng phamtienhung@vnpt.vn Web App Automated Testing - Hungpt 105/01/2018
  • 2.
    Nội dung 1. Giớithiệu về kiểm thử tự động 2. Bắt đầu với kiểm thử tự động 1. Lựa chọn test case 2. Lựa chọn công cụ 3. Lựa chọn Framework 3. Giới thiệu công cụ kiểm thử tự động  Selenium  Katalon Studio 4. QA Web App Automated Testing - Hungpt 205/01/2018
  • 3.
    1. Giới thiệuvề kiểm thử tự động Kiểm thử thủ công Kiểm thử tự động Công cụ kiểm thử tự động 05/01/2018 Web App Automated Testing - Hungpt 3
  • 4.
    1. Giới thiệuvề kiểm thử tự động 2. Lập kế hoạch và viết test case 05/01/2018 Web App Automated Testing - Hungpt 4 Kiểm thử thủ công 3. Thực hiện test 1. Tìm hiểu sản phẩm 4. Đưa ra kết quả test và phản hồi Manual testing, Agile 1 tech
  • 5.
    1. Giới thiệuvề kiểm thử tự động 05/01/2018 Web App Automated Testing - Hungpt 5 Kiểm thử thủ công Kiểm thử thủ công Ưu điểm Nhược điểm • Chi phí thấp trong thời gian ngắn • Dễ tìm thấy các vấn đề người dùng thực sự gặp phải • Linh động • Chi phí cao trong thời gian dài • Nhàm chán, dễ bỏ sót lỗi • Không thể tái sử dụng
  • 6.
    1. Giới thiệuvề kiểm thử tự động 05/01/2018 Web App Automated Testing - Hungpt 6 Kiểm thử tự động Irfan Ebrahim, Waterfall vs. Agile vs. Lean Explained in 1 Picture
  • 7.
    1. Giới thiệuvề kiểm thử tự động • Công cụ thực hiện test theo kịch bản được định nghĩa trước và so sánh kết quả • Quản lý kết quả và báo cáo bằng công cụ • Cần biết kiến thức về công cụ kiểm thử tự động hoặc lập trình 05/01/2018 Web App Automated Testing - Hungpt 7 Kiểm thử tự động
  • 8.
    1. Giới thiệuvề kiểm thử tự động • Rút ngắn thời gian đưa sản phẩm ra thị trường • Có thể tiết kiệm chi phí trong thời gian dài • Thú vị hơn làm thủ công • Giúp tăng Test Coverage 05/01/2018 Web App Automated Testing - Hungpt 8 Kiểm thử tự động Nhược điểm Ưu điểm • Mất nhiều thời gian cài đặt ban đầu. • Khó mở rộng, bảo trì • Không thể áp dụng cho 100% các test case
  • 9.
    1. Giới thiệuvề kiểm thử tự động • Selenium • Katalon Studio 05/01/2018 Web App Automated Testing - Hungpt 9 Công cụ kiểm thử tự động
  • 10.
    2. Bắt đầuvới Kiểm thử tự động 2.1. Lựa chọn test case 2.2. Lựa chọn công cụ 2.3. Lựa chọn automation test framework 05/01/2018 Web App Automated Testing - Hungpt 10
  • 11.
    2. Bắt đầuvới Kiểm thử tự động Ghi nhớ: Không bao giờ có thể tự động hóa 100% các bài test 1. Test mà yêu cầu hiếm khi bị thay đổi 2. Test cần thực hiện lặp lại nhiều lần 3. Test chạy trên nhiều môi trường 4. Thực thi performance test 5. Test có số lượng đầu vào quá nhiều 05/01/2018 Web App Automated Testing - Hungpt 11 2.1. Lựa chọn test case
  • 12.
    2. Bắt đầuvới Kiểm thử tự động Cân nhắc những điểm mấu chốt sau để ra quyết định lựa chọn công cụ phù hợp: 1. Khả năng hỗ trợ nền tảng phần mềm và công nghệ của sản phẩm. 2. Yêu cầu về kỹ năng của tester 3. Tính năng phong phú nhưng cũng phải dễ để sử dụng 05/01/2018 Web App Automated Testing - Hungpt 12 2.2. Lựa chọn công cụ
  • 13.
    2. Bắt đầuvới Kiểm thử tự động 1. Modular Automation Framework 2. Data Driven Automation Framework 3. Keyword Driven Automation Framework 4. Behavior Driven Development Framework 5. Hybrid Automation Framework 05/01/2018 Web App Automated Testing - Hungpt 13 2.3. Lựa chọn automation test framework
  • 14.
    2. Bắt đầuvới Kiểm thử tự động Modular Automation Framework - Chia test script thành các module độc lập - Xâu chuỗi test script cho các module độc lập thành test script cho module lớn hơn. 05/01/2018 Web App Automated Testing - Hungpt 14 2.3. Lựa chọn automation test framework Modular Driven Framework, Toolsqa.com
  • 15.
    2. Bắt đầuvới Kiểm thử tự động Data Driven Automation Framework - Tách dữ liệu test khỏi test script. 05/01/2018 Web App Automated Testing - Hungpt 15 2.3. Lựa chọn automation test framework Modular Driven Framework, Toolsqa.com
  • 16.
    2. Bắt đầuvới Kiểm thử tự động Keyword Driven Automation Framework - Tách dữ liệu test khỏi test script. - Tách logic test khỏi test script. 05/01/2018 Web App Automated Testing - Hungpt 16 2.3. Lựa chọn automation test framework Modular Driven Framework, Toolsqa.com
  • 17.
    2. Bắt đầuvới Kiểm thử tự động Hybrid Automation Framework - Kết hợp các framework với nhau 05/01/2018 Web App Automated Testing - Hungpt 17 2.3. Lựa chọn automation test framework Modular Driven Framework, Toolsqa.com
  • 18.
    2. Bắt đầuvới Kiểm thử tự động Behavior Driven Development Framework - Viết test case theo hướng BDD 05/01/2018 Web App Automated Testing - Hungpt 18 2.3. Lựa chọn automation test framework A Universal Automation Framework based on BDD Cucumber and Ruby on Rails , Pham Quoc Anh
  • 19.
    3. Giới thiệucông cụ kiểm thử tự động 3.1. Selenium 3.2. Katalon Studio 05/01/2018 Web App Automated Testing - Hungpt 19
  • 20.
    3. Giới thiệucông cụ kiểm thử tự động 05/01/2018 Web App Automated Testing - Hungpt 20 3.1. Katalon Studio
  • 21.
    3. Giới thiệucông cụ kiểm thử tự động 05/01/2018 Web App Automated Testing - Hungpt 21 3.1. Katalon Studio
  • 22.
    3. Giới thiệucông cụ kiểm thử tự động 05/01/2018 Web App Automated Testing - Hungpt 22 3.1. Katalon Studio Ưu điểm nổi bật Không yêu cầu kỹ năng coding Test web app và mobile app Đầy đủ tính năng tích hợp sẵn Tài liệu online Miễn phí sử dụng
  • 23.
    3. Giới thiệucông cụ kiểm thử tự động DEMO - Công cụ: Katalon Studio (v4.8.0) - Test case: - Đăng nhập vào hệ thống SmartCloud - Tạo máy ảo - Thanh toán - Đăng xuất 05/01/2018 Web App Automated Testing - Hungpt 23 3.1. Katalon Studio
  • 24.
    3. Giới thiệucông cụ kiểm thử tự động Khi nào nên chọn Katalon • Test web hoặc mobile app • Có khả năng scripting • Công cụ miễn phí và dễ sử dụng 05/01/2018 Web App Automated Testing - Hungpt 24 3.1. Katalon Studio
  • 25.
    3. Giới thiệucông cụ kiểm thử tự động Công cụ tích hợp • GIT • CI (Jenkins) 05/01/2018 Web App Automated Testing - Hungpt 25 3.1. Katalon Studio
  • 26.
    3. Giới thiệu3 công cụ kiểm thử tự động 05/01/2018 Web App Automated Testing - Hungpt 26 3.2. Selenium Phát triển bởi Jason Huggins năm 2004 Open source Tập trung vào test ứng dụng web Đa browser, Đa nền tảng, Đa ngôn ngữ lập trình.
  • 27.
    3. Giới thiệu3 công cụ kiểm thử tự động 05/01/2018 Web App Automated Testing - Hungpt 27 3.2. Selenium
  • 28.
    3. Giới thiệu3 công cụ kiểm thử tự động Ưu điểm nổi bật 05/01/2018 Web App Automated Testing - Hungpt 28 3.2. Selenium Đa trình duyệt, đa nền tảng Apache 2.0 license Mã nguồn mở Cộng đồng mạnh Test song song
  • 29.
    3. Giới thiệucông cụ kiểm thử tự động DEMO - Công cụ: Visual Studio 2017 - Ngôn ngữ lập trình: C# - Test case: - Đăng nhập vào hệ thống SmartCloud 05/01/2018 Web App Automated Testing - Hungpt 29 3.2. Selenium
  • 30.
    3. Giới thiệucông cụ kiểm thử tự động Khi nào nên chọn Selenium • Test ứng dụng web • Công cụ miễn phí • Cộng đồng phát triển mạnh • Biết lập trình và tích hợp các thư viện mã nguồn mở khác 05/01/2018 Web App Automated Testing - Hungpt 30 3.2. Selenium
  • 31.
    3. Giới thiệucông cụ kiểm thử tự động Khó khăn khi áp dụng • Kỹ năng lập trình • Thuyết phục áp dụng • Thay đổi nghiệp vụ • Quy trình 05/01/2018 Web App Automated Testing - Hungpt 31 3.2. Selenium
  • 32.
    3. Giới thiệucông cụ kiểm thử tự động Công cụ tích hợp • Cucumber (JAVA)/Specflow (.NET) • CI (Jenkins, VSTS) • Messaging 05/01/2018 Web App Automated Testing - Hungpt 32 3.2. Selenium
  • 33.
    4. Q/A 05/01/2018 Mappingto Relational Database - Hungpt 33
  • 34.
    Cảm ơn đãlắng nghe ! 05/01/2018 Mapping to Relational Database - Hungpt 34