Selenium WebDriverでFreeBSD 10.2のGoogle Chromeを自動実行

53
Selenium WebDriver で FreeBSD 10.2 で Google Chrome で でででで でででで

Transcript of Selenium WebDriverでFreeBSD 10.2のGoogle Chromeを自動実行

FreeBSD 10.2 Mozilla Firefox Google Chrome

Selenium WebDriverFreeBSD 10.2 Google Chrome

Selenium?34Se16217.4

3

3

Selenium?http://docs.seleniumhq.org/WebApache 2.0 License

Selenium WebDriverhttp://docs.seleniumhq.org/projects/webdriver/WebMozilla Firefox, Google Chrome(Linux, Windows, MacOS, Android), Internet Explorer, Safari, EdgeJava, Ruby, Python, C#, Javascript(Node.js)OSLinux, MacOS, Windows

6

6

201612

7

7

SNS

8

8

https://twitter.com/satokaz/status/682910995040190464

9

9

SolarisNode.js

10

10

11

11

SolarisWebDriver?

12

12

13

13

14

14

Solaris 11.3(x86)Selenium WebDriver Mozilla FirefoxSelenium GridGoogle ChromeInternet ExplorerAndroidPythonRubyJava

OS?

16

16

FreeBSD 10.2(amd64 or i386)Selenium WebDriverMozilla FirefoxSelenium GridGoogle ChromeInternet ExplorerAndroidPythonRubyJavaNode.js

GoogleChrome?

18

18

19

19

Google ChromeSelenium

ChromeDriver

https://sites.google.com/a/chromium.org/chromedriver/

Google ChromeFreeBSDSelenium

ChromeDriver

FreeBSD

Google ChromeFreeBSDSelenium

ChromeDriver

FreeBSDFreeBSD

23

23

?

24

24

25

25

Google ChromeFreeBSDSelenium

ChromeDriver

FreeBSDFreeBSDFreeBSD

orz

27

27

28

28

ChromeDriverOSWindows(32bit)Mac(32bit)Linux(32bit/64bit)

ChromeDriverOSWindows(32bit)Mac(32bit)Linux(32bit/64bit)

Google ChromeSelenium

ChromeDriver

FreeBSDLinux&LinuxFreeBSD

FreeBSD 10.2(amd64 or i386)X WindowWebChromeDriverPythonRubySelenium WebDriver

FreeBSD 10.2(amd64 or i386)WebGoogle Chrome/etc/sysctl.conf /usr/local/bin/chromeChromeDriverLinuxChromeDriverLinux

Web(1)Google Chrome Ports Collection# cd /usr/ports/www/chromium# make install cleanPackage# pkg install www/chromium

Web(2)/etc/sysctl.confkern.ipc.shm_allow_removed=1

Web

36

36

ChromeDriver(1)Linux /etc/rc.conf linux_enable="YES"

ChromeDriver(2)Linux linux_base-c6CentOSPorts Collection# cd /usr/ports/emulators/linux_base-c6# make install cleanPackage# pkg install emulators/linux_base-c6

ChromeDriver(3)ChromeDriverLinux 32bithttps://sites.google.com/a/chromium.org/chromedriver/downloadsLinuxELFbranding# brandelf -t Linux chromedriver

ChromeDriver(4)Linuxchromedriver% ldd chromedriver or CentOS 6rpmrpm# cd /compat/linux# rpm2cpio rpm | cpio -id 1 3

RPMRPMGConf2-2.28.0-6.el6.i686.rpmlibgconf-2.so.4ORBit2-2.14.17-5.el6.i686.rpmlibORBit-2.so.0libgconf-2.so.4 dbus-libs-1.2.24-8.el6_6.i686.rpmlibdbus-1.so.3libgconf-2.so.4 libX11-1.6.0-6.el6.i686.rpmlibX11.so.6libXau-1.0.6-4.el6.i686.rpmlibXau.so.6libxcb.so.1 libstdc++-4.8.5-4.el7.i686.rpmlibstdc++.so.6GLIBCXX_3.4.15 CXXABI_1.3.5 libxcb-1.9.1-3.el6.i686.rpmlibxcb.so.1libX11.so.6 nspr-4.10.8-1.el6_6.i686.rpmlibnspr4.sonss-3.18.0-5.3.el6_6.i686.rpmlibnss3.solibsmime3.sonss-util-3.18.0-1.el6_6.i686.rpmlibnssutil3.so

ChromeDriver

42

42

43

43

(1)WebDriverChromeDriver ChromeDriver.sh WebDriver

(2)Pythondriver = webdriver.Chrome( '/path/to/chromedriver.sh')

(3)RubySelenium::WebDriver::Chrome ::Service.executable_path = /path/to/chromedriver.sh'driver = Selenium::WebDriver.for :chrome, :switches => %w[--ignore-certificate-errors --disable-popup-blocking --disable-translate]

(4)JavaSystem.setProperty( "webdriver.chrome.driver", /path/to/chromedriver.sh");driver = new ChromeDriver();

(5)Node.js (WebDriverJS) var chrome = require('selenium-webdriver/chrome');var service = new chrome.ServiceBuilder( '/path/to/chromedriver.sh') .build();chrome.setDefaultService(service);driver = new webdriver.Builder() .withCapabilities(webdriver.Capabilities.chrome()) .build();

49

49

GoogleOSS~ - Linux

BPhttp://itpro.nikkeibp.co.jp/article/COLUMN/20131003/508665/

JavaGoogle Chrome

FreeBSD 10.2(amd64 or i386)Google ChromeGoogle ChromeFreeBSDChromeDriverLinux 32bitLD_LIBRARY_PATHGoogle ChromeFreeBSDChromeDriverLinux 32bit

(^.^)/~~~

53