Sử dụng Dịch vụ Đám mây
Using on-demand services like Sauce Labs, Browserstack, TestingBot, LambdaTest or Perfecto with WebdriverIO is pretty simple. All you need to do is to set your service's user
and key
in your options.
Optionally, you can also parametrize your test by setting cloud-specific capabilities like build
. If you only want to run cloud services in Travis, you can use the CI
environment variable to check if you are in Travis and modify the config accordingly.
// wdio.conf.js
export let config = {...}
if (process.env.CI) {
config.user = process.env.SAUCE_USERNAME
config.key = process.env.SAUCE_ACCESS_KEY
}
Sauce Labs
Bạn có thể thiết lập thử nghiệm của mình để chạy từ xa trong Sauce Labs.
Yêu cầu duy nhất là đặt user
và key
trong cấu hình của bạn (có thể được xuất bởi wdio.conf.js
hoặc được truyền vào webdriverio.remote(...)
) thành tên người dùng và khóa truy cập Sauce Labs của bạn.
Bạn cũng có thể truyền vào bất kỳ tùy chọn cấu hình thử nghiệm tùy chọn nào dưới dạng khóa/giá trị trong các khả năng cho bất kỳ trình duyệt nào.
Sauce Connect
Nếu bạn muốn chạy thử nghiệm đối với máy chủ không thể truy cập từ Internet (như trên localhost
), thì bạn cần sử dụng Sauce Connect.
Việc hỗ trợ tính năng này nằm ngoài ph ạm vi của WebdriverIO, vì vậy bạn sẽ phải tự khởi động nó.
Nếu bạn đang sử dụng WDIO testrunner, hãy tải xuống và cấu hình @wdio/sauce-service
trong wdio.conf.js
của bạn. Nó giúp Sauce Connect chạy và đi kèm với các tính năng bổ sung tích hợp tốt hơn các bài kiểm tra của bạn vào dịch vụ Sauce.
Với Travis CI
Tuy nhiên, Travis CI có hỗ trợ để khởi động Sauce Connect trước mỗi thử nghiệm, vì vậy bạn có thể làm theo hướng dẫn của họ.
Nếu làm như vậy, bạn phải đặt tùy chọn cấu hình thử nghiệm tunnel-identifier
trong capabilities
của mỗi trình duyệt. Travis đặt giá trị này là biến môi trường TRAVIS_JOB_NUMBER
theo mặc định.
Ngoài ra, nếu bạn muốn Sauce Labs nhóm các thử nghiệm của mình theo số lần xây dựng, bạn có thể đặt build
thành TRAVIS_BUILD_NUMBER
.
Cuối cùng, nếu bạn đặt name
, điều này sẽ thay đổi tên của thử nghiệm này trong Sauce Labs cho bản dựng này. Nếu bạn đang sử dụng WDIO testrunner kết hợp với @wdio/sauce-service
, WebdriverIO sẽ tự động đặt tên thích hợp cho thử nghiệm.
Ví dụ về capabilities
:
browserName: 'chrome',
version: '27.0',
platform: 'XP',
'tunnel-identifier': process.env.TRAVIS_JOB_NUMBER,
name: 'integration',
build: process.env.TRAVIS_BUILD_NUMBER