zoukankan      html  css  js  c++  java
  • Python+Selenium框架-unittest执行脚本方法之addTest

    本文开始介绍如何通过unittest来管理和执行测试用例,这一篇介绍unittest下addTest()方法来加载测试用例到测试套件中去。为了演示效果,我在前面文章的脚本基础上,新建了一个测试脚本,这个测试脚本有一个测试用例,加上前面的测试脚本,一共就是三个测试用例,前面那个测试类里面包括两个测试用例。

    新建的测试脚本,test_get_page_title.py代码如下:

    # coding = utf-8
    import unittest
    
    from framework.browser_engine import BrowserEngine
    from pageobjects.baidu_homepage import HomePage
    
    
    class GetPageTitle(unittest.TestCase):
        @classmethod
        def setUpClass(cls):
            browser = BrowserEngine(cls)
            cls.driver = browser.open_browser(cls)
    
        @classmethod
        def tearDownClass(cls):
            cls.driver.quit()
    
        def test_get_title(self):
            homepage = HomePage(self.driver)
            print (homepage.get_page_title())
    

      

          今天来学习下,如果加载这两个测试类文件里面的3个测试脚本。在unittest下有一个管理测试套件的叫TestSuit(),我们要使用这个测试套件,需要先初始化一个suite实例,然后这个实例有一个addTest()的方法,可以加载不同类里面的不同测试函数,格式这样的 addTest(测试类的类名(‘测试函数名称,就是test开头的函数’)),我们在testsuites这个包下新建一个TestRunner.py文件用来管理我们的用例启动方式。

    来看看这个TestRunner.py的内容

    # coding = utf-8
    import unittest
    import testsuites
    from testsuites.test_baidu_search import BaiduSearch
    from testsuites.test_get_page_title import GetPageTitle
    from testsuites.test_nba_news_view import ViewNBANews
    
    suite = unittest.TestSuite()
    suite.addTest(BaiduSearch('test_baidu_search'))
    suite.addTest(BaiduSearch('test_search2'))
    suite.addTest(GetPageTitle('test_get_title'))
    suite.addTest(ViewNBANews('test_view_nba_views'))
    if __name__ == '__main__':
        runner = unittest.TextTestRunner()
        runner.run(suite)
    

      

    运行这个TestRunner.py,会在Pycharm的控制台输出类似这样结果:

    ----------------------------------------------------------------------
    Ran 3 tests in 28.065s

    OK

    Process finished with exit code 0

  • 相关阅读:
    rabbitmq在centos7下安装
    跨域问题
    11生成器相关及推导式(附内置函数分析图url)
    10函数名的应用,闭包,和迭代器
    09函数的动态传参及global和nonlocal关键字
    08函数简介
    07基本的文件操作
    06set集合和深浅拷贝(包括前面的一些知识点补充)
    05判断和编码/解码
    04基本数据类型(字典)
  • 原文地址:https://www.cnblogs.com/saryli/p/6812667.html
Copyright © 2011-2022 走看看