zoukankan      html  css  js  c++  java
  • 第七章 自动化无人值守运行(上)

    ---Web自动化测试之Webdriver(python)--从零到熟练(系列)

    在你根据手工测试用例完善自动化测试用例后,每个测试用例都调试通过了,说明我们已完成了对被测对象的测试用例覆盖。可是在平时的上线回归中,你不可能一个一个地手工执行测试用例的,我们希望的是运行一个命令或是执行一次菜单,测试用例会一个一个地去执行。所以本章开始,我们将讲解如何组织测试用例,以及利用jenkins来自动执行测试用例。

    7.1 TestSuite组织测试用例

    平时我们编写测试用例的时候,都是继承unittest.TestCases类来编写测试用例的,重写了setUp()tearDown()方法,并且定义以'test'开头的具体方法,来组织成一个个测试用例。而很多的测试用例文件,我们可以用unittest.TextTestRunner()来组织运行测试用例。而根据不同的测试需要,来编写不同的suite文件。

    例如:我编写的TestSuite_Online_All.py文件:

    # -*- coding: utf-8 -*-

    '''

    Created on 2014-6-12

     

    @author: songxianfeng

    '''

    import unittest

    import sys

    import os

    sys.path.append("..")

    sys.path.append(os.getcwd()+"/src/")

    #引用测试用例文件

    from TestCases.TestCase_QT_Login import testcases_login

    from TestCases.TestCase_QT_Index import testcases_index

    class testsuit_online_all():

        def test(self):

            if __name__ == "__main__":

                #1,登录检测: testlogin

                #2,首页检测: testindex

                #......      

                #构造测试集             

                suite = unittest.TestSuite() 

                suite.addTest(testcases_login('testlogin'))

    suite.addTest(testcases_index ('testindex'))

                # 运行测试用例集 

                runner = unittest.TextTestRunner() 

                runner.run(suite)  

    if __name__ == "__main__":   

        testsuit_online_all().test()

     

    先引用测试用例文件中的测试类,如:testcases_index,然后利用“测试类(测试函数)”的方法,将具体的测试函数添加suite中,然后利用unittest.TextTestRunner()run()函数来运行测试用例集中的测试用例。

    测试用例的运行

       通过testsuite将需要的测试用例组织起来后,当需要执行这一系列的测试用例的时候,只需要执行python TestSuite_Online_All.py 命令即可。或是右击TestSuite_Online_All.py文件,选择“Run As—>”python run”运行测试集文件即可。

    为了方便管理,我们将所有的测试用例集文件放在TestSuites文件夹下,在以后配置Jenkins自动运行Job的时候就可以根据需要,进行不同的配置。

     

    7.2 利用Jenkins来管理自动化测试用例

    Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作,功能包括:

    1)持续的软件版本发布/测试项目。

    2)监控外部调用执行的工作。

       由于其是开源的,所以现在很多公司都用它来管理代码,当然要做到持续集成还是有很多工作要做的,我们只用它来调用我们的自动化测试用例。

    Jenkins基本配置

      Jenkins这个开源工具的安装及配置管理,在网上有很多相关的教程,如:http://blog.csdn.net/wangmuming/article/details/22925127

    这个上面讲的就很详细,所以我们不在此详细讲述相关的操作。本节我们只讲解,如何把我们的自动化测试用例配置到jenkins上。

       下面我们以一个实例来讲解:

    (1)我们编写了测试用例文件以及suite文件,并将所有的文件放到SVNsvn://svn.corp.ncfgroup.com/selenium_test/yyzhongchou下面。

    (2)我们在要运行测试用例的服务器上安装并配置好了jenkins,这个配置你可以在网上查找相关的方法自行安装配置。

    (3)新建一个job ,命名为Zhongchou-web-test-testsuit,然后打开这个job,单击配置菜单。

    (4)给我们这个Job添加描述,允许执行项目的人员“启动安全项目”,如图7.2.1所示:

    第七章 <wbr>自动化无人值守运行(上)

    7.2.1 添加描述及启动项目安全

    (5)对我们测试用例的源码进行管理,根据我们源码管理的工具不同,选择不同的方法。我们放的是SVN,所以选择Subversion项,然后在后面填写我们的SVN地址,如图7.2.2所示:

    第七章 <wbr>自动化无人值守运行(上)
    7.2.2 源码管理

    (6)添加构建命令。当我们执行Job的时候,怎么运行我们的测试用例呢,在这一步中,我们要添加上执行我们测试用例的命令:

    python .src estSuit estSuit_zhongchou_all.py,这样运行的时候就会调用testsuite,执行测试集中的所有测试用例了,如图7.2.3所示:

     

    第七章 <wbr>自动化无人值守运行(上)

    7.2.3 添加构建命令

    (7)构建Job。填写完成之后,点击保存按钮,返回job页。当我们想执行测试用例的时候,点击页面左侧的“立即构建”,即可运行测试用例。如图7.2.4所示:

     

    第七章 <wbr>自动化无人值守运行(上)

    7.2.4 构建Job

    (8)查看执行结果。要想查看测试用例执行的结果,我们可以单击左侧的“Build History”下面的构建项目,在打开的页面中单击左侧的“控制台输出”,就能看出用例执行的结果了。这样就可以定位错误,进行调试。如图7.2.5所示:

    第七章 <wbr>自动化无人值守运行(上)

    7.2.5查看控制台输出

  • 相关阅读:
    @slf4j 使用方法
    spark入门简单介绍
    spring boot 的简单实用和spring cloud 概念
    nginx与Tomcat
    python27+百度文字识别api
    python27+opencv2.4.10+pytesseract0.2.0图片识别
    学习vue的核心功能
    使用vscode +vue的初始环境搭建
    excel的vlookup,第一次用
    pyautogui键盘鼠标控制,python27
  • 原文地址:https://www.cnblogs.com/eagleking0318/p/6520874.html
Copyright © 2011-2022 走看看