sesi tidak dibuat: Versi ChromeDriver ini hanya mendukung kesalahan versi Chrome 74 dengan ChromeDriver Chrome menggunakan Selenium

164

Saya mencoba menjalankan RSelenium menggunakan fungsi rsDriver, tetapi ketika saya menjalankan rD <- rsDriver() saya mendapatkan pesan yang mengatakan bahwa saya memerlukan versi Chrome yang lebih baru:

> rD <- rsDriver()
checking Selenium Server versions:
BEGIN: PREDOWNLOAD
BEGIN: DOWNLOAD
BEGIN: POSTDOWNLOAD
checking chromedriver versions:
BEGIN: PREDOWNLOAD
BEGIN: DOWNLOAD
BEGIN: POSTDOWNLOAD
checking geckodriver versions:
BEGIN: PREDOWNLOAD
BEGIN: DOWNLOAD
BEGIN: POSTDOWNLOAD
checking phantomjs versions:
BEGIN: PREDOWNLOAD
BEGIN: DOWNLOAD
BEGIN: POSTDOWNLOAD
[1] "Connecting to remote server"

Selenium message:session not created: This version of ChromeDriver only supports Chrome version 74
  (Driver info: chromedriver=74.0.3729.6 (255758eccf3d244491b8a1317aa76e1ce10d57e9-refs/branch-heads/3729@{#29}),platform=Mac OS X 10.14.3 x86_64)

Could not open chrome browser.
Client error message:
     Summary: SessionNotCreatedException
     Detail: A new session could not be created.
     Further Details: run errorDetails method
Check server log for further details.

Pesan kesalahan muncul untuk mengatakan bahwa saya memerlukan Chrome versi 74.0.3729.6, tetapi ketika saya melihat di pengaturan Chrome, itu memberitahu saya bahwa saya sedang menjalankan versi stabil terbaru (73.0.3683.75). Setelah googling lebih lanjut, 74.0.3729.6 adalah versi dev pra-rilis Chrome: apakah saya harus menginstal ini untuk menggunakan ChromeDriver dengan RSelenium?

Saya tidak terbiasa dengan gagasan menggunakan Chrome, tapi saya belum bisa membuat rsDriver menggunakan Firefox: ketika saya tentukan browser = "firefox", rsDriver memberi saya pesan kesalahan yang sama tentang ChromeDriver yang tidak mendukung versi Chrome saya.

Info sesi saya adalah:

R version 3.5.2 (2018-12-20)
Platform: x86_64-apple-darwin15.6.0 (64-bit)
Running under: macOS Mojave 10.14.3

Matrix products: default
BLAS: /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib
LAPACK: /Library/Frameworks/R.framework/Versions/3.5/Resources/lib/libRlapack.dylib

locale:
[1] en_GB.UTF-8/en_GB.UTF-8/en_GB.UTF-8/C/en_GB.UTF-8/en_GB.UTF-8

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
 [1] wdman_0.2.4     forcats_0.3.0   stringr_1.3.1   dplyr_0.7.8     purrr_0.2.5     readr_1.3.1     tidyr_0.8.2    
 [8] tibble_2.0.1    ggplot2_3.1.0   tidyverse_1.2.1 rvest_0.3.2     xml2_1.2.0      RSelenium_1.7.5
Matthew Law
sumber
1
Unduh versi lama ini. Bekerja dengan baik! >> ---> chromedriver.storage.googleapis.com/index.html?path=2.46
Nelson Carvalho
1
dalam kasus saya, jika kesalahan mengatakan ini hanya mendukung versi 76, saya tidak dapat menggunakan chrome 76.xxx. jika saya turun ke 75.xxx, dikatakan hanya mendukung versi 75. Jika saya mencoba versi terbaru (78 saat ini), ia berfungsi
BingLi224
@ BingLi224 versi selenium dan Python mana yang digunakan? Saya mengalami masalah yang sama meskipun versi Chrome adalah 78.0.3904.70
zzxwill
@zzxwill Selenium 3.141.0, Python 3.7.3, Chrome 78.0.3904.70 (saat ini, tetapi tidak yakin apa itu pada saat itu)
BingLi224
Jika Anda memiliki choco, Anda dapat "choco update chromedriver"
Aus10

Jawaban:

36

Saya mengalami masalah yang sama hari ini dan menemukan pos ini dan lainnya dari Google. Saya pikir saya mungkin punya solusi yang lebih langsung sebagai modifikasi kode Anda. Jawaban sebelumnya benar dalam mengidentifikasi ketidakcocokan dalam versi.

Saya mencoba solusi yang diusulkan tetapi tidak berhasil. Saya menemukan bahwa versinya benar di komputer saya. Namun, kesalahan ketidakcocokan ini bukan disebabkan oleh versi aktual yang diinstal pada komputer, melainkan kode RSelenium yang mencari versi "terbaru" dari Chrome / ChromeDriver dengan argumen default. Lihat ?rsDriver()halaman bantuan untuk argumennya.

Jika Anda menjalankan kode binman::list_versions("chromedriver")seperti yang ditentukan dalam dokumentasi bantuan, maka Anda dapat mengidentifikasi versi yang kompatibel dengan fungsi tersebut. Dalam kasus saya, saya dapat menggunakan kode berikut untuk membuat koneksi.

driver <- rsDriver(browser=c("chrome"), chromever="73.0.3683.68", extraCapabilities = eCaps)

Anda harus dapat menentukan versi Chrome Anda dengan chromever=argumen. Namun saya harus menggunakan versi terdekat (versi chrome saya adalah "73.0.3683.75").

Semoga ini membantu!

CAD
sumber
1
Jawaban CAD bekerja untuk saya dengan chrome peringatan: // pengaturan / bantuan untuk melihat dan / atau memperbarui versi browser Chrome Anda. Dalam kasus saya, saya mengklik yang diperbarui untuk memperbarui ke Versi: 73.0.3683.86 (Build Resmi) (64-bit)
user439089
Tampaknya varian Anda lebih cocok untuk kasus saya. Tapi saya tidak dapat menemukan cara mengatakan kepada busur derajat untuk menggunakan versi yang ditentukan. Suka chromever ini = "73.0.3683.68". Dalam kasus saya. Saya menggunakan browser kromium versi lebih rendah dari yang diminta busur derajat. Ini adalah kasus saya stackoverflow.com/questions/55984924/…
Victor Shelepen
2
Yo, tuan, batu. Saya memodifikasi kode ini sedikit untuk selalu menggunakan versi terbaru dengan: available.versions<-binman::list_versions("chromedriver") latest.version = available.versions$win32[length(available.versions)] Terima kasih untuk ini!
StatsStudent
72

Untuk pemutakhiran kromedriver MacOS, lakukan trik:

brew cask upgrade chromedriver
Yurii Verbytskyi
sumber
Bagus, ini membuat saya di jalur yang benar kecuali saya gunakan chromedriver-beta, yang mengharapkan versi Chrome yang lebih baru. Jadi apa yang saya lakukan:brew cask uninstall chromedriver-beta; brew cask install chromedriver
Anthony To
2
Ini hanya berfungsi jika Anda memasang kromedriver melalui minuman. Saya telah menginstalnya melalui unduhan langsung, jadi pertama berlari rm /usr/local/bin/chromedriverdan kemudian brew cask install chromedriveruntuk mendapatkan versi terbaru. Bagaimanapun, memutakhirkan chromedriver adalah solusinya.
lucas
2
ini harus menjadi jawaban yang diterima alih-alih yang menyarankan untuk menurunkan versi chrome
Guillaume Petit
Ini memperbaiki masalah saya.
negrotico19
62

Pesan kesalahan ini ...

Selenium message:session not created: This version of ChromeDriver only supports Chrome version 74
  (Driver info: chromedriver=74.0.3729.6 (255758eccf3d244491b8a1317aa76e1ce10d57e9-refs/branch-heads/3729@{#29}),platform=Mac OS X 10.14.3 x86_64)

... menyiratkan bahwa ChromeDriver mengharapkan versi Browser Chrome menjadi 74 .


Pemasangan cepat ChromeDriver terbaru

Untuk memasang versi terbaru ChromeDriver, Anda dapat menggunakan:

  • Pengguna Mac dengan Homebrew :brew tap homebrew/cask && brew cask install chromedriver
  • Distro Linux berbasis Debian :sudo apt-get install chromium-chromedriver
  • Pengguna Windows dengan Chocolatey diinstal :choco install chromedriver

Analisis

Masalah utama Anda adalah ketidakcocokan antara versi binari yang Anda gunakan sebagai berikut:

  • Anda menggunakan chromedriver = 74.0.3729.6
  • Catatan Rilis dari chromedriver = 74.0.3729.6 dengan jelas menyebutkan sebagai berikut:

Mendukung Chrome v74

  • Anda menggunakan chrome yang saat ini dirilis = 73.0

Jadi ada ketidakcocokan yang jelas antara ChromeDriver v74.0.3729.6 dan Browser Chrome v73.0


Larutan

  • Turunkan tingkat ChromeDriver ke ChromeDriver v73.0.3683.68 level.
  • Pertahankan versi Chrome di tingkat Chrome v73 . ( sesuai catatan rilis ChromeDriver v73.0.3683.68 )
  • Bersihkan Ruang Kerja Proyek Anda melalui IDE dan Bangun kembali proyek Anda hanya dengan dependensi yang diperlukan.
  • Jika versi Klien Web dasar Anda terlalu lama, hapus instalan dan instal GA terbaru dan versi Klien Web yang dirilis .
  • Jalankan @Test.
  • Selalu panggil driver.quit()dalam tearDown(){}metode untuk menutup & menghancurkan contoh WebDriver dan Klien Web dengan anggun.

Referensi

Anda dapat menemukan diskusi terperinci yang relevan di:

DebanjanB
sumber
Saya telah menurunkan ChromeDriver ke v73.0.3683.68, membersihkan ruang kerja proyek, dan membangunnya kembali hanya dengan dependensi yang diperlukan. Sekarang memberi saya pesan kesalahan yang berbeda ketika saya berlari rD <- rsDriver(), diakhiri dengan: [1] "Connecting to remote server" Could not open chrome browser. Client error message: Undefined error in httr call. httr output: Failed to connect to localhost port 4567: Connection refused Check server log for further details. Warning message: In rsDriver() : Could not determine server status.
Matthew Law
Juga minta maaf jika ini jelas (ini adalah pertama kalinya saya mencoba melakukan hal seperti ini), tetapi apa itu Klien Web dan apa itu GA? Selain itu, apa yang dimaksud dengan @Test dan dapatkah saya menjalankan ini dalam RStudio?
Matthew Law
Web Client -> Chrome Browser , GA -> General Avaiibility , @ Test -> Sebuah penjelasan yang digunakan untuk mengidentifikasi sebuah tes menggunakan JUnit / TestNG (Anda bisa hanya mempertimbangkan sebagai tes )
DebanjanB
1
Ini hanya jawaban umum tentang cara memecahkan masalah ketidakcocokan versi saat menggunakan Selenium. Jawaban ini tidak merujuk Ratau RSeleniumsama sekali. Jawaban yang diterima ini haruslah yang oleh @CAD di bawah ini.
conrad-mac
1
+1 untuk penjelasannya (ajari pria memancing dan semua itu). Saya meningkatkan versi chromedriver agar sesuai dengan versi chrome saya (Bantuan Chrome -> Tentang - versi) dan sudah diperbaiki.
Hoki
26

Memperbarui versi Google Chrome ke 74 berfungsi untuk saya.

Langkah-langkah: 1. Pergi ke Bantuan -> Tentang Google Chrome -> Chrome akan secara otomatis mencari pembaruan (perbarui Chrome ke versi terbaru)

masukkan deskripsi gambar di sini

Atul
sumber
4
Ini bekerja baik untuk saya. Jauh lebih mudah daripada solusi yang diterima.
Anthony To
22

Saya harus menginstal ulang busur derajat untuk menarik webdriver-managermodul yang diperbarui . Juga, per komentar @ Mark, package-lock.jsonmungkin mengunci ketergantungan.

npm uninstall protractor
npm install --save-dev protractor

Kemudian, pastikan untuk memeriksa maxChromedrivernilai node_modules/protractor/node_modules/webdriver-manager/config.jsonsetelah menginstal ulang untuk memverifikasi cocok dengan versi driver Chrome yang diinginkan.

demisx
sumber
2
Terima kasih, berhasil untuk saya. Saya memiliki busur derajat terbaru (5.4.2) diinstal tetapi manajer-web dependen macet pada 12.1.4. menghapus dan menginstal ulang busur derajat memberi saya webdriver-manager yang lebih baru - 12.1.7
Kev
Terima kasih, bekerja untuk saya juga. Saya memiliki masalah yang sama dengan Kev yang dijelaskan dalam komentar sebelumnya. ^
Toms Tumshais
1
ini masalah bagi saya. Itu package-lock.jsonmengunci ketergantungan. Ini bukan bug, hanya perlu memperbarui dependensi.
Tandai
2
Bisakah Anda memperbarui jawaban Anda untuk memasukkan informasi yang disediakan oleh @ Mark? Ini mungkin penting (itu adalah masalah aktual yang saya miliki)
lealceldeiro
8

Saya menangani masalah ini hari ini dan memutakhirkan webdrivermanger saya menyelesaikannya untuk saya (Versi saya sebelumnya adalah 3.0.0):

<dependency>
    <groupId>io.github.bonigarcia</groupId>
    <artifactId>webdrivermanager</artifactId>
    <version>3.3.0</version>
    <scope>test</scope>
</dependency>
cmlonder
sumber
1
Saya telah mengatasi masalah yang sama dengan memutakhirkan ke versi 3.3.0, Terima kasih
Rajesh Om
1
Saya berada di versi 1.x. Memperbarui ke 3.3.0 memperbaikinya juga untuk saya.
ArtOfWarfare
Anda harus menggunakan versi terbaru yaitu <version> 3.6.2 </version>.
Neyomal
Saya pikir jawaban ini akan jauh lebih baik dengan memasukkan langkah-langkah tentang bagaimana seseorang dapat meningkatkan "manajer web" mereka. Semua yang Anda lakukan di sini disediakan XML tanpa banyak penjelasan. Maukah Anda memperbarui jawaban ini dengan beberapa detail tambahan? Terima kasih.
StatsStudent
7

Saya baru saja mengalami kesalahan yang sama menggunakan pengaturan RSelenium::rsDriver()default chromever = "latest"yang mengakibatkan upaya gagal untuk menggabungkan chromedriver 75.0.3770.8dengan terbaru google-chrome-stable 74.0.3729.157:

session not created: This version of ChromeDriver only supports Chrome version 75

Karena ini tampaknya merupakan masalah yang berulang dan sangat menjengkelkan, saya telah menemukan solusi berikut untuk selalu menggunakan versi ChromeDriver terbaru yang kompatibel :

rD <- RSelenium::rsDriver(browser = "chrome",
                          chromever =
                                  system2(command = "google-chrome-stable",
                                          args = "--version",
                                          stdout = TRUE,
                                          stderr = TRUE) %>%
                                  stringr::str_extract(pattern = "(?<=Chrome )\\d+\\.\\d+\\.\\d+\\.") %>%
                                  magrittr::extract(!is.na(.)) %>%
                                  stringr::str_replace_all(pattern = "\\.",
                                                           replacement = "\\\\.") %>%
                                  paste0("^",  .) %>%
                                  stringr::str_subset(string =
                                                              binman::list_versions(appname = "chromedriver") %>%
                                                              dplyr::last()) %>%
                                  as.numeric_version() %>%
                                  max() %>%
                                  as.character())

Kode di atas hanya diuji di Linux dan menggunakan beberapa paket rapi (instal terlebih dahulu atau tulis ulang di basis R). Untuk sistem operasi lain, Anda mungkin harus mengadaptasinya sedikit, terutama ganti command = "google-chrome-stable"dengan perintah khusus sistem untuk meluncurkan Google Chrome:

  • Pada MacOS harus cukup untuk mengganti command = "google-chrome-stable"dengan command = "/Applications/Google Chrome.app/Contents/MacOS/Google Chrome".

  • Di Windows, bug khusus-plattform mencegah kami memanggil biner Google Chrome secara langsung untuk mendapatkan nomor versinya. Alih-alih lakukan hal berikut:

    rD <- RSelenium::rsDriver(browser = "chrome",
                              chromever =
                                system2(command = "wmic",
                                        args = 'datafile where name="C:\\\\Program Files (x86)\\\\Google\\\\Chrome\\\\Application\\\\chrome.exe" get Version /value',
                                        stdout = TRUE,
                                        stderr = TRUE) %>%
                                stringr::str_extract(pattern = "(?<=Version=)\\d+\\.\\d+\\.\\d+\\.") %>%
                                magrittr::extract(!is.na(.)) %>%
                                stringr::str_replace_all(pattern = "\\.",
                                                         replacement = "\\\\.") %>%
                                paste0("^",  .) %>%
                                stringr::str_subset(string =
                                                            binman::list_versions(appname = "chromedriver") %>%
                                                            dplyr::last()) 
                                as.numeric_version() %>%
                                max() %>%
                                as.character())

Pada dasarnya, kode hanya memastikan versi ChromeDriver terbaru yang cocok dengan nomor versi major-minor-patch browser Google Chrome yang stabil dari sistem dilewatkan sebagai chromeverargumen. Prosedur ini harus mematuhi skema versi resmi ChromeDriver . Mengutip:

  • ChromeDriver menggunakan skema nomor versi yang sama dengan Chrome (...)
  • Setiap versi ChromeDriver mendukung Chrome dengan nomor versi mayor, minor, dan build. Misalnya, ChromeDriver 73.0.3683.20 mendukung semua versi Chrome yang dimulai dengan 73.0.3683.
Salim B
sumber
3
Pahlawan yang kita butuhkan. Terima kasih! PS: Saya diedit untuk memasukkan kode Windows untuk memudahkan pembaca di masa depan
Tung
2
👍 Saya baru saja mengintegrasikannya dengan benar karena Anda telah berhasil mengujinya!
Salim B
3

Saya benar-benar berjuang dengan ketidakcocokan antara ChromeDriver v74.0.3729.6 dan Chrome Browser v73.0. Saya akhirnya menemukan cara untuk mendapatkan ChromeDriver ke versi sebelumnya,

  1. Di Chrome> Tentang Google Chrome, salin nomor versi, kecuali untuk grup terakhir. Misalnya, 72.0.3626.

  2. Rekatkan versi itu di akhir url ini dan kunjungi. Ini akan kembali dengan versi, yang harus Anda salin. https://chromedriver.storage.googleapis.com/LATEST_RELEASE_

  3. Kembali ke baris perintah, jalankan bundle exec chromedriver-update <copied version>

DanaG.
sumber
Saya mencari solusinya, dan mengajar - pasti sudah ada jawaban seperti ini :)
Aleks
3

Travis CI

Saya memiliki masalah yang sama di Travis dan diselesaikan dengan menambahkan:

addons:
  chrome: stable

ke .travis.ymlfile saya .

Francesco Borzi
sumber
Jika ini tidak berhasil untuk Anda, coba ini: stackoverflow.com/a/57577404/2441263
lucas
3

Alternatif Travis CI

Jawaban lain karena Francesco Borzi tidak bekerja untuk saya.

Tambahkan ini ke travis.yml Anda:

addons:
  chrome: stable

before_script:
  - LATEST_CHROMEDRIVER_VERSION=`curl -s "https://chromedriver.storage.googleapis.com/LATEST_RELEASE"`
  - curl "https://chromedriver.storage.googleapis.com/${LATEST_CHROMEDRIVER_VERSION}/chromedriver_linux64.zip" -O
  - unzip chromedriver_linux64.zip -d ~/bin

Banyak terima kasih dan penghargaan untuk tagliala di github:

https://github.com/diowa/ruby2-rails5-bootstrap-heroku/commit/6ba95f33f922895090d3fabc140816db67b09672

lucas
sumber
2

Solusi ini berhasil untuk saya

  1. Pastikan Anda menggunakan R 3.5.3 atau lebih tinggi
  2. driver <- rsDriver(browser=c("chrome"), chromever="73.0.3683.68")
stevec
sumber
2

Tidak perlu menurunkan versi Chrome lagi, ketika Anda mendapatkan kesalahan ini hanya berarti saatnya untuk menjalankan webdriver-manager updatelagi

Bogdan Martinescu
sumber
2

Mengalami masalah ini dan dapat menyelesaikannya dengan 2 langkah utama:

1 - Perbarui ke chrome terbaru via cleb homebrew

brew cask upgrade chromedriver

2 - perbarui ke ver terbaru melalui Chrome GUI

chrome: // pengaturan / bantuan atau cmd+ ,kemudian menempelkan bantuan di akhir (pilihan Anda)

dari sana Anda harus mendarat di Halaman Tentang Chrome. Di sini Anda perlu memverifikasi bahwa Anda berada pada versi terbaru dan terhebat (masalah yang saya hadapi berasal dari ketidakcocokan dalam cli vs versi chrome saat ini)

jika Anda mendapatkan kesalahan, Anda akan melihat update & relaunchtombol tindakan utama.

setelah chrome "diluncurkan kembali" sekarang akan memiliki versi terbaru yang cocok dengan klien Anda

contoh:

Google Chrome is up to date
Version 80.0.3987.87 (Official Build) (64-bit)
Denis S Dujota
sumber
2

buka saja url ini di browser chrome

 chrome://settings/help  

dan chrome akan secara otomatis mencari pembaruan (perbarui Chrome ke versi terbaru)

selesai :)

mamal
sumber
1

Saya mendapat kesalahan yang sama ketika saya menggunakan kerangka robot (kerangka berbasis Selenium) dalam contoh Docker . Alasannya adalah buruh pelabuhan menggunakan cache google-chrome-stable_current_amd64.debuntuk Chrome tetapi telah menginstal driver chrome terbaru yang merupakan versi yang lebih baru.

Kemudian saya menggunakan perintah dan kesalahan di bawah ini diselesaikan.

docker-compose build --no-cache

Semoga ini bisa membantu seseorang.

Arosha
sumber
1

Saya menghadapi kesalahan yang sama:

sesi tidak dibuat: Versi ChromeDriver ini hanya mendukung Chrome versi 75

...

Info driver: driver.version: ChromeDriver

Kami menjalankan tes dari komputer yang tidak memiliki UI nyata, jadi saya harus bekerja melalui command line (CLI).

Saya mulai dengan mendeteksi versi Chrome saat ini yang diinstal pada komputer Linux:

$> google-chrome --version

Dan mendapat tanggapan ini:

Google Chrome 74.0.3729.169

Jadi saya memperbarui versi Chrome seperti itu:

$> sudo apt-get install google-chrome-stable

Dan setelah memeriksa lagi versi yang saya dapatkan ini:

Google Chrome 75.0.3770.100

Kemudian tes Selenium mampu berjalan dengan lancar.

riorio
sumber
Ini berlaku ketika browser chrome dipasang melalui repo / ppa dan tidak dapat memperbarui sendiri
prusswan
1

Cukup perbarui busur derajat:

npm instal busur derajat @ ​​terbaru --save-dev

Gi1ber7
sumber
1

Anda dapat menentukan versi pasti pemasangan Chrome Anda seperti ini:

webdriver-manager update --versions.chrome 73.0.3683.75

Mungkin Anda perlu melakukan yang webdriver-manager cleanpertama dalam hal penurunan peringkat.

whitebrow
sumber
1
$ which chromedriver
/usr/local/bin/chromedriver
$ chromedriver --version
ChromeDriver 78.0.3904.105

Saya mengunduh file zip dari https://chromedriver.chromium.org/downloads Disebutkan, "Jika Anda menggunakan Chrome versi 79, silakan unduh ChromeDriver 79.0.3945.36" dan saya menggunakan Chrome versi 79. (saya memeriksa chrome://settings/help) Rupanya, kesalahan bagi saya adalah "Versi ChromeDriver ini hanya mendukung Chrome versi 78"

Dan kemudian saya mengklik file zip dan memindahkan file "chromedriver" ke /usr/local/bin/direktori. Itu memecahkan masalah.

$ which chromedriver
$ chromedriver --version
ChromeDriver 79.0.3945.36
kangkyu
sumber
0

Ini berguna untuk orang Linux. Masalah saya sepele, saya menggunakan browser chromium. Saya memasang chrome dan semua masalah teratasi. Itu bisa bekerja dengan kromium tetapi dengan tindakan ekstra. Saya tidak menerima kesuksesan. Saya dapat mengatur versi driver yang diperlukan untuk konfigurasi busur derajat. Ini menggunakan yang terbaru. Saya membutuhkan downgrade.

Victor Shelepen
sumber
0

Saya memiliki masalah yang hampir sama seperti ini, masalahnya ada di dalam pipa ketika menjalankan tes selenium saya yang membutuhkan paket chromedriver untuk menjalankan tes e2e.

Kesalahan saya membangun pipa

Masalahnya hanya karena dalam pipa (dalam kasus saya) adalah memiliki versi chrome 73, dan paket chromedriver saya diinstal pada versi 74.

Akhirnya ada dua solusi sederhana:

  1. Turunkan versi krom Anda
  2. Turunkan versi paket chromedriver Anda. dalam kasus saya, karena saya menjalankan di dalam pipa saya perlu menginstal chromedriver sebelum menjalankan tes selenium seperti yang ditampilkan di bawah ini.

    - script: npm install [email protected] --chromedriver-force-download displayName: 'Install Chrome'

Gadani
sumber
Saya mengalami masalah yang sama, Bagaimana cara mengetahui versi chrome pada node Jenkins?
Chandresh Mishra
Cara memasang chrome pada node sebagai bagian dari build pipeline jika tidak ada chrome
Chandresh Mishra
untuk memasang chrome sebagai bagian dari build pipeline, Anda bisa menambahkan skrip tugas yang telah saya letakkan di atas.
Gadani
0

Menggunakan Visual Studio

Saya tidak bisa menyelesaikan ketidakcocokan versi dengan mengikuti salah satu jawaban saat menggunakan Visual Studio, tetapi hanya memperbarui Selenium.WebDriver dan Selenium.WebDriver.ChromeDriver paket nuget ke versi terbaru berfungsi.

Saya menggunakan Chrome v78, dan memutakhirkan chromedriver ke v78 masih memberikan kesalahan ketidakcocokan. Jawaban CAD membawa saya ke solusi.

GuyB
sumber
0

Masalah yang sama terjadi pada saya hari ini.

Solusi saya:

Unduh rilis stabil terbaru dari chromedriver: https://sites.google.com/a/chromium.org/chromedriver/

Perbarui driver chrome di folder Selenium Anda. Ini agak sulit, karena ada di folder tersembunyi di PC Anda bernama AppData. Inilah cara saya melakukannya di komputer saya (Windows 7):

C:> pengguna> pengguna Anda> \ AppData (Anda perlu menulis ini di kotak path folder, karena itu adalah folder tersembunyi)> Lokal (ini adalah nama folder dalam bahasa Portugis, mungkin itu akan memiliki nama yang berbeda untuk Anda) > SeleniumBasic

Di sana Anda akan menemukan aplikasi chromedriver. Ganti nama saja (jika tidak berfungsi, Anda ingin memiliki versi yang lebih lama) dan kemudian menempelkan rilis terbaru.

Amanda Restom de Castro
sumber
0

Saya memiliki masalah yang sama baru-baru ini. Ini kesalahan saya:

System.InvalidOperationException : session not created: This version of ChromeDriver only supports Chrome version 76 (SessionNotCreated)

Perbaikan ini berhasil untuk saya:

  • pastikan tidak ada proses chromedriver.exe yang berjalan (jika perlu bunuh semuanya misalnya melalui task manager)
  • pergi ke folder bin dan menghapus file chromedriver.exe dari sana (dalam kasus saya itu: [project_folder]\bin\Debug\netcoreapp2.1)
krupaluke
sumber
0

Pastikan Anda memiliki pengelola webdriver versi terbaru. Anda dapat menginstal menggunakan yang samanpm i webdriver-manager@latest --save

Kemudian jalankan yang berikut ini

command.webdriver-manager update
Rahul Tokase
sumber
0

Saya memiliki masalah yang sama dan menyelesaikannya dengan hanya mengunduh chromedriverfile untuk versi chrome sebelumnya. Saya telah menemukan bahwa versi 79 dari Chrome kompatibel dengan versi Selenium saat ini.

Saya kemudian menyimpannya di jalur yang ditentukan, dan menautkan jalur itu ke jalur saya webdriver.

Langkah-langkah yang tepat ditentukan dalam tautan ini: http://chromedriver.chromium.org/downloads

Omer Hen
sumber
0

saya memiliki masalah yang sama dengan memperbarui webdriver manager di mac menggunakan terminal ini untuk memperbarui webdriver manager-

 sudo webdriver-manager update
MKR
sumber
0
  1. unduh versi rilis stabil chrome Anda saat ini & instal (untuk memeriksa versi Google chrome Anda buka Bantuan> tentang Google chrome & coba pasang versi itu di mesin lokal Anda.

Untuk mengunduh versi Google chrome, kunjungi situs = chromedriver.chromium.org

Akash Desai
sumber
0

Saya memeriksa versi browser google chrome saya yang diinstal pada pc saya dan kemudian diunduh yang ChromeDriversesuai dengan versi browser saya. Anda dapat mengunduhnya dari https://chromedriver.chromium.org/

Varat Vohra
sumber