Protractor: Jarfile selenium-server-standalone-4.0.0-alpha-1.zip.jar tidak valid atau rusak

Dibuat pada 24 Apr 2019  Β·  40Komentar  Β·  Sumber: angular/protractor

Ketika saya memulai webdriver-manager, saya menerima kesalahan ini, saya tidak mengubah apa pun dalam proyek saya yang membenarkan kesalahan seperti itu, dan saya telah menggunakannya selama lebih dari setahun, setiap hari.

Kesalahan: Jarfile tidak valid atau rusak ./node_modules/protractor/node_modules/webdriver-manager/selenium/selenium-server-standalone-4.0.0-alpha-1.zip.jar


  • Versi Node: 8.12
  • Versi Busur Derajat: 5.4.2
  • Browser: Chrome
  • Sistem Operasi dan Versi Ubuntu 16.04
  • File konfigurasi busur derajat Anda:
'use strict';

require('babel-core/register');

const myReporter = require('./Report/MyReporter');
const Jasmine2HtmlReporter = require('protractor-jasmine2-html-reporter');
const failFast = require('jasmine-fail-fast');

module.exports.config = {
    seleniumAddress: 'http://localhost:4444/wd/hub',
    framework: 'jasmine2',
    allScriptsTimeout: 600000,
    capabilities: {
        browserName: 'chrome',
        chromeOptions: {
            args: ['--test-type', 'no-sandbox'],
        },
    },
    onPrepare: () => {
        browser.manage().window().setSize(1200, 1024);
        jasmine.getEnv().addReporter(failFast.init());
        jasmine.getEnv().addReporter(myReporter);
        jasmine.getEnv().addReporter(new Jasmine2HtmlReporter({
            takeScreenshots: true,
            takeScreenshotsOnlyOnFailures: true,
            fixedScreenshotName: false,
            fileNameDateSuffix: true,
            cleanDestination: false,
            savePath: './Report/testReports/'
        }));
    }
};
  • Tes contoh yang relevan
fixed bug

Komentar yang paling membantu

Saya akan merilis rilis baru besok.

Semua 40 komentar

Saya mengalami masalah yang sama! :(

@sborland Saya menyelesaikan ini dengan cara saya sendiri dengan mengubah file standalone-response.xml dan update-config.json. Tetapi tautan ini dapat membantu Anda dengan cara yang lebih baik:
https://stackoverflow.com/a/55836347

@davidza terima kasih! Pekerjaan ini berhasil untuk saya.

@davidza Saya memiliki masalah yang sama. Tetapi saya tidak ingin menginstal selenium secara global. Aplikasi angularjs saya memiliki busur derajat dalam modul simpulnya dan busur derajat memiliki ketergantungannya sendiri di mana driver web diperbarui ke yang terbaru. Bagaimana cara menginstalnya khusus untuk busur derajat dan tidak secara global?

Yup ini adalah bug. Ini tampaknya memengaruhi setiap versi server selenium.

Berikut adalah bug yang terdaftar di webdriver-manager https://github.com/angular/webdriver-manager/issues/370

Dan berikut adalah perbaikan / pembahasan untuk perbaikannya: https://github.com/angular/webdriver-manager/pull/371

Saya akan merilis rilis baru besok.

sebagai solusi sementara untuk masalah ini, Anda dapat secara eksplisit menyetel versi mandiri saat menjalankan webdriver.
--versions.standalone = 3.9.1

Saat menjalankan kasus uji di atas busur derajat, solusi ini tidak dapat membantu saya. Bagaimana cara menggunakan solusi ini dengan busur derajat?

saya hanya menguji solusi dengan pengaturan kami saat ini.
Tetapi ketika melihat dokumen resmi
http://www.protractortest.org/#/

Aku akan lari

  • pembaruan webdriver-manager --versions.standalone = 3.9.1
  • webdriver-manager mulai
  • busur derajat conf.js

Saya harap ini membantu Anda dengan cara apa pun.

@ tominartz90 saya telah mencoba. Webdriver berhasil dijalankan melalui port 4444 tetapi mendapatkan kesalahan saat menjalankan protractor conf.js
[15:28:48] I/launcher - Running 1 instances of WebDriver [15:28:48] I/hosted - Using the selenium server at http://localhost:4444/wd/hub [15:28:50] E/launcher - Cannot define class using reflection [15:28:50] E/launcher - WebDriverError: Cannot define class using reflection

@ZehraHN Saya menemukan bahwa ketika saya menggunakan versi 3.141.0, saya tidak lagi mengalami masalah itu. Apa pun dalam kisaran 3.8 atau 3.9 menyebabkan saya mendapatkan kesalahan refleksi.

Ya bekerja sekarang. Terima kasih @clymerrm

@davidza Saya memiliki masalah yang sama. Tetapi saya tidak ingin menginstal selenium secara global. Aplikasi angularjs saya memiliki busur derajat dalam modul simpulnya dan busur derajat memiliki ketergantungannya sendiri di mana driver web diperbarui ke yang terbaru. Bagaimana cara menginstalnya khusus untuk busur derajat dan tidak secara global?

@tejasbhosale saya tidak menggunakan busur derajat secara global. Saya mengubah file: node_modules/protractor/node_modules/webdriver-manager/selenium/standalone-response.xml
tidak termasuk referensi yang terkait dengan versi 4.0.0-alpha dan di dalam file:
/node_modules/protractor/node_modules/webdriver-manager/selenium/update-config.json
saya membuat perubahan ini:

"standalone": {
        "last": "/node_modules/protractor/node_modules/webdriver-manager/selenium/selenium-server-standalone-3.141.59.jar",
        "all": [
            "/node_modules/protractor/node_modules/webdriver-manager/selenium/selenium-server-standalone-3.141.59.jar"
        ]
    },

Setelah itu, saya menyimpan file-file ini dari jalur node_modules, sehingga mereka tidak akan diperbarui, dan menambahkan skrip berikut ke package.json:

"scripts": {
        "preinstall": "node_modules/protractor/node_modules/webdriver-manager/bin/webdriver-manager clean",
        "postinstall": "cp standalone-response.xml ./node_modules/protractor/node_modules/webdriver-manager/selenium/ & cp update-config.json ./node_modules/protractor/node_modules/webdriver-manager/selenium/ & node_modules/protractor/node_modules/webdriver-manager/bin/webdriver-manager update --versions.standalone=3.141.59",
        "start": "webdriver-manager start"
    },

Saya tahu, terlalu banyak bermanuver untuk menyelesaikan masalah, tetapi begitulah cara saya menyelesaikannya sebelum solusi lain yang mereka posting.

Menghadapi masalah yang sama seperti npm install mengunduh jar rusak "selenium-server-standalone-4.0.0-alpha-1.zip.jar".

Mencoba menginstal npm lagi.

Itu tidak memiliki direktori selenium sendiri di bawah webdriver-manager!

File di bawah webdriver-manager:
total 64
-rw-r - r-- 1 root root 1205 26 Okt 1985 gulpfile.js
-rw-r - r-- 1 root root 547 26 Okt 1985 config.json
-rw-r - r-- 1 root root 2455 26 Okt 1985 README.md
-rw-r - r-- 1 root root 1078 26 Okt 1985 LISENSI
-rw-r - r-- 1 root root 2699 26 Okt 1985 CONTRIBUTING.md
-rw-r - r-- 1 root root 21636 26 Okt 1985 CHANGELOG.md
drwxr-xr-x 2 root root 4096 25 Apr 15:08 bin
drwxr-xr-x 3 root root 4096 25 Apr 15:08 dibangun
drwxr-xr-x 2 root root 4096 25 Apr 15:08 dokumen
drwxr-xr-x 5 root root 4096 25 Apr 15:08 node_modules
-rw-r - r-- 1 root root 3650 25 Apr 15:08 package.json

Selesai dengan https://github.com/cnishina/webdriver-manager/commit/7dc17ef36e93f71bc63475612e343ffb84efec0f

Kami juga tidak mengunduh versi alfa karena sebelumnya kami tidak mengunduh versi beta. Perbarui ke webdriver-manager 12.1.2. Jika Anda menggunakan Protractor untuk mengunduh webdriver-manager, cukup hapus direktori node_modules dan instal ulang atau lakukan npm install -f . Membiarkan ini terbuka untuk visibilitas.

Selesai dengan cnishina / webdriver-manager @ 7dc17ef

Kami juga tidak mengunduh versi alfa karena sebelumnya kami tidak mengunduh versi beta. Perbarui ke webdriver-manager 12.1.2. Jika Anda menggunakan Protractor untuk mengunduh webdriver-manager, cukup hapus direktori node_modules dan instal ulang atau lakukan npm install -f . Membiarkan ini terbuka untuk visibilitas.

@rumahsakitotak
Terima kasih atas tanggapan cepat Anda tentang masalah ini. Tapi bangunan saya di Jenkins masih gagal dengan kesalahan yang sama. Apakah ada sesuatu yang saya bisa lakukan?

@tejasbhosale Apakah Anda menyimpan direktori modul node atau ruang kerja Anda? Anda dapat membersihkan ruang kerja Jenkins dan mencoba lagi. Saya melakukan instalasi bersih dan memverifikasi bahwa Anda harus mendapatkan [email protected] dengan Protractor 5.4.2 karena https://github.com/angular/protractor/blob/5.4.2/package.json#L29. Bisakah Anda memiliki file kunci yang disetel ke 12.1.1?

@cnishina Terima kasih telah menanggapi. Saya menduga serupa tetapi membersihkan ruang kerja tidak berhasil untuk saya. Saya akan meneliti lebih lanjut di konfigurasi jenkins. Tapi kabar baiknya adalah ini berfungsi di lingkungan lokal saya jadi pasti jenkins. Dan saya memeriksa pakcage.json proyek saya, apakah menggunakan versi ini
"busur derajat": "^ 5.2.0"
Apakah itu baik? apakah masih akan mendapatkan webdriver 12.1.2?

Solusi yang disebutkan di bawah ini berhasil untuk saya:

  • Copot / instal Java
  • Siapkan variabel Lingkungan jika versi java yang lebih baru diinstal

Navigasi ke :
Langkah 1:
C: \ Users \\ AppData \ Roaming \ npmnode_modules
Hapus folder yang disebutkan di bawah ini

  • busur derajat
  • webdriver-manager

Langkah 2:
Instal Ulang Busur Derajat Secara Global
npm install -g busur derajat

Langkah 3:
Jalankan kembali pembaruan Webdriver-manager

Langkah 4:
Start webdriver-manager tidak akan menampilkan error apa pun

Saya memiliki masalah yang sama.
Ini diselesaikan dengan memperbarui Busur Derajat dari 5.4.1 menjadi 5.4.2. πŸ‘
https://github.com/angular/protractor/issues/5224#issuecomment -486873791

Halo @cnishina , saya membuat "hapus direktori node_modules dan instal ulang atau lakukan npm install -f" tetapi tidak menyelesaikan masalah saya: Lihat di bawah:

β”œβ”€β”¬ [email protected]
β”‚ β”œβ”€β”€ @ types / [email protected]
β”‚ β”œβ”€β”€ @ types / [email protected]
β”‚ β”œβ”€β”¬ [email protected]
β”‚ β”‚ └── [email protected] dihapus
β”‚ β”œβ”€β”¬ [email protected]
β”‚ β”‚ └─┬ [email protected]
β”‚ β”‚ β”œβ”€β”¬ [email protected]
β”‚ β”‚ β”‚ └─┬ [email protected]
β”‚ β”‚ β”‚ └── [email protected]
β”‚ β”‚ └─┬ [email protected]
β”‚ β”‚ └── [email protected]
β”‚ β”œβ”€β”€ [email protected] dikurangi
β”‚ β”œβ”€β”¬ [email protected]
β”‚ β”‚ β”œβ”€β”€ fs. [email protected]
β”‚ β”‚ β”œβ”€β”¬ [email protected]
β”‚ β”‚ β”‚ β”œβ”€β”€ [email protected] dihapus
β”‚ β”‚ β”‚ └── [email protected]
β”‚ β”‚ β”œβ”€β”€ [email protected]
β”‚ β”‚ β”œβ”€β”¬ [email protected]
β”‚ β”‚ β”‚ └── [email protected] dihapuskan
β”‚ β”‚ β”œβ”€β”¬ [email protected]
β”‚ β”‚ β”‚ └── [email protected] dihapus
β”‚ β”‚ └── [email protected] dihapus
β”‚ β”œβ”€β”¬ [email protected]
β”‚ β”‚ β”œβ”€β”€ [email protected]
β”‚ β”‚ β”œβ”€β”¬ [email protected]
β”‚ β”‚ β”‚ β”œβ”€β”€ fs. [email protected] dihapus
β”‚ β”‚ β”‚ β”œβ”€β”€ [email protected] dihapuskan
β”‚ β”‚ β”‚ β”œβ”€β”€ [email protected] dikurangi
β”‚ β”‚ β”‚ β”œβ”€β”¬ [email protected]
β”‚ β”‚ β”‚ β”‚ └── [email protected] dihapus
β”‚ β”‚ β”‚ β”œβ”€β”€ [email protected] dihapuskan
β”‚ β”‚ β”‚ └── [email protected] dihapus
β”‚ β”‚ └── [email protected]
β”‚ β”œβ”€β”€ [email protected]
β”œβ”€β”¬ β”‚ [email protected]
β”‚ β”‚ β”œβ”€β”€ [email protected]
β”‚ β”‚ └── [email protected]
β”‚ β”œβ”€β”€ [email protected]
β”‚ β”œβ”€β”¬ [email protected]
β”‚ β”‚ └── [email protected] dihapus
β”‚ β”œβ”€β”¬ [email protected]
β”‚ β”‚ β”œβ”€β”¬ [email protected]
β”‚ β”‚ β”‚ β”œβ”€β”¬ [email protected]
β”‚ β”‚ β”‚ β”‚ └── [email protected]
β”‚ β”‚ β”‚ β”œβ”€β”€ [email protected]
β”‚ β”‚ β”‚ β”œβ”€β”¬ [email protected]
β”‚ β”‚ β”‚ β”‚ β”œβ”€β”€ [email protected]
β”‚ β”‚ β”‚ β”‚ β”œβ”€β”€ [email protected] dikurangi
β”‚ β”‚ β”‚ β”‚ β”œβ”€β”€ [email protected]
β”‚ β”‚ β”‚ β”‚ β”œβ”€β”€ [email protected]
β”‚ β”‚ β”‚ β”‚ β”œβ”€β”€ [email protected] dihapus
β”‚ β”‚ β”‚ β”‚ β”œβ”€β”¬ [email protected]
β”‚ β”‚ β”‚ β”‚ β”‚ └── [email protected] dihapus
β”‚ β”‚ β”‚ β”‚ └── [email protected]
β”‚ β”‚ β”‚ └── [email protected]
β”‚ β”‚ β”œβ”€β”€ [email protected] dikurangi
β”‚ β”‚ β”œβ”€β”¬ [email protected]
β”‚ β”‚ β”‚ └── [email protected] dihapus
β”‚ β”‚ └── [email protected] dihapus
β”‚ β”œβ”€β”¬ dukungan- map-
β”‚ β”‚ └── [email protected] dihapus
β”‚ β”œβ”€β”¬ [email protected]
β”‚ β”‚ β”œβ”€β”€ @ types / [email protected] dihapus
β”‚ β”‚ └── [email protected] dihapus
β”‚ └─┬ [email protected]
β”‚ β”œβ”€β”€ [email protected]
β”‚ β”œβ”€β”€ [email protected] dikurangi
β”‚ β”œβ”€β”¬ [email protected]
β”‚ β”‚ β”œβ”€β”¬ [email protected]
β”‚ β”‚ β”‚ β”œβ”€β”¬ [email protected]
β”‚ β”‚ β”‚ β”‚ └── [email protected]
β”‚ β”‚ β”‚ β”œβ”€β”€ [email protected]
β”‚ β”‚ β”‚ β”œβ”€β”¬ [email protected]
β”‚ β”‚ β”‚ β”‚ β”œβ”€β”€ fs. [email protected] dihapus
β”‚ β”‚ β”‚ β”‚ β”œβ”€β”€ [email protected] dihapuskan
β”‚ β”‚ β”‚ β”‚ β”œβ”€β”€ [email protected] dikurangi
β”‚ β”‚ β”‚ β”‚ β”œβ”€β”¬ [email protected]
β”‚ β”‚ β”‚ β”‚ β”‚ └── [email protected] dihapus
β”‚ β”‚ β”‚ β”‚ β”œβ”€β”€ [email protected] dihapus
β”‚ β”‚ β”‚ β”‚ └── [email protected] dihapus
β”‚ β”‚ β”‚ β”œβ”€β”€ [email protected] dihapus
β”‚ β”‚ β”‚ β”œβ”€β”€ [email protected] dihapus
β”‚ β”‚ β”‚ └── [email protected] dihapus
β”‚ β”‚ β”œβ”€β”€ [email protected]
β”‚ β”‚ β”œβ”€β”¬ [email protected]
β”‚ β”‚ β”‚ └─┬ [email protected]
β”‚ β”‚ β”‚ └── [email protected]
β”‚ β”‚ β”œβ”€β”€ [email protected] dihapus
β”‚ β”‚ β”œβ”€β”€ [email protected]
β”‚ β”‚ β”œβ”€β”¬ [email protected]
β”‚ β”‚ β”‚ └── [email protected]
β”‚ β”‚ └── [email protected] dihapus
β”‚ β”œβ”€β”€ [email protected] dikurangi
β”‚ β”œβ”€β”€ [email protected]
β”‚ β”œβ”€β”€ [email protected] dihapus
β”‚ β”œβ”€β”€ [email protected] dihapuskan
β”‚ β”œβ”€β”¬ [email protected]
β”‚ β”‚ β”œβ”€β”€ [email protected]
β”‚ β”‚ β”œβ”€β”€ [email protected]
β”‚ β”‚ β”œβ”€β”€ tanpa [email protected]
β”‚ β”‚ β”œβ”€β”¬ [email protected]
β”‚ β”‚ β”‚ └── [email protected]
β”‚ β”‚ β”œβ”€β”€ [email protected]
β”‚ β”œβ”€β”€ β”‚ [email protected]
β”‚ β”‚ β”œβ”€β”¬ [email protected]
β”‚ β”‚ β”‚ β”œβ”€β”€ [email protected]
β”‚ β”‚ β”‚ β”œβ”€β”€ [email protected] dihapuskan
β”‚ β”‚ └── β”‚ [email protected] deduped
β”‚ β”‚ β”œβ”€β”¬ [email protected]
β”‚ β”‚ β”‚ β”œβ”€β”¬ [email protected]
β”‚ β”‚ β”‚ β”‚ β”œβ”€β”€ [email protected]
β”‚ β”‚ β”‚ β”‚ β”œβ”€β”€ [email protected]
β”‚ β”‚ β”‚ β”‚ β”œβ”€β”€ [email protected]
β”‚ β”‚ β”‚ β”‚ └─┬ [email protected]
β”‚ β”‚ β”‚ β”‚ └── [email protected]
β”‚ β”‚ β”‚ └── [email protected]
β”‚ β”‚ β”œβ”€β”¬ [email protected]
β”‚ β”‚ β”‚ β”œβ”€β”€ [email protected]
β”‚ β”‚ β”‚ β”œβ”€β”¬ [email protected]
β”‚ β”‚ β”‚ β”‚ β”œβ”€β”€ [email protected] dihapus
β”‚ β”‚ β”‚ β”‚ β”œβ”€β”€ [email protected]
β”‚ β”‚ β”‚ β”‚ β”œβ”€β”€ [email protected]
β”‚ β”‚ β”‚ β”‚ └─┬ [email protected]
β”‚ β”‚ β”‚ β”‚ β”œβ”€β”€ [email protected] dihapus
β”‚ β”‚ β”‚ β”‚ β”œβ”€β”€ [email protected] dihapus
β”‚ β”‚ β”‚ β”‚ └── [email protected] dihapus
β”‚ β”‚ β”‚ └─┬ [email protected]
β”‚ β”‚ β”‚ β”œβ”€β”¬ [email protected]
β”‚ β”‚ β”‚ β”‚ └── [email protected] dihapus
β”‚ β”‚ β”‚ β”œβ”€β”€ [email protected] dihapus
β”‚ β”‚ β”‚ β”œβ”€β”¬ [email protected]
β”‚ β”‚ β”‚ β”‚ └── [email protected] dihapus
β”‚ β”‚ β”‚ β”œβ”€β”¬ [email protected]
β”‚ β”‚ β”‚ β”‚ └── [email protected] dihapus
β”‚ β”‚ β”‚ β”œβ”€β”¬ [email protected]
β”‚ β”‚ β”‚ β”‚ β”œβ”€β”€ [email protected] dihapus
β”‚ β”‚ β”‚ β”‚ └── [email protected] dihapus
β”‚ β”‚ β”‚ β”œβ”€β”¬ [email protected]
β”‚ β”‚ β”‚ β”‚ └── [email protected] dihapus
β”‚ β”‚ β”‚ β”œβ”€β”€ [email protected]
β”‚ β”‚ β”‚ β”œβ”€β”€ [email protected] dihapus
β”‚ β”‚ β”‚ └── [email protected]
β”‚ β”‚ β”œβ”€β”€ [email protected]
β”‚ β”‚ β”œβ”€β”€ [email protected]
β”‚ β”‚ β”œβ”€β”€ [email protected]
β”‚ β”œβ”€β”¬ β”‚ [email protected]
β”‚ β”‚ β”‚ └── [email protected]
β”‚ β”‚ β”œβ”€β”€ [email protected]
β”‚ β”‚ β”œβ”€β”€ [email protected]
β”‚ β”‚ β”œβ”€β”€ [email protected]
β”‚ β”‚ β”œβ”€β”€ [email protected] dihapus
β”‚ β”‚ β”œβ”€β”¬ [email protected]
β”‚ β”‚ β”‚ β”œβ”€β”€ [email protected]
β”‚ β”‚ β”‚ └── [email protected]
β”‚ β”‚ β”œβ”€β”¬ [email protected]
β”‚ β”‚ β”‚ └── [email protected] dihapus
β”‚ β”‚ └── [email protected]
β”‚ β”œβ”€β”¬ [email protected]
β”‚ β”‚ └─┬ [email protected]
β”‚ β”‚ β”œβ”€β”€ fs. [email protected] dihapus
β”‚ β”‚ β”œβ”€β”€ [email protected] dikurangi
β”‚ β”‚ β”œβ”€β”€ [email protected] dikurangi
β”‚ β”‚ β”œβ”€β”¬ [email protected]
β”‚ β”‚ β”‚ └── [email protected] dihapus
β”‚ β”‚ β”œβ”€β”€ [email protected] dihapus
β”‚ β”‚ └── [email protected] dihapus
β”‚ β”œβ”€β”€ [email protected]
β”‚ └─┬ [email protected]
β”‚ β”œβ”€β”€ [email protected]
β”‚ └── [email protected]

Tapi , saya memasukkan package.json dependensi saya:
"webdriver-manager": "^ 12.1.2"
Dan memperbaiki masalahnya.
@cnishina Terima kasih atas tanggapan cepat Anda tentang masalah ini.

Saya memiliki masalah yang sama.
Ini diselesaikan dengan memperbarui busur derajat dari 5.4.1 menjadi 5.4.2..2
# 5224 (komentar)

Terima kasih !!!!

Untuk StackOverflow, saya mencoba mencari postingan untuk dijawab. Saya akhirnya membuat pertanyaan dan menjawabnya:

https://stackoverflow.com/questions/55869815/error-invalid-or-corrupt-jarfile-node-modules-protractor-node-modules-webdriv

Saya memiliki penjelasan singkat tentang apa yang dilakukan pembaruan webdriver-manager dan mengapa itu terjadi. Bisakah kita memberi suara positif untuk visibilitas?

Mungkin saya tidak mengerti bagaimana mendefinisikan versi? Saya memperbarui package.json saya untuk menyertakan "protractor": "^5.4.2" , tetapi setelah menghapus node_modules dan menginstal ulang saya melihat node_modules/protractor/package.json memiliki "webdriver-manager": "^12.0.6" (dan masalah mengunduh zip.jar).

Mungkin saya tidak mengerti bagaimana mendefinisikan versi? Saya memperbarui package.json saya untuk menyertakan "protractor": "^5.4.2" , tetapi setelah menghapus node_modules dan menginstal ulang saya melihat node_modules/protractor/package.json memiliki "webdriver-manager": "^12.0.6" (dan masalah mengunduh zip.jar).

Apakah Anda memasang busur derajat secara global juga?

Tidak, saya menggunakan ./node_modules/protractor/bin/protractor , dan saya melihat bahwa which protractor tidak menghasilkan apa-apa.

ketika Anda menjalankan webdriver-manager version Anda mendapatkan versi 12.0.6 juga?

Maksud saya package.json tidak diubah untuk busur derajat 5.4.2, hanya webdriver-manager adalah versi yang diperbarui

Saya tidak menginstalnya secara global. Saya ingat ketika saya memulai proyek ini, saya butuh waktu untuk menemukan bahwa webdriver di dalam busur derajat yang perlu diperbarui, dengan ./node_modules/protractor/bin/webdriver-manager update . Ketika saya memeriksa versi itu:

$ ./node_modules/protractor/bin/webdriver-manager version
[16:29:49] I/version - webdriver-manager 12.1.1

Jadi, sepertinya lebih baik bukan? Namun,

$ ./node_modules/protractor/bin/webdriver-manager update
[16:31:28] I/file_manager - creating folder /home/man/logicgate/dev/logicgate/platform/client/node_modules/protractor/node_modules/webdriver-manager/selenium
[16:31:28] I/config_source - curl -o/home/man/logicgate/dev/logicgate/platform/client/node_modules/protractor/node_modules/webdriver-manager/selenium/standalone-response.xml https://selenium-release.storage.googleapis.com/
[16:31:28] I/config_source - curl -o/home/man/logicgate/dev/logicgate/platform/client/node_modules/protractor/node_modules/webdriver-manager/selenium/chrome-response.xml https://chromedriver.storage.googleapis.com/
[16:31:28] I/config_source - curl -o/home/man/logicgate/dev/logicgate/platform/client/node_modules/protractor/node_modules/webdriver-manager/selenium/gecko-response.json https://api.github.com/repos/mozilla/geckodriver/releases
[16:31:29] I/downloader - curl -o/home/man/logicgate/dev/logicgate/platform/client/node_modules/protractor/node_modules/webdriver-manager/selenium/chromedriver_2.46.zip https://chromedriver.storage.googleapis.com/2.46/chromedriver_linux64.zip
[16:31:29] I/downloader - curl -o/home/man/logicgate/dev/logicgate/platform/client/node_modules/protractor/node_modules/webdriver-manager/selenium/selenium-server-standalone-4.0.0-alpha-1.zip.jar https://selenium-release.storage.googleapis.com/4.0/selenium-server-standalone-4.0.0-alpha-1.zip
...

yaitu, zip alfa !, yang menyebabkan kesalahan jar rusak saat memulai.

Jadi, Anda harus mendapatkan yang terbaru. Versi terbaru adalah 12.1.4. Versi 12 sebelumnya tidak akan berfungsi karena file yang diunduh berubah. Harap tinjau petunjuk di atas untuk meningkatkan.

Saya melakukan upgrade. Izinkan saya mencoba menjelaskan lagi, karena ini sangat membingungkan: ada dua definisi yang berbeda tentang webdriver-manager.

Package.json dalam proyek saya memiliki "protractor": "^5.4.2" . Saya tidak pernah secara eksplisit menyertakan "webdriver-manager". Ketika saya menjalankan perintah untuk memperbarui, yang menarik dalam paket selenium, saya telah menjalankan ./node_modules/protractor/bin/webdriver-manager update - berinteraksi dengan webdriver build yang ada di dalam direktori bin busur derajat. Ini kludgy, dan perlu melakukan pembaruan setelah saya menginstal node_modules, tetapi berhasil, hingga perubahan yang melanggar.

Menempatkan "webdriver-manager": "^12.1.4" di package.json saya tidak berpengaruh pada versi busur derajat yang digunakan. Saya dapat mengikuti langkah-langkah ini:

  • npm install dalam direktori proyek saya
  • edit file di node_modules/protractor/package.json untuk memperbarui webdriver-manager ke ^ 12.1.4.
  • npm install dalam node_modules/protractor/
  • ./node_modules/protractor/bin/webdriver-manager update

untuk membuktikan bahwa busur derajat / bin / webdriver-manager yang diperbarui akan mendapatkan versi yang benar. Tapi, saya tidak ingin bekerja "Sekarang edit protractor package.json pasca-pemasangan" ke dalam pipeline CI kami. Apakah ada cara lain untuk memaksa busur derajat menggunakan webdriver-manager terbaru?

Bisakah Anda memperbarui package.json dan menambahkan webdriver-manager ke devDependencies Anda? Itu memperbaiki masalah saya.

Dalam eksperimen di atas, busur derajat dan webdriver-manager (jika ditambahkan) berada dalam devDependencies.

Sudahkah Anda memverifikasi bahwa versi Anda adalah 12.1.4 ketika Anda menjalankan ./node_modules/protractor/bin/webdriver-manager update ? Ada dua cara untuk melakukannya:

  1. Buka node_modules / protractor / node_modules / webdriver-manager / package.json dan periksa nomor versinya
  2. Jalankan node_modules/.bin/webdriver-manager version

    Busur derajat (secara default) harus mengunduh versi ^ 12.0.4 yang berarti harus mendapatkan 12.1.4. Jika Anda masih mendapatkan file .zip.jar itu berarti Anda memiliki versi lama dan Anda perlu memutakhirkannya.

Saya tidak menyarankan menambahkannya ke devDependencies Anda. Ini sebabnya:

Katakanlah jika Protractor mengupgrade ke versi webdriver-manager @ 13 dan Anda masih memiliki devDependency yang disetel ke webdriver-manager @ ^ 12. Ketika Anda memanggil ./node_modules/protractor/bin/webdriver-manager update , Anda tidak dijamin bahwa Anda akan menjalankan versi 12 atau 13. Ketika Protractor memanggil file, diharapkan menggunakan versi 13. Jika file Anda diunduh dengan 12, maka file ini tidak akan ada saat busur derajat membutuhkannya.

  • my-project / package.json: "protractor": "^5.4.2" dalam devDependencies, webdriver-manager tidak ada
  • $ rm -rf node_modules
  • npm install
  • cat node_modules/protractor/package.json|grep webdr
    "webdriver-manager": "bin/webdriver-manager"
    "@types/selenium-webdriver": "^3.0.0",
    "selenium-webdriver": "3.6.0",
    "webdriver-js-extender": "2.1.0",
    "webdriver-manager": "^12.0.6"

Busur derajat (secara default) harus mengunduh versi ^ 12.0.4 yang berarti harus mendapatkan 12.1.4.

Masuk akal. Dan lagi:

$  ./node_modules/protractor/bin/webdriver-manager version
`[11:19:58] I/version - webdriver-manager 12.1.1

Membingungkan.

@mathpunk , apakah ada file package-lock.json sedang diputar di sini yang mungkin telah dikunci ke 12.1.1?

Kami memiliki skenario menarik dalam organisasi kami karena kami memiliki paket npm terkait otomasi kami sendiri (pada registri internal) yang mengabstraksi otomatisasi dari SPA dan aplikasi kami. Paket itu menggunakan busur derajat 5.4.2 dan tidak menggunakan file package-lock.json karena kami telah melihat beberapa masalah dengan bagaimana npm telah menghilangkan dependensi dependensi, yang mengacaukan beberapa jalur kami. Bagaimanapun, menginstal versi paket otomatisasi kami yang memiliki busur derajat sebagai dependensinya di SPA dan aplikasi yang menggunakan file package-lock.json masih menghasilkan webdriver-manager 12.1.1 yang digunakan. npm i akan menginstalnya sebagai warga kelas satu, yang tidak kita inginkan karena 12.1.4 dan 12.1.1 akan tetap ada. npm update --depth 9999 webdriver-manager tidak berfungsi seperti yang saya harapkan, yang akan diperbarui dari 12.1.1 ke 12.1.4. Singkatnya mengubah paket-lock.json secara manual dalam setiap aplikasi yang memakan paket otomatisasi kami atau meregenerasi file segar, yang tidak kami inginkan karena itu memperbarui banyak paket yang ingin kami simpan di tempatnya untuk mencegah uji regresi bekerja, saya Saya tidak yakin harus berbuat apa.

@cnishina , terima kasih atas semua pekerjaan yang Anda lakukan pada busur derajat. Apakah Anda mendukung PR dari cabang yang bercabang 5.4.2 , yang hanya akan memperbarui webdriver-manager ke 12.1.4?

@simonua Anda berhasil memecahkannya! Paket-lock.json dihapus, node_modules dihapus, diinstal, mendapat webdriver-manager 12.1.4. Saya tidak mengerti mengapa versi didefinisikan di dua tempat berbeda dalam ekosistem ini, tapi hei, masalah terpecahkan ~

Senang melakukannya. Karena penasaran, jika Anda mengembalikan perubahan dan menjalankan npm i [email protected] dengan versi eksplisit yang Anda inginkan, saya curiga Anda dalam kondisi yang baik. Manfaat yang Anda dapatkan adalah bahwa versi Anda yang lain tetap tidak tersentuh, yang membatasi eksposur regresi.

Masalah yang sama di sini

Cukup unduh file kanan dari situs selenium https://selenium-release.storage.googleapis.com/index.html?path=4.0/
Saya mengambil file jar dan mengganti nama dari * .jar menjadi * .zip.jar
bekerja dengan baik

Apakah halaman ini membantu?
0 / 5 - 0 peringkat