自动化测试框架的安装及使用Python + Nosetests + Webdriver

1 Python + Nosetests安装及配置

1.1 Python安装,以Windows为例
获取python-2.7.6.msi或者python-2.7.5.msi双击msi文件安装即可
1.2 Python配置
右单击我的电脑(或计算机)->属性->高级->环境变量,在系统变量中找到PATH变量并编辑,添加Python安装路径到PATH变量(如:C:\Python27;)
打开cmd窗口,运行python,显示如下图:

自动化测试框架的安装及使用Python + Nosetests + Webdriver_第1张图片

1.3 Python插件安装

1.3.1 setuptools安装
目的:为安装其他插件做准备
获取setuptools-3.3.zip,拷贝setuptools zip包到C盘根目录解压,然后打开cmd窗口,切换路径至setuptools-3.3,运行python setup.py install,如下图所示

安装完成后,可以在C:\Python27\Lib\site-packages下面找到setuptools文件夹及相关目录,和C:\Python27下面多了一个Scripts目录,并能在C:\Python27\Scripts下面看到ez_install.exe
1.3.2 pip安装(可选安装,如需在线安装selenium,则需要安装)
目的:可以使用该命令在线安装插件
获取pip-1.0.2.zip,拷贝pip-1.0.2
zip包到C盘根目录解压,然后打开cmd窗口,切换路径至pip-1.0.2,运行python setup.py install
安装完成后,可以在C:\Python27\Scripts下面找到pip.exe,和能在C :\Python27\Lib\site-packages下面找到pip-1.0.2-py2.7.egg文件夹
安装成功后,可以删除解压后的目录
1.3.3 Nosetests安装
目的:该插件属于我们的框架,为运行用例做准备
获取nosetests文件,解压文件,将目录拷贝到C:\下面,打开cmd窗口,切换目录到C:\nose-1.3.1,运行python setup.py install
安装完成后,可以在C:\Python27\Scripts下面看到nosetests.exe及相关文件
为了确保nosetests对其他目录也有效,参看1.2添加C:\Python27\Scripts;到环境变量PATH里面。
打开cmd窗口,输入nosetests,回车,没有错误显示表明安装成功
1.3.4 nose-testconfig安装
目的:该插件用于框架里面的config文件导入,比如from testconfig import config
获取nose-testconfig-0.9.tar.gz文件,解压文件,将目录拷贝到C:\下面,打开cmd窗口,切换目录到C:
nose-testconfig-0.9,运行python setup.py install安装成功,如下图所示

1.3.5 Unittest安装
目的:该插件其实Python有自带,这里是安装最新版本,为安装nose-selenium插件做准备
获取unittest2-0.5.1.zip文件,解压文件,将目录拷贝到C:\下面,打开cmd窗口,切换目录到C:\ unittest2-0.5.1,运行python
setup.py install安装成功,如下图所示

1.3.6 requests安装
目的:为安装nose-selenium插件做准备
获取requests-2.2.1.tar.gz文件,解压文件,将目录拷贝到C:\下面,打开cmd窗口,切换目录到C:\ requests-2.2.1,运行python
setup.py install安装成功,如下图所示

1.3.7 nose-selenium-0.07安装
目的:该插件用于nose框架和selenium结合使用
获取nose-selenium-0.07.tar.gz文件,解压文件,将目录拷贝到C:\下面,打开cmd窗口,切换目录到C:\ nose-selenium-0.07,运行python setup.py
install安装
1.3.8其他插件安装
如需安装其他插件,请按上述方法操作
Pydoc插件:用于连接SQL
Server数据库
Lxml插件(直接安装):用于解析XML文件

2 Webdriver安装

2.1 Selenium Webdriver安装
目的:WebDriver用于启动浏览器,模拟用户在浏览器上做操作
获取selenium-2.40.0.zip文件,解压到C:\,打开cmd窗口,切换目录到C:
selenium-2.40.0,运行python setup.py install,安装成功后,输入python命令换行,进入python编辑模式,输入from
selenium import webdriver,不报错,表明已经安装成功
2.2 Chrome Webdriver安装
目的:用于Webdriver能够启动Chrome浏览器
获取chromedriver.zip文件,解压文件,将chromedriver.exe拷贝到C:\Python27目录下,并添加C:\Users\Administrator\AppData\Local\Google\Chrome\Application\(chrome安装路径,这里是win7下的安装路径)到环境变量path
2.3 IE Webdriver安装
目的:用于Webdriver能够启动IE浏览器
获取IEDriverServer_x64_2.33.0.zip文件,解压文件,将IEDriverServer.exe拷贝到C:\Python27目录下

3 Eclipse安装

前置条件:系统已经安装JDK
获取eclipse.zip文件,解压文件,比如:D:\eclipse,直接打开eclipse.exe即可运行
如果你的eclipse里面没有安装pyDev,请按以下步骤安装:
1)在Help菜单中,选择Install New Software···
2)选择Add按钮,Name:PyDev(这个随便起),Location:http://pydev.org/updates(PyDev的更新地址),点击OK

自动化测试框架的安装及使用Python + Nosetests + Webdriver_第2张图片

3)选择PyDev下的PyDev for Eclipse,别的都不要选,否则依赖检查那关过不去
4)不要勾选“Contact all update sites during install to find required software”,点击Next安装即可
5)重启Eclipse,会看到pyDev插件,系统会自动为其配置,可以创建PyDev project表示已经安装成功

自动化测试框架的安装及使用Python + Nosetests + Webdriver_第3张图片

Eclipse - SVN插件安装
1)在Help菜单中,选择Install New Software···
2)选择Add按钮,Name:SVN,Location:http://subclipse.tigris.org/update_1.8.x,点击OK
3)勾选Subclipse和SVNKit
4)不要勾选“Contact all
update sites during install to find required software”,点击Next安装即可,重启Eclipse即可
5)安装完成后即可从SVN中直接导入自动化项目工程
6)点击Next,创建新的导入文件路径http://192.168.25.69:8080/svn/hjqa/, 选择/03测试设计/98自动化测试/automation,点击Next,导入即可。
这样设置后可以方便更新上传自动化测试代码

4框架使用说明

4.1代码目录结构
4.2使用说明
-conf-> env:存放各个测试环境的信息,比如:
Øprodconfig.py:存放prod环境的用户登录信息,主站点以及各产品线站点的URL,比如:config['class'] = 'http://class.hujiang.com/'
Øyzconfig.py:存放验证环境的用户登录信息,主站点以及各产品线站点的URL
比如:config['class'] = 'http://yz.class.hujiang.com/'
Øqa2config.py:存放qa2环境的用户登录信息,主站点以及各产品线站点的URL
比如:config['class'] = 'http://class2.hujiang.com/'
Øqa3config.py:存放qa3环境的用户登录信息,主站点以及各产品线站点的URL
比如:config['class'] = 'http://class3.hujiang.com/'

自动化测试框架的安装及使用Python + Nosetests + Webdriver_第4张图片

-conf -> run:可以在cfg文件里面指定要运行的用例和运行环境的配置文件

自动化测试框架的安装及使用Python + Nosetests + Webdriver_第5张图片

如果需要指定运行某一个特定的用例,只需更新tests=[用例相对路径],比如:tests=testcase/testClass/testClassCommonStudyCard.py
如果需要在线上真实环境运行,设置tc-file=conf/env/prodconfig.py,如果要在验证环境上运行,设置为tc-file=conf/env/yzconfig.py即可
-util:存放与业务逻辑无关的公共方法,比如涉及文件读写操作,浏览器启动,判断一个元素、文件、目录是否存在
-common:存放与基础业务逻辑相关的方法或类,即涉及各个产品之间的业务逻辑公共方法,比如:登录信息录入,注册信息录入,提交订单,取消订单等
-business:存放与各产品业务相关的逻辑方法,比如:网校课程购买,团购商品购买,听写酷听写等
-testcase:存放测试用例,文件命名,类名和方法名以test开头或结尾,比如:testClassCommonStudyCard.py,类名testClassCommonStudyCard

自动化测试框架的安装及使用Python + Nosetests + Webdriver_第6张图片

每个用例都至少包含一个setUp()和teardown()。setUp()为准备测试数据,启动测试环境,如启动浏览器,确保运行环境干净等操作。teardown()清理现场,当测试运行结束,清除历史,恢复运行前的现场。
-testdata:存放测试准备数据
-testresult:当特殊测试用例需要输出特别的测试报告,保存记录
-bat批处理文件:执行用例文件,该文件封装了用例执行命令,用户只需双击该文件即可运行相应的测试用例。如果用户不使用bat批处理文件,也可以直接打开CMD窗口,运行命令:nosetests -s -v -c [指定配置文件],如:nosetests -s -v -c conf\run\class2.cfg
-nosetest.xml:保存测试运行结果

Testsuite结点属性解释:
-tests:运行的用例总量
-failures:运行失败的用例数量
-errors:运行用例出现error,表明脚本需要更新,有error没有被抓住
testcase结点中的time:单个用例的运行时间

你可能感兴趣的:(自动化测试框架的安装及使用Python + Nosetests + Webdriver)