Mock Test Là Gì

lúc đi sâu vào thi công Automation UI thử nghiệm case cho những đơn vị nhưng tôi thao tác, điều khiến cho tôi cảm thấy không thích hợp duy nhất về demo case của bản thân là nó lừ đừ và bị duplicate. Chậm là khó rời ngoài cho một UI thử nghiệm case. Về vấn đề duplicate, đó là chính vì tôi thấy rằng tôi đã test đều API liên quan đến UI kiểm tra này rồi. Nếu hiện thời tôi viết lại 1 kiểm tra case UI, thì vô hình dung phổ biến tôi vẫn làm cho lại các bước chạy thử cho mọi API nhưng mà tôi đang viết chạy thử, vày API yêu cầu work thì chiếc UI chạy thử của tớ mới work.

Bạn đang xem: Mock test là gì

Trước Lúc rời Atlassian, tôi được giới thiệu về định nghĩa mock chạy thử, tuy vậy tôi chưa xuất hiện được cơ hội để mày mò sâu và vận dụng nó, trong cả lúc tôi làm việc ở SSS. Chỉ cho đến lúc tôi mang đến làm việc làm việc Ascend Tech đất nước hình chữ S tôi bắt đầu có cơ hội được training, tò mò với thực hành về nó. Theo tôi, mochồng demo là một trong những trong những phương pháp để tách biệt UI chạy thử thoát khỏi sự phụ thuộc vào tình trạng của Baông chồng End hệ thống từ kia góp demo case chạy nkhô cứng rộng và kiểm triệu chứng độ đúng mực của UI một biện pháp chủ quyền hơn.

1/ Moông xã test là gì?

Có không ít thứ giống như Mock chạy thử, cả tôi cũng ko tò mò không còn về chúng. Nó gồm những: Server Virtualization, Stubbing, Mocking,... Nó bên trong một khái nhiệm thông thường call là Test Double. quý khách có thể đọc thêm về chúng vào nội dung bài viết này. Nếu nhỏng tôi giải thích theo chủ kiến riêng của mình thì:

Moông chồng chạy thử là có mang dùng để chỉ rằng, ráng bởi đem data từ một real service, các bạn thực hiện một cỗ thử nghiệm data nhưng input đầu vào và output của bạn được quan niệm ví dụ từ một VPS giả không giống (mock) và bạn dùng nó như là input mang lại loại system nhưng bạn muốn chạy thử.

2/ Cách tiếp cận truyền thống của UI Automation test

Lại ví dụ về chiếc form login:



Lúc các bạn điền thông tin Thư điện tử password với click Sign in, bản chất là System này gửi 1 HTTP request: http://realapiserver/login cùng với data "email":"testemail
kiểm tra.com","password":"123". Hãy cđọng đưa sử test case của khách hàng là hi vọng màn hình trả về HomePage

Cách tiếp cận truyền thống này có tương đối nhiều bất cập:

1/ quý khách với mang tiếng demo Front End, cơ mà thực chất là các bạn đề nghị đợi cho Baông xã End trả về. Đôi khi nó hơi mất thời hạn vào toàn bô step của bạn

2/ Nếu Baông xã End không nên, Có nghĩa là cố vì chưng mình nhập data đúng nó bắt buộc trả về Success thì nó lại trả về fail --> thử nghiệm case UI cũng fail. Thực ra thì, trường hợp đây coi như là e2e thử nghiệm case thì OK. Nhưng mà, ý tôi là tín đồ làm cho Front End không tồn tại cơ hội để soát sổ mẫu code mình tạo ra sự gồm đúng hay là không, vì chưng Baông chồng End đã biết thành sai rồi. Nếu team các bạn gồm apply CI/CD thì nó đã là thua thiệt mập cho mình.

3/ Nếu dòng API này chưa có, là coi như chúng ta ngoài đánh giá Front End luôn. do đó, Baông xã End API cứ đề nghị chạy trước Front End. Front End cũng muốn làm trước cũng ko được.

Xem thêm: "Bật Bí" Người Tuổi Giáp Tuất Hợp Xe Màu Gì Hợp, TuổI TuấT Mua Xe Mã U G㬠HợP

Nói Kết luận, nếu bạn chỉ ao ước demo UI, bởi vì loại cơ mà team chúng ta làm ra, hay là dòng nhưng cửa hàng chúng ta khiến cho người sử dụng chỉ cần UI. Hoặc team của bạn muốn làm UI trước Baông xã End mà lại vẫn ý muốn tìm thấy những lỗi chỉ vì code của khách hàng gây ra, thì moông xã demo là 1 trong những giữa những chọn lọc hợp lý và phải chăng.

Moông xã test cũng gần như là là đề xuất khi chúng ta phải trả lập một server của một 3rd party ( ví dụ app payment của chúng ta link với VPS ngân hàng). Trong ngôi trường hòa hợp này, các bạn đề nghị tạo thành 1 moông chồng VPS, cùng thông số kỹ thuật input đầu vào với output của nó theo nlỗi document được thỏa thuận giữa các bạn cùng 3rd các buổi tiệc nhỏ.

3/ Cách nhằm viết một mochồng chạy thử case

Điểm khác biệt lớn nhất giữa các việc viết 1 moông xã thử nghiệm cùng 1 demo case thông thường sẽ là chúng ta không cần phải sản xuất chạy thử data, và bạn cũng hiểu ra được công dụng hy vọng là gì.

lúc viết chạy thử case, bạn phải chắc chắn là rằng, mẫu chúng ta input trên Front End vẫn trùng với mẫu các bạn quan niệm ra sống moông xã hệ thống. Nếu không, các bạn sẽ cần yếu có kết quả như mong mỏi muốn

4/ Cách thiết lập 1 mochồng server

Để có một kiểm tra VPS cùng tích đúng theo vào code của Dev, đó là những step cơ bản:

Start bé mock hệ thống lên. Cách sau đó là quan trọng đặc biệt, các bạn khái niệm ra cùng với request bao hàm ĐK gì, thì response sẽ là thế nào. 1 ví dụ của Mountebank. Để tạo thành 1 mock của Mountengân hàng bạn cũng có thể dùng API:

Tại đây Tức là mình vừa tạo thành 1 moông chồng bao gồm logic là:

nếu như tôi Gọi vào API localhost:2525/mock/chạy thử, Method: POST, Header gồm dạng "application/json". với có body request là "tmnid": "1001" thì response trả về sẽ là phần quan niệm vào "response":



Quý Khách có thể xem thêm về kiểu cách dựng mochồng bằng mountebank ở chỗ này

Developer của khách hàng khi deploy UI nhằm demo, thì rứa vì để UI trỏ vào Bachồng End server, họ vẫn trỏ vào bé moông xã của bạn. Nghe thì dường như khó khăn tuy vậy thực tế thì tôi thấy phần nhiều ngôi trường phù hợp Developer sẽ nhằm sẵn 1 config parameter mang đến vấn đế này, vày thiết yếu phiên bản thân bọn họ cũng buộc phải deploy code của họ lên những môi trường (Staging, Alpha, Production,...), cho nên chúng ta chỉ việc sửa đúng cái config này là ổn định. Cuối cùng run chạy thử case của người tiêu dùng.

Lời kết

Mock test là 1 trong số những phương pháp để chúng ta có thể thử nghiệm được các ngôi trường hòa hợp tương quan mang lại 3rd các buổi tiệc nhỏ hệ thống. Nếu áp dụng đúng mực, nó có thể khiến cho bạn tiết kiệm được không ít thời hạn khi viết kiểm tra và chạy kiểm tra nhưng mà vẫn bảo vệ được quality của feature. Chúc chúng ta thành công xuất sắc trong việc áp dụng mochồng kiểm tra vào khối hệ thống demo case của bạn.


Nguyen Duong Hai

TBD
Follow

Moông xã kiểm tra - một Một trong những cách thức để triển khai mang lại cỗ Automation UI thử nghiệm case của bạn chạy nhanh khô rộng cùng độc lập hơn