Selenium standalone вышел с кодом ноль

1

Я использую 0.11.14 узла (который устанавливается через диспетчер версий "n"). Когда я начал использовать "n", это когда эти проблемы начались.

Я запускаю Java 1.7

java version "1.7.0"
Java(TM) SE Runtime Environment (build 1.7.0-b147)
Java HotSpot(TM) 64-Bit Server VM (build 21.0-b17, mixed mode)

Запуск weblriver selenium я получаю следующую ошибку

webdriver-manager start --standalone

seleniumProcess.pid: 3632
12:57:21.793 INFO - Launching a standalone server
java: malloc.c:3096: sYSMALLOc: Assertion '(old_top == (((mbinptr) (((char *) &((av)->bins[((1) - 1) * 2])) - __builtin_offsetof (struct malloc_chunk, fd)))) && old_size == 0) || ((unsigned long) (old_size) >= (unsigned long)((((__builtin_offsetof (struct malloc_chunk, fd_nextsize))+((2 * (sizeof(size_t))) - 1)) & ~((2 * (sizeof(size_t))) - 1))) && ((old_top)->size & 0x1) && ((unsigned long)old_end & pagemask) == 0)' failed.
Selenium Standalone has exited with code null

Обновление: использование узла без менеджера версий

Я просто удалил "n" и установил узел из github (со стандартным. /configure & make; make install). Теперь у меня есть версия 0.13.0, предварительно установленная и получающая ту же проблему. Я убедился, что избавился от своих node_modules в /usr/local/lib/node_modules (и любых, которые существовали в домашнем каталоге), и переустановил транспортир

npm install -g protractor

Это устанавливает [email protected], который имеет ту же проблему.

Обновление: начните с автономного флага

Запуск webdriver-менеджера со следующим

webdriver-manager start --standalone
seleniumProcess.pid: 32701
14:04:16.070 INFO - Launching a standalone server
*** glibc detected *** java: free(): invalid next size (fast): 0x00007f061c116e20 ***
======= Backtrace: =========
/lib/x86_64-linux-gnu/libc.so.6(+0x76aa6)[0x7f062e766aa6]
/lib/x86_64-linux-gnu/libc.so.6(cfree+0x6c)[0x7f062e76b84c]
/opt/jdk1.7.0/jre/lib/amd64/libnet.so(+0x5a1d)[0x7f06234f7a1d]
/opt/jdk1.7.0/jre/lib/amd64/libnet.so(Java_java_net_NetworkInterface_getAll+0x9e)[0x7f06234f84fe]
[0x7f0629746bd1]
======= Memory map: ========
00400000-00401000 r-xp 00000000 fd:00 1062136                            /opt/jdk1.7.0/bin/java
00600000-00601000 rw-p 00000000 fd:00 1062136                            /opt/jdk1.7.0/bin/java
01a13000-01cb9000 rw-p 00000000 00:00 0                                  [heap]
40a600000-40bac0000 rw-p 00000000 00:00 0 
40bac0000-40f800000 rw-p 00000000 00:00 0 
40f800000-439850000 rw-p 00000000 00:00 0 
439850000-6afd60000 rw-p 00000000 00:00 0 
6afd60000-6c4d80000 rw-p 00000000 00:00 0 
6c4d80000-800000000 rw-p 00000000 00:00 0 
7f061c000000-7f061c117000 rw-p 00000000 00:00 0 
7f061c117000-7f0620000000 ---p 00000000 00:00 0 
7f06232b5000-7f06232ca000 r-xp 00000000 fd:00 523478                     /lib/x86_64-linux-gnu/libgcc_s.so.1
7f06232ca000-7f06234ca000 ---p 00015000 fd:00 523478                     /lib/x86_64-linux-gnu/libgcc_s.so.1
7f06234ca000-7f06234cb000 rw-p 00015000 fd:00 523478                     /lib/x86_64-linux-gnu/libgcc_s.so.1

Обновление: попробуйте указать сетевые устройства с помощью java

Если я использую простую java-программу, которая будет перечислять сетевые устройства, это приведет к ошибке с той же ошибкой;

import java.io.*;
import java.net.*;
import java.util.*;
import static java.lang.System.out;

public class ListNets {

    public static void main(String args[]) throws SocketException {
        Enumeration<NetworkInterface> nets = NetworkInterface.getNetworkInterfaces();
        for (NetworkInterface netint : Collections.list(nets))
            displayInterfaceInformation(netint);
    }

    static void displayInterfaceInformation(NetworkInterface netint) throws SocketException {
        out.printf("Display name: %s\n", netint.getDisplayName());
        out.printf("Name: %s\n", netint.getName());
        Enumeration<InetAddress> inetAddresses = netint.getInetAddresses();
        for (InetAddress inetAddress : Collections.list(inetAddresses)) {
            out.printf("InetAddress: %s\n", inetAddress);
        }
        out.printf("\n");
     }
}  

Скомпилировать и запустить

javac ListNets.java
java ListNets

Показывает эту ошибку

java: malloc.c:3096: sYSMALLOc: Assertion '(old_top == (((mbinptr) (((char *) 
&((av)->bins[((1) - 1) * 2])) - __builtin_offsetof (struct malloc_chunk, fd)))) 
&& old_size == 0) || ((unsigned long) (old_size) >= (unsigned long)
((((__builtin_offsetof (struct malloc_chunk, fd_nextsize))+((2 * (sizeof(size_t)))
 - 1)) & ~((2 * (sizeof(size_t))) - 1))) && ((old_top)->size & 0x1) && ((unsigned 
long)old_end & pagemask) == 0)' failed.
[1]    1338 abort      java ListNets
Теги:
selenium
protractor

1 ответ

0
Лучший ответ

Если я верну все обратно к использованию OpenJDK, то это исправляет исходную проблему с помощью webdriver-manager

sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/java-7-openjdk-amd64/bin/java 1066
sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/java-7-openjdk-amd64/bin/javac 1066
sudo update-alternatives --set java /usr/lib/jvm/java-7-openjdk-amd64/bin/java
sudo update-alternatives --set javac /usr/lib/jvm/java-7-openjdk-amd64/bin/javac

Теперь следующие работы

webdriver-manager start

seleniumProcess.pid: 28522
16:27:21.246 INFO - Launching a standalone server
Setting system property webdriver.chrome.driver to /usr/local/lib/node_modules/protractor/selenium/chromedriver
16:27:21.283 INFO - Java: Oracle Corporation 24.65-b04
16:27:21.283 INFO - OS: Linux 3.2.0-4-amd64 amd64
16:27:21.293 INFO - v2.44.0, with Core v2.44.0. Built from revision 76d78cf
16:27:21.363 INFO - Default driver org.openqa.selenium.ie.InternetExplorerDriver registration is skipped: registration capabilities Capabilities [{platform=WINDOWS, ensureCleanSession=true, browserName=internet explorer, version=}] does not match with current platform: LINUX
16:27:21.400 INFO - RemoteWebDriver instances should connect to: http://127.0.0.1:4444/wd/hub
16:27:21.401 INFO - Version Jetty/5.1.x
16:27:21.402 INFO - Started HttpContext[/selenium-server/driver,/selenium-server/driver]
16:27:21.402 INFO - Started HttpContext[/selenium-server,/selenium-server]
16:27:21.403 INFO - Started HttpContext[/,/]
16:27:21.441 INFO - Started org.openqa.jetty.jetty.servlet.ServletHandler@5cd2b43f
16:27:21.441 INFO - Started HttpContext[/wd,/wd]
16:27:21.445 INFO - Started SocketListener on 0.0.0.0:4444
16:27:21.445 INFO - Started org.openqa.jetty.jetty.Server@7b17cda3

Ещё вопросы

Сообщество Overcoder
Наверх
Меню