基于python语言下的UI自动化测试框架搭建(四)

testsuits:案例执行

创建baidu_search1.py文件,这里会展示两种执行方式,一种是直接调用base_page中封装好的常用操作方法,另外一种是先调用baidu_homepage.py,通过baidu_homepage.py进行处理,再执行对应的案例,详见代码中的注释。代码如下:

# coding=utf-8
import time
import unittest
from framework.browser_engine import BrowserEngine
from pageobjects.baidu_homepage import HomePage
from framework.base_page import BasePage


class BaiduSearch(unittest.TestCase):

    def setUp(self):
        """
        测试固件的setUp()的代码,主要是测试的前提准备工作
        :return:
        """
        browse = BrowserEngine(self)
        self.driver = browse.open_browser(self)

    def tearDown(self):
        """
        测试结束后的操作,这里基本上都是关闭浏览器
        :return:
        """
        self.driver.quit()

    def test_baidu_search(self):
        """
        这里一定要test开头,把测试逻辑代码封装到一个test开头的方法里。
     这里先调用homepage类,通过homepage中的方法进行案例执行,详见代码 :return:
""" homepage = HomePage(self.driver) homepage.type_search('selenium') # 调用页面对象中的方法 homepage.send_submit_btn() # 调用页面对象类中的点击搜索按钮方法 time.sleep(2) homepage.get_windows_img() # 调用基类截图方法 try: assert 'selenium' in homepage.get_page_title() # 调用页面对象继承基类中的获取页面标题方法 print ('Test Pass.') except Exception as e: print ('Test Fail.', format(e))    """ 这个是直接调用base_page类,元素编写格式为:id=>xx ,因为在base_page中用=>对元素进行切割,具体返回去看一下base_page中的内容
     return:
   """
def test_baidu_search2(self): test = BasePage(self.driver) test.type("id=>kw",'selenium') test.click("xpath=>//*[@id='su']") time.sleep(1) test.click("xpath=>/html/body/div[1]/div[5]/div[1]/div[3]/div[2]/div[1]/h3/a") if __name__ == '__main__': unittest.main()

 

posted @ 2019-08-09 17:20  丶老大叔  阅读(2551)  评论(0编辑  收藏  举报