Protractor là gì

1. End-to-end

Các ứng dụng website tân tiến nên tích thích hợp một loạt các dịch vụ bên ngoài, khối hệ thống đại lý dữ liệu với các API. Và thế nào cho cân xứng với việc biến đổi tiếp tục của những lắp thêm cùng trinch săn sóc web.

Bạn đang xem: Protractor là gì

Đang xem: Protractor là gì

Đây là 1 trong lĩnh vực vô cùng khó khăn hoặc thậm chí còn hoàn toàn chẳng thể demo bằng phương thức truyền thống cuội nguồn nlỗi Unit test với simple mocks. Một cơ sở tài liệu rất có thể fail, một hình thức bên phía ngoài có thể trả về một kết quả không hợp lệ và một phiên bản trình săn sóc mới rất có thể tất cả lỗi tìm ẩn.Điều kia dẫn tới việc thành lập của end-to-end testing. Chúng ta ao ước phân tích ứng dụng của bọn họ một phương pháp tổng quan lại cùng chắc chắn là rằng nó chuyển động nlỗi ước ao hóng. Chúng ta hy vọng khám nghiệm toàn cục vận dụng, bước đầu tự giao diện người tiêu dùng xuống các khối hệ thống con người, ví dụ như tàng trữ dữ liệu hoặc Call những dịch vụ bên ngoài.Điều đặc biệt bắt buộc chú ý là end-to-kết thúc testing chưa hẳn là phương pháp kiểm test rất tốt nhưng họ cần thực hiện nó với các phương thức thể nghiệm khác, mà lại nút chiều cao và phạm vi rộng lớn những kiểm test end-to-end góp chúng ta khôn xiết đôi lúc trở nên tân tiến một ứng dụng website phức hợp.

Xem thêm: "In Situ Là Gì ? Chuyển Đổi Số Trong Xã Hội Là Gì

2. PROTRACTOR

Google đã released an end-to-end testing framework cho AngularJS tích hòa hợp những technology hiện nay bao gồm như Selenium, Node.js cùng Jasmine với khiến cho bài toán viết thử nghiệm script một cách dễ dàng.Với protractor chúng ta có thể viết những thử nghiệm script auto điều khiển xe trên một trình ưng chuẩn thực tế, so với một website hiện tại có. Như vậy, bạn có thể dễ dàng chất vấn coi một trang bao gồm thao tác làm việc như ao ước ngóng. Bên cạnh đó vấn đề sử dụng protractor tạo điều kiện cho ta nắm rõ thêm về AngularJS với về tối ưu hóa đến nó.

Xem thêm: Body Shaming Là Gì ? Cách Vượt Qua Nỗi Sợ Body Shaming Body Shaming Là Gì

*

Protractor thưởng thức họ bắt buộc cài đặt Node.js, Selenium với Jasmine trước bên trên thứ.Cài Protractor globally với command line:Nó đang từ bỏ sở hữu comm& line tools,protractorandwebdriver-manager. Try runningprotractor –versionto make sure it”s working.

Thewebdriver-manageris a helper tool khổng lồ easily get an instance of a Selenium Server running. Use it to download the necessary binaries with:Giống nlỗi Karma, Protractor đòi hỏi một file thông số kỹ thuật nhằm nó biết được thiết kế cố gắng làm sao để chạy, làm nắm như thế nào để kết nối cùng với Selenium, vvPhương pháp dễ nhất để chế tạo ra một tập tin cấu hình choProtractorlà copy một tập tin cấu hình tham khảo trường đoản cú các thư mục thiết lập.exports.config = seleniumAddress: “http://localhost:4444/wd/hub”, capabilities: “browserName”: “chrome” , specs: , jasmineNodeOpts: showColors: true ;describe(“E2E Testing”, function() // start at root before every demo is run beforeEach(function() browser().navigateTo(“/”); ); // chạy thử default route it(“should jump lớn the /trang chính path when / is accessed”, function() browser().navigateTo(“#/”); expect(browser().location().path()).toBe(“/login”); ); it(“ensures web3_user can log in”, function() browser().navigateTo(“#/login”); expect(browser().location().path()).toBe(“/login”); // ng-Model specified, & this conbination will successfully login input(“email”).enter(“testdemo.com”); input(“password”).enter(“password”); element(“submit”).click(); // logged in route expect(browser().location().path()).toBe(“/dashboard”); // my dashboard page has a label for the gmail address of the logged in web3_user expect(element(“#email”).html()).toContain(“testthử nghiệm.com”); ); it(“should keep invalid logins on this page”, function() browser().navigateTo(“#/login”); expect(browser().location().path()).toBe(“/login”); // ng-mã sản phẩm specified, và this conbination will successfully login input(“email”).enter(“invalidchạy thử.com”); input(“password”).enter(“wrong password”); element(“submit”).click(); expect(element(“#message”).html().toLowerCase()).toContain(“failed”); // logged out route expect(browser().location().path()).toBe(“/login”); ););*** Đễ tổ chức triển khai code xuất sắc rộng ta yêu cầu tách bóc các element đối tượng người dùng của một page thành một file riêng rẽ viết tên làexample-po.jsvar LoginPage = function() this.web3_username = element(by.model(“web3_username”)); this.password = element(by.model(“password”)); this.loginButton = element(by.id(“btn-login”)); this.passwordRequiredError = element(by.css(“error-password-required”)); this.visit = function() browser.get(“/login”); ; this.setUsername = function(web3_username) this.web3_username.clear(); this.web3_username.sendKeys(web3_username); ; this.setPassword = function(password) this.password.clear(); this.password.sendKeys(password); ; this.login = function() this.loginButton.click(); ;};module.exports = new LoginPage();Import tệp tin *-po.js vào file *-spec.jsvar page = require(“./sample-po.js”);describe(“E2E Testing”, function() it(“demo case”, function() page.visit(); page.setUsername(“gandalf”); page.login(); expect(page.passwordRequiredError.isDisplayed()).toBe(true); ););

6. CHẠY TEST

protractor *-conf.js

*

Author: Hai Nguyen Người gây dựng opdaichien.com vui tính, say đắm lập trình, kết bạn cùng phân tách đang. Happy coding!
Chuyên mục: Kiến Thức