2015-07-09 14 views
6

Tôi hiện đang làm việc trên ứng dụng Electron và bây giờ tôi muốn tích hợp thử nghiệm từ đầu đến cuối với Protractor. Tôi đã xem lại các hướng dẫn cho thước đo góc và bây giờ đang cố gắng thích nghi nó với Electron. Kể từ khi Electron chạy như một ứng dụng độc lập, làm thế nào để làm điều này?Ứng dụng điện tử có thử nghiệm từ đầu đến cuối kết thúc

Dường như thước đo đứng lên một máy chủ Selenium rằng sau đó cố gắng để tiếp cận với một máy chủ HTTP có sẵn và chạy thử nghiệm như bấm vào đây, những gì url tôi trên, nhập văn bản này vv

Do đó làm thế nào tôi sẽ đi về cho phép truy cập máy chủ selenium vào dụ điện tử?

Dù sao thì đó là suy nghĩ của tôi về tình hình, bất kỳ trợ giúp nào đều được đánh giá cao và cảm thấy tự do để sửa bất kỳ giả định nào của tôi.

+1

Bạn đã thấy cách sử dụng Selemium với Electron: https://github.com/atom/electron/blob/master/docs/tutorial/using -selenium-and-webdriver.md? Không biết về Protractor mặc dù. –

Trả lời

4

Thích ứng với các hướng dẫn ghi nhận tại Using Selenium and WebDriver, đây là những gì bạn cần để đưa vào cấu hình thước đo của bạn (sử dụng directConnect, là một ví dụ):

exports.config = { 
    directConnect: true, 

    capabilities: { 
     browserName: "chrome", 
     chromeOptions: { 
      binary: '/Path-to-Your-App.app/Contents/MacOS/Atom' // < IMPORTANT! 
     }, 
    }, 

    // ... 
} 

(không kiểm tra) Câu trả lời

+0

Cool nên tôi đã thử 'directConnect' và hoạt động đó. Tuy nhiên, vấn đề thực sự của tôi là tôi cần phải xây dựng ứng dụng của mình, sau đó trỏ đến đó dưới dạng nhị phân. Vì vậy, nếu bạn có thể tinh chỉnh câu trả lời của bạn để đặt trọng tâm vào nhị phân (là ứng dụng được xây dựng của bạn) thì tôi sẽ chấp nhận câu trả lời này. – cha55son

+0

@ cha55son yeah, 'binary' là điều quan trọng để cấu hình. 'directConnect' chỉ vì một ví dụ và sự đơn giản. – alecxe

+0

@alecxe thật tuyệt vời! Vấn đề duy nhất là khóa 'binary' cần nằm trong' chromeOptions', hãy xem câu trả lời của @ BladeBarringer để sửa lỗi. –

3

alecxe là chủ yếu đúng, nhưng có một chút không chính xác với nó.

nhị phân nên được lồng vào nhau dưới chromeOptions như vậy:

exports.config = { 
    directConnect: true, 

    capabilities: { 
    browserName: "chrome", 
    chromeOptions: { 
     binary: '/Path-to-Your-App.app/Contents/MacOS/Atom' // < IMPORTANT! 
    } 
    }, 

    // ... 
} 
Các vấn đề liên quan