Hướng dẫn how do i make an automation framework from scratch? - làm cách nào để tạo khung tự động hóa từ đầu?

1. Cấu trúc, tổ chức và thiết lập kiểm soát nguồn

Bắt đầu bằng cách thiết lập và tổ chức cấu trúc thư mục cho tài sản thử nghiệm của bạn. Bạn sẽ muốn giữ các tài sản khác nhau tách biệt với nhau, chẳng hạn như các bài kiểm tra, tiêu chí ánh xạ tên và tập lệnh và tạo các tệp mà bạn biết bạn sẽ cần trong mỗi tệp. Ví dụ: trong thư mục ‘Scripts của bạn, bạn sẽ muốn tạo các tệp cho từng loại tập lệnh tập lệnh, hành động, tiện ích và xác minh. Cũng đảm bảo tạo một tệp cho dữ liệu của bạn.

Cấu trúc tài sản của bạn theo cách này sẽ cho phép chúng được các thành viên trong nhóm của bạn tham chiếu nhanh chóng và sẽ đảm bảo các bài kiểm tra của bạn ổn định khi các bản cập nhật được thực hiện. Khi cấu trúc tài sản của bạn theo kiểu này, bạn có thể xem lại dự án bất cứ lúc nào mà không cần phải sắp xếp nhiều thông tin. Điều này cũng sẽ làm tăng các thư mục thử nghiệm của bạn, cho phép bạn sao chép chúng trên một dự án.

Khi đi qua các bước đầu tiên này, hãy đảm bảo bạn sử dụng hệ thống quản lý kiểm soát nguồn (SCM) như Git hoặc Mercurial để lưu trữ công việc của bạn. Trong trường hợp một sai lầm được thực hiện, bạn đã thắng muốn mất công việc hoặc thời gian đó. Các công cụ như sẽ cho phép bạn quay lại nếu cần.

Khung thử nghiệm tự động là gì?

Khung thử nghiệm là một bộ hướng dẫn, hoặc quy tắc, được sử dụng để tạo và thiết kế các trường hợp thử nghiệm. Họ cung cấp một ngôn ngữ kiểm tra tiêu chuẩn hóa và cấu trúc báo cáo cho các ứng dụng được kiểm tra và có thể giảm chi phí bảo trì kiểm tra. Frameworks sẽ liên kết các thử nghiệm trở lại các phần khác của LifeCycle phát triển phần mềm (SDLC), chẳng hạn như các yêu cầu và lỗi, cho phép các nhóm tìm và sửa lỗi nhanh hơn. are a set of guidelines, or rules, used to create and design test cases. They provide a standardized test language and reporting structure for applications under test and can reduce test maintenance costs. Frameworks will link tests back to other parts of the software development lifecycle (SDLC), such as requirements and defects, enabling teams to find and fix bugs quicker.

Tuy nhiên, không phải tất cả các khung thử nghiệm là các khung tự động hóa - một điều quan trọng để ghi nhớ khi phát triển cái sau. Khung thử nghiệm bao gồm tất cả các công cụ và thực tiễn dành cho phát triển ứng dụng, từ các yêu cầu được nêu cho ứng dụng của bạn, các hoạt động thử nghiệm bao gồm cả kiểm tra thủ công và tự động, đến môi trường để chạy thử nghiệm của bạn và nhiều hơn nữa.

Khung thử nghiệm tự động tập trung cụ thể vào việc tối ưu hóa các quy trình tự động. Chúng tạo điều kiện cho các chu kỳ nhanh hơn thông qua khả năng tái sử dụng thử nghiệm và thông qua việc tăng tốc độ tạo và bảo trì thử nghiệm bằng cách tách dữ liệu thử nghiệm khỏi logic. Có nhiều loại khung thử nghiệm tự động, vì vậy, nó rất quan trọng mà bạn áp dụng một loại phù hợp với bạn. Tuy nhiên, việc sử dụng một cấu trúc tốt, có thể tăng hiệu quả của nhóm của bạn bằng cách cải thiện độ chính xác của thử nghiệm, tối đa hóa phạm vi kiểm tra và giảm chi phí và bảo trì-cuối cùng mang lại cho bạn lợi tức đầu tư cao hơn (ROI) cho những nỗ lực của bạn. focus specifically on optimizing automated processes. They facilitate faster cycles through test reusability and through speeding up test creation and maintenance by separating test data from logic. There are many types of automated testing frameworks, so it’s crucial you adopt one that is right for you. Utilizing one that is well-structured however, can increase your team’s efficiency by improving test accuracy, maximizing test coverage, and lowering costs and maintenance – ultimately giving you a higher return on investment (ROI) for your efforts.

Thực hiện theo bảy bước tiếp theo, chúng tôi nằm trong tờ giấy trắng này để xây dựng cho mình một khung thử nghiệm tự động mạnh mẽ và thiết lập cho bạn và nhóm của bạn để thành công lâu dài.

2. Làm quen với ứng dụng

Bước hai là bắt đầu làm quen với ứng dụng - ngoài những gì các yêu cầu có thể cho bạn biết. Đọc các tài liệu phác thảo những gì ứng dụng nên và nên làm sẽ chỉ đưa bạn đến nay. Trong bước này, bạn muốn bị bẩn tay.

Tiến hành thử nghiệm thăm dò để cung cấp cho bạn một ý tưởng về cách các quy trình nội bộ của hệ thống được thiết lập. Bài tập này sẽ đảm bảo bạn biết cách ứng dụng hoạt động. Khi bạn đã thực hiện điều này, bạn sẽ cần tạo một hệ thống cho hoặc cập nhật, cách bạn tìm thấy các đối tượng UI của mình. Tùy thuộc vào công cụ bạn sử dụng, điều này có thể có nghĩa là bạn cần tạo các thuộc tính ánh xạ tên cơ bản hoặc viết tập lệnh cho các hành động cần thiết để xác định các đối tượng.

Chìa khóa cho bước này là ghi lại hành động của bạn. Ghi chú về yêu cầu của bạn sẽ là gì và cách tài sản tự động hóa của bạn sẽ kiểm tra chúng.

3. Xác định môi trường thử nghiệm của bạn và thu thập dữ liệu

Tiếp theo, thu thập dữ liệu bạn dự định sử dụng cho các thử nghiệm và thiết lập môi trường của bạn. Điều quan trọng đối với thành công của bạn là bạn thiết lập các cấu hình có thể được chạy trong nhiều môi trường. Đó là thời gian để chấp nhận rằng những người xử lý sự kiện là người bạn tốt nhất của bạn.

Một trình xử lý sự kiện là một hàm bao gồm mã, hoạt động như một người nghe, chờ đợi một sự kiện xảy ra để kích hoạt một tập lệnh hoặc một loạt các tập lệnh. Hãy tưởng tượng ứng dụng ngân hàng trung bình của bạn. Sau một số phút nhất định của thời gian nhàn rỗi, một thông báo sẽ bật lên hỏi xem bạn có cần thêm thời gian không. Nếu bạn không trả lời, nó sẽ tự động đăng nhập cho bạn vì lý do bảo mật.

Trình xử lý sự kiện của bạn ở đây là chức năng kích hoạt các tập lệnh cho thông báo nhàn rỗi và quy trình đăng xuất. Bất kể môi trường nào bạn đang sử dụng, có thể Windows 10 hoặc Windows 7, bạn sẽ muốn quy trình công việc này xảy ra và người dùng cuối của bạn cũng mong đợi điều đó.

Hướng dẫn how do i make an automation framework from scratch? - làm cách nào để tạo khung tự động hóa từ đầu?

Trình xử lý sự kiện sẽ cho phép bạn hoàn thành các hành động phản ứng với một sự kiện, mà không cần một bộ thử nghiệm riêng cho từng môi trường. Chúng là các hướng dẫn cho cách một hệ thống nên chạy, mà không cần các chi tiết cụ thể và sẽ cho phép bạn thêm sự tinh tế vào các bài kiểm tra của bạn mà không cần phải xử lý chúng theo cách thủ công. Ví dụ: bạn có thể thay đổi bất kỳ thuộc tính nhận dạng đối tượng động nào, chẳng hạn như URL hoặc tên tệp.

Nếu bạn thay đổi tên ứng dụng của mình và cần chỉ ra một đường dẫn khác hoặc cập nhật cách cài đặt của nó, khung của bạn sẽ có thể giải quyết vấn đề này với sự trợ giúp của Trình xử lý sự kiện. Các thử nghiệm được sử dụng để đảm bảo các phần của ứng dụng hoạt động như mong đợi và Framework cung cấp các công cụ làm như vậy.

Bây giờ vào dữ liệu thử nghiệm của bạn. Khung của bạn nên chứa dữ liệu riêng biệt với các bài kiểm tra. Sử dụng kho lưu trữ của bạn để lưu trữ dữ liệu và giữ các thuộc tính và tài liệu tham khảo của bạn chung - không kiểm tra cụ thể. Điều này sẽ cho phép các đối tượng dữ liệu của bạn được chia sẻ giữa các tập lệnh và dữ liệu của bạn được sử dụng trên tất cả các tiện ích bạn đã tiết kiệm thời gian và công sức của bạn trong tương lai.

4. Thiết lập một dự án kiểm tra khói

Trước khi bạn tạo các tiện ích và xác minh của mình, nó rất quan trọng, bạn có được một dự án thử nghiệm khói được thiết lập. Chúng sẽ trở thành bộ thử nghiệm quan trọng nhất bạn sẽ sử dụng để xác minh các tiện ích của bạn.

Các thử nghiệm khói, hoặc xây dựng các thử nghiệm xác minh, xác nhận rằng các chức năng quan trọng nhất của một ứng dụng hoạt động như dự định và xác định xem có cần thử nghiệm bổ sung hay không. Nếu một thử nghiệm khói đi qua, điều đó có nghĩa là các phần quan trọng của ứng dụng của bạn đang hoạt động, vì vậy bạn có thể tiếp tục với nhiều thử nghiệm chuyên sâu hơn. Nếu nó thất bại, nó có nghĩa là chức năng cơ bản mà ứng dụng của bạn cần phải hoạt động đã bị hỏng. Khi điều này xảy ra, bạn nên yêu cầu điều này được sửa chữa trước tiên. Thử nghiệm thêm tại thời điểm này sẽ chỉ lãng phí thời gian quý giá.

Khi phần mềm của bạn trưởng thành, hoặc mở rộng khả năng khôn ngoan, bộ thử nghiệm khói của bạn cũng sẽ cần phát triển. Chỉ cần một lỗi để làm tê liệt một ứng dụng và làm giảm danh tiếng của công ty.

5. Tạo các tiện ích cho các hành động trên màn hình

Sau khi làm quen với ứng dụng, thu thập dữ liệu và thiết lập môi trường của bạn, bạn sẽ cần tạo các tiện ích được chia sẻ cho các hành động giao diện người dùng (UI) chung như điều hướng menu và các trường đầu vào văn bản. Đây là các khối xây dựng cơ bản của các bài kiểm tra của bạn, sau đó bạn có thể ghép lại với nhau để tạo thành logic thử nghiệm.

Tùy thuộc vào công cụ mà bạn sử dụng, điều này có thể đơn giản như kéo và thả các mảnh vào kiểm tra từ khóa. Điều này sẽ cho phép khung của bạn điều khiển luồng kiểm tra và xác minh của bạn để cần bảo trì tối thiểu cho các bài kiểm tra riêng lẻ.

Một mẹo ở đây là sử dụng các lớp JavaScript trong khung của bạn, đặc biệt là để điều hướng. Bằng cách này, nếu bạn cập nhật cách bạn đăng nhập hành động của mình hoặc kết quả kiểm tra dự kiến ​​của bạn, bạn sẽ chỉ phải làm điều này từ một địa điểm - cuối cùng giữ cho việc đăng nhập của bạn nhất quán.

Điều này sẽ cho phép các thành viên trong nhóm phát triển các kỹ sư hoặc nhà phát triển tự động hóa để xem xét nhật ký thử nghiệm của bạn và hiểu những gì đang diễn ra. Họ sẽ có thể xác định xem các lỗi là tài sản, vấn đề hoặc khiếm khuyết thực tế trong ứng dụng, đó là lý do tại sao nó rất quan trọng để trừu tượng hóa dữ liệu khung của bạn từ dữ liệu thử nghiệm thực tế.

6. Xây dựng và quản lý xác minh

Trong bước tiếp theo, bạn sẽ muốn thiết lập các xác minh của mình -áp dụng cùng một logic từ cách bạn cấu trúc dữ liệu của mình, nghĩa là chúng nên được chia sẻ. Hãy nói rằng bạn đang kiểm tra chức năng của ứng dụng của bạn và các yêu cầu thay đổi trên trường văn bản. Nếu bạn xác minh rằng trường văn bản chỉ chấp nhận các ký tự số chứ không phải văn bản, các bài kiểm tra của bạn sẽ cần được cập nhật.

Trong các trường hợp như thế này, bạn không muốn cập nhật từng bài kiểm tra, đặc biệt nếu bạn vẫn đang thực hiện việc này theo cách thủ công. Lý tưởng nhất, bạn cập nhật phần xác minh của trường văn bản của bạn ở một điểm để bạn có thể có 50 bài kiểm tra kiểm tra một số kịch bản khác nhau vẫn hoạt động. Bất kỳ xác minh UI nào bạn xây dựng vào hành động của mình phải là tùy chọn, để trong trường hợp trường chấp nhận đầu vào đúng cách và kiểm tra vượt qua, không cần phải xác minh hành động đó mỗi lần.

Dữ liệu xác minh của bạn cũng nên được chia sẻ. Các tiện ích đầu vào khác nhau sẽ có thể chấp nhận các đối tượng dữ liệu được tạo trong các bước trước để bạn có thể chuỗi các mục cùng nhau. Điều này cũng sẽ cho phép bạn cập nhật trong một lĩnh vực khi cần thiết, sau đó có thể được truyền bá trên tất cả các khu vực khác nhau trong khung của bạn.

7. Thiết lập cơ chế ghi nhật ký và báo cáo của bạn

Phần cuối cùng của Khung tự động UI của bạn là cơ chế ghi nhật ký và báo cáo của bạn. Trong toàn bộ quá trình xây dựng, bạn nên ghi lại và ghi chú về tất cả các hành động khám phá, chuẩn bị dữ liệu và xây dựng môi trường và xác minh.

Tin nhắn nhật ký trước khi xác minh, nêu rõ bạn đang xác minh và kết quả dự kiến ​​là gì. Bạn sẽ muốn làm cho những thông điệp này có thể đọc được để người dùng phi kỹ thuật có thể nhìn vào nhật ký của bạn và biết chính xác nơi xảy ra và lý do xảy ra thất bại. Lỗi không nên là khó hiểu và không ai phải đoán tại sao chúng lại xảy ra.

Mục tiêu của bước này là giúp bạn chuẩn hóa quy trình của bạn - những gì bạn đăng nhập, khi bạn đăng nhập và các lỗi.

Hướng dẫn how do i make an automation framework from scratch? - làm cách nào để tạo khung tự động hóa từ đầu?

Báo cáo cũng nên được tự động hóa. Tự động hóa báo cáo sẽ cắt giảm thời gian bạn chi tiêu kéo báo cáo và cho phép bạn tập trung vào việc phân tích dữ liệu. Nếu bạn muốn xuất nhật ký thử nghiệm của mình để chia sẻ trên mạng hoặc trên máy chủ web, với công cụ phù hợp, bạn có thể tự động hóa quá trình gửi email. Nếu một bài kiểm tra thất bại, bạn sẽ muốn biết ngay lập tức. Tại sao phải đợi để kéo các báo cáo bằng tay?

Các thử nghiệm là để xác thực logic ứng dụng. Khung là để dễ dàng tạo và xây dựng các bài kiểm tra. Theo bảy bước này, bạn sẽ có thể xây dựng một khung tự động hóa UI mạnh mẽ sẽ đặt nền tảng cho thành công lâu dài.

Xây dựng Khung giao diện người dùng & TestComplete của bạn

Xây dựng khung thử nghiệm UI tự động có thể là một quá trình đau đớn. Nó phức tạp và tốn thời gian. Là cuốn sách hướng dẫn chung cho quá trình thử nghiệm của bạn, khung của bạn sẽ phác thảo mọi thứ từ ngôn ngữ tiêu chuẩn bạn dự định viết mã và tập lệnh, trong đó các thực tiễn mà bạn đang thực hiện và các công cụ bạn hướng tới sử dụng. Khi chọn một công cụ, bạn nên áp dụng một công cụ linh hoạt và đi kèm với hỗ trợ vượt trội cho nhiều ngôn ngữ.

TestComplete, một công cụ kiểm tra chức năng UI tự động, cho phép các nhóm xây dựng và chạy các thử nghiệm UI trên các ứng dụng máy tính để bàn, thiết bị di động và web. Nó hỗ trợ nhiều ngôn ngữ kịch bản, chẳng hạn như Python và JavaScript, đi kèm với một thư viện đối tượng rộng rãi với hơn năm mươi nghìn thuộc tính đối tượng và có tính năng ghi lại và phát lại mạnh mẽ. Với các khả năng này, bất kỳ nhóm nào cũng có thể dễ dàng xây dựng một khung giao diện người dùng mạnh mẽ.

Carson Underwood, một kỹ sư đảm bảo chất lượng tại O'Reilly Auto Parts và là một chuyên gia về tự động hóa thử nghiệm, đã xây dựng khung thử nghiệm UI của mình từ đầu. Kiểm tra quy trình từng bước của anh ấy và xem khi anh ấy đi qua cách anh ấy sử dụng TestComplete để hoàn thành từng mảnh.

Bạn đã làm theo chiến lược nào trong khi xây dựng khung selen từ đầu?

Chọn một khung để thử nghiệm ..
1) Làm thế nào để bạn chọn một ngôn ngữ lập trình ..
2) Chọn khung kiểm tra đơn vị ..
3) Thiết kế kiến trúc của khung của bạn ..
4) Xây dựng thành phần thử nghiệm Selenium Selenium ..
5) Chọn một cơ chế để báo cáo ..

Khung tự động nào là dễ dàng?

Selenium selenium được coi là một trong những khung tự động hóa thử nghiệm tốt nhất và không cần giới thiệu.Sau 16 năm thành lập, Selenium đã đặt tên trong cộng đồng theo cách mà người ta thường cho rằng bạn đã biết Selenium Grid là gì nếu bạn là người thử nghiệm tự động hóa. Selenium is considered one of the best test automation frameworks and needs no introduction. After 16 years of its inception, Selenium has made its name in the community in a way that it is often assumed that you already know what is Selenium Grid if you are an automation tester.

Các yếu tố chính của khung tự động hóa là gì?

8 Yếu tố cho Khung tự động thử nghiệm thành công..
Dễ sử dụng..
Scalability..
Traceability..
Maintainability..
Reusability..
Compatibility..
Can thiệp thủ công tối thiểu ..
Một nhóm chuyên dụng ..

Khung nào được sử dụng để tự động hóa?

1) Khung tự động hóa tuyến tính Khung tự động hóa tuyến tính thường được sử dụng trong thử nghiệm các ứng dụng nhỏ.Khung này cũng được gọi là một bản ghi và khung phát lại.Linear Automation Framework The linear Automation framework is commonly used in the testing of small applications. This framework is also called as a Record and playback framework.