前提
老婆是从事软件测试工作的,最近他们公司组织了自动化测试相关的培训,讲述人给了两张ppt,结果老婆可能没听明白,跑过来问我,因为我本人是一个java开发。老婆的工作一定要大力支持的!花时间研究了一下环境搭建。
公司给出的PPT上面写的很简单,主要涉及到一下关键词,和一个简单安装过程介绍,真的是很简单。以下是给出的关键词,第一眼看到的时候一脸懵逼啊!没接触过。
以下内容全部基于window 10 专业版进行配置,linux和mac 的同学,请点赞助,以后有钱了,我可以给老婆买个mac,大家就可以看到mac版本的教程了。哈哈,开个玩笑。
关键词
eclipse、python、pydev、lettuce、nose、firfox、geckodriver、selenium、vcforpython27
后面有我对每个单词的个人理解,和我一样不理解的同学,请直接跳转至后面的名词解释章节。
准备软件
请在官方渠道下载,如果嫌麻烦,可以在文章后面找到网盘地址。
eclipse-jee-neon-2-win32-x86_64
geckodriver-v0.19.0-win64
jdk-8u151-windows-x64
python-2.7.14.amd64
软件关系图
各个软件之间的关系图,仅代表个人观点:
安装过程
一下安装过程在视频中均有涉及。
1.安装JDK,这里不再重复造轮子,请自行百度。
2.eclipse是需要jdk或者jre支持的,请先进行步骤1。如果步骤1做好了,那么解压好的eclipse可以直接运行。
3.在eclipse中安装插件pydev。
4.安装python2.7,如果是最新的安装包,在安装的时候,会有选项,让选择是否配置环境变量,选择
5.eclipse中配置python2.7的运行环境。
6.安装selenium
C:\Users\win10user>python -m pip install selenium
7.写测试代码
from selenium import webdriver
from selenium.common.exceptions import NoSuchElementException
from selenium.webdriver.common.keys import Keys
import time
browser = webdriver.Firefox(); # Get local session of firefox
browser.get("http://www.baidu.com") # Load page
#browser.close()
上面的代码是演示了一下用firfox打开百度,为了方便演示,我把关闭的动作注释掉了。
总结
写完文章后,好像明白了写ppt那哥们为什么写的那么少,可能这些都是比较基础的东西吧,也可能是我有一定的编程基础,所以基本上没踩过什么深坑。因为已经给出了视频,所以没有在文章中上传一些图片。
名词解释
1.eclipse
官网原文
The Eclipse platform itself is structured as subsystems which are implemented in one or more plug-ins. The subsystems are built on top of a small runtime engine. The figure below depicts a simplified view.
翻译过来
Eclipse是一个从底层设计来构建集成Web和应用程序开发工具的平台。通过设计,平台本身并不能提供大量的终端用户功能。该平台的价值在于它所鼓励的:基于插件模型的集成特性的快速开发。
比如我有一个eclipse,是只是一个空壳,当我安装了一个jdk插件,那它就可以做java相关的开发。如果我在eclipse中安装python的插件,那它就可以帮助我们开发python,比如说代码的自动生成,自动补全等。eclipse的好处我认为是可以找到很多的插件,帮我们偷懒。
2.pydev
官网原文
PyDev is aPython IDEforEclipse, which may be used inPython,JythonandIronPythondevelopment.
翻译
PyDev是Eclipse的Python IDE,可用于Python,Jython和IronPython的开发。
就是它可以帮助你自动补全代码,还有一些调试程序,集成一些调用程序的。
3.python
官网原文
Python is a programming language that lets you work quicklyand integrate systems more effectively.
翻译
Python是一种让你快速工作的编程语言。更有效地集成系统。
4.lettuce
官网原文
Behaviour Driven Development for python
翻译
Python的行为驱动开发
我理解这是一个python的一个框架。这里面又涉及到了BDD(Behavior Driven Development,行为驱动开发)的概念,这里不做深究。
5.nose
官网原文
nose extends unittest to make testing easier
翻译
nose 扩展了单元测试,使其更加简单
更具体的我还不知道
6.firefox
这个不解释了。
7.geckodriver
官网我也不确定在哪里,但是找到了github
Proxy for using W3C WebDriver-compatible clients to interact with Gecko-based browsers.
This program provides the HTTP API described by theWebDriver protocolto communicate with Gecko browsers, such as Firefox. It translates calls into theFirefox remote protocolby acting as a proxy between the local- and remote ends.
翻译
使用W3C WebDriver兼容客户端与基于Gecko的浏览器交互的代理。
该程序提供由WebDriver协议描述的HTTP API,以与Gecko浏览器(如Firefox)进行通信。它通过充当本地和远程终端之间的代理将呼叫转换为Firefox远程协议。
我理解的他就是一个python用来操作firfox的工具,比如上文中的python 代码,其目的就是告诉geckodriver去操作firfox执行一个打开百度页面的操作 。
browser.get("http://www.baidu.com")
8.selenium
官网原文
Selenium automates browsers. That's it! What you do with that power is entirely up to you. Primarily, it is for automating web applications for testing purposes, but is certainly not limited to just that. Boring web-based administration tasks can (and should!) be automated as well.
Selenium has the support of some of the largest browser vendors who have taken (or are taking) steps to make Selenium a native part of their browser. It is also the core technology in countless other browser automation tools, APIs and frameworks.
翻译
Selenium自动化浏览器。而已!你用这种力量做什么完全取决于你。主要是用于自动化Web应用程序进行测试,但肯定不仅限于此。无聊的基于Web的管理任务也可以(也应该是)自动化。
Selenium得到了一些最大的浏览器供应商的支持,他们已经(或正在采取)步骤使Selenium成为其浏览器的本地部分。它也是无数其他浏览器自动化工具,API和框架的核心技术。
我理解Selenium,调用了geckodriver;python调用了Selenium;
9.vcforpython27
vc对python的支持
参考资料
主要安装过程参考的这里
https://www.cnblogs.com/fnng/archive/2013/05/29/3106515.html
http://www.pydev.org/
http://www.seleniumhq.org/
http://docs.oracle.com/javase/tutorial/getStarted/cupojava/win32.html
这个关于pydev的写的也值得参考,我这里用了另外一种比较好理解的方法。
http://www.cnblogs.com/Bonker/p/3584707.html
视频
搭建视频,及主要使用软件共享在网盘,仅供参考
链接:https://pan.baidu.com/s/1eSyAwQQ 密码:wycz
声明
以上内容及涉及软件,全部是为了学习交流使用,如有侵权,请及时联系作者,我会删除内容。
网友评论