First, Test System: Python + Selenium + pycharm + Jenkins/docker
Environment Construction:
1. Install python 3.4/3.5 2/3.6/3.7
2. Configure Environment variables
3.pip Install selenium== version number 3.3 (frame with the latest in mature language)
4. Install editor Pycharm, Project path cannot contain Chinese, name is meaningful, Python version is selected correctly
5. browser Firefox version <47 chrome <54 version free Webdriver driver, the browser comes with Webdriver; Firefox version >47 chrome >54 version requires Install driver (Browser driver version corresponds to selenium version;
can go to https://www.seleniumhq.org/download/view browser version corresponding to Webdriver, path third party Drivers, Bindings, and Plugins (third side drivers and plugins) Change log, common with IE, chrome, Firefox)
Note: In the browser installation to turn off the browser auto-update feature, the best off-screen environment installation, webdriver and browser version mismatch Python will not be able to invoke the browser to operate
Webdriver Download the rear browser. Application the same folder and add paths to the PATH environment variable
You can also put the webdriver in the same directory as the Python.exe file and add the paths to the PATH environment variable.
Selenium Brief introduction of:
Selenium: is an open source and portable automated software Testing tool for testing Web applications that are capable of running in different browsers and operating systems. Selenium is really not a single tool, but a set of tools that help testers automate web-based applications more effectively.
Selenium IDE: Recording Playback browser actions
Selenium Rc:selenium Remote control simulates browser functionality via a script
Selenium Webdriver: Formerly known as Selenium RC, send commands directly to the browser and retrieve the results.
Selenium Grid : Automated Distributed testing
Host/main node hub-------control our extension/node nodes
Main section-----Control connect our sub-node IP + port (default port 4444,5555) multiple sub-node ports are not the same
Selenium Server Configuration Java Environment
Running Selenium Server
Java-jar Selenium-server-standalone-xxx.jar
...-role hub
Jenkins : Continuous integration tools, CI
What is continuous integration?
In simple terms, continuous integration is frequent, continuous integration in the work of multiple team members and gives feedback. Frequently (multiple times a day) integrate code into the trunk
(1) Quickly detect errors. With each update, it is integrated into the trunk, which makes it easy to find errors quickly and locate errors.
(2) Prevent the branch from significantly deviating from the trunk. If it is not often integrated, the trunk is constantly updated, resulting in future integration difficulties become larger, or even difficult to integrate
1. Construction of Scheduled tasks, continuous project construction/testing software
2. Trigger: Trigger script to run after development of deployment project
3. Monitor externally-run jobs
Process: Create tasks, run builds, schedule builds
Benefits: Identify problems early and improve the efficiency of your work
Python + Selenium + pycharm environment deployment details and Selenium Brief introduction