2012-06-04 30 views

Trả lời

12

Tạo hồ sơ kiểm tra Selenium Firefox cho chứng chỉ client-side SSL

Bạn cần phải chuẩn bị hồ sơ WebDriver Firefox Selenium của đã chứng khách hàng nhập khẩu.

Trước tiên, bạn khởi động WebDriver với cấu hình sau đây trong bạn mã kiểm tra:

# Pre-seeded Firefox profile directory 
profile_directory = os.path.join(os.path.dirname(__file__), "..", "..", "certs", "firefox-client-ssl-profile") 
self.assertTrue(os.path.exists(profile_directory)) 

profile = FirefoxProfile(profile_directory) 

# Make sure the client side certificate selection does not interrupt the test 
# XXX: What happens in other language versions? 
profile.set_preference("security.default_personal_cert", "Select Automatically") 
self.driver = WebDriver(firefox_profile=profile) 

self.selenium_helper = SeleniumHelper(self, self.driver) 
self.selenium_helper.driver = self.driver 

Kiểm tra đơn vị bắt đầu và đưa chúng đến điểm Máy chủ thử nghiệm Zope đang hoạt động. Dừng thử nghiệm với "nhập pdb; pdb.set_trace()"

Bây giờ bạn sẽ có một phiên bản Firefox "WebDriver" của Selenium trên màn hình của bạn.

Nhập chứng chỉ phía máy khách của bạn. Tùy chọn> Nâng cao> Mã hóa> Xem chứng chỉ. Nhập "client.p12" từ nguồn cấp chứng chỉ phía máy khách của bạn.

Visit trong URL kích hoạt hộp thoại chứng nhận client-side trong Firefox Webdriver của ::

https://yourservevr/triggers-client-side-certificate-ssl-handshake 

này nên nhắc bạn chấp nhận giấy chứng nhận phía khách hàng đối với các máy chủ thử nghiệm. Chấp nhận mọi thứ theo cách thủ công.

Truy cập trong menu Trợ giúp> Thông tin khắc phục sự cố> Khái niệm cơ bản về ứng dụng> Hiển thị trong Trình tìm kiếm. Thao tác này sẽ mở thư mục tạm thời chứa các tệp hồ sơ hoạt động của Trình điều khiển Web.

Sao chép tệp hồ sơ Firefox cert8.dbkey3.db vào gói thử nghiệm đơn vị thư mục hạt giống hồ sơ Firefox của WebDriver. Đây là thư mục mà Selenium chọn hạt giống cho trình điều khiển web Firefox khi thử nghiệm bắt đầu firefox-client-ssl-profile.

Làm gián đoạn các thử nghiệm. Khởi động lại các bài kiểm tra. Chạy cho đến khi tạm dừng một lần nữa. Trong trình duyệt Web Firefox , hãy xem trong cài đặt hiện có chứa chứng chỉ bạn đã phê duyệt trong lần chạy cuối cùng trong Tùy chọn> Nâng cao> Mã hóa> Xem chứng chỉ.

Thông tin thêm

+1

Từ Firefox phiên bản 58 nó sẽ được cert9.db và key4.db. Với Visual Studio, hãy đảm bảo rằng chúng sẽ được đánh dấu là "Sao chép luôn" trong các thuộc tính để đảm bảo rằng các tệp này được sao chép khi xây dựng. – 321X

1

Tôi không biết điều này có hữu ích hay không, nhưng bạn có thể thay đổi một số tùy chọn trong tiểu sử. Trong Java, bạn có thể làm điều này.

ProfilesIni allProfiles = new ProfilesIni(); 
    FirefoxProfile profile = allProfiles.getProfile("default"); //change profile name. there is a note somewhere on how to change it 
    profile.setPreference(uaKey, uaValue); 
    profile.setAcceptUntrustedCertificates(acceptUntrustedSsl); 

Tôi không chắc đây là những gì bạn cần.

Các vấn đề liên quan