unittest+js自动化测试高级应用

使用selenium 与 js还有联用来操作页面元素

from selenium import webdriver

from selenium.common.exceptionsimport WebDriverException

import unittest

import traceback

import time

class TestDemo(unittest.TestCase):

    def setUp(self):

        #启动Chrome浏览器

        self.driver= webdriver.Chrome(executable_path='C:\Python\Python37\chromedriver.exe')

def test_excuteScript(self):

        #访问baidu首页

        url= 'http://www.baidu.com'

        self.driver.get(url)

#构造js查找百度首页的搜索输入框的代码字符串

        searchInputBoxJS= "document.getElementById('kw').value='光荣之路';"

        #构造js查找百度首页的搜索按钮的代码字符串

        searchInputButtonJS = "document.getElementById('su').click()"

        try:

            #通过js代码在百度首页搜索输入框中输入“光荣之路”

            self.driver.execute_script(searchInputBoxJS)

time.sleep(2)

#通过js代码单击百度首页上的搜索按钮

            self.driver.execute_script(searchInputBoxJS)

self.assertTrue("百度百科" in self.driver.page_source)

except WebDriverException as e:

            #当定位失败时,会抛出WebdriverException异常

            print("页面中没有找到要操作的页面元素", traceback.print_exc())

except AssertionError as e:

            #发生其他异常时,打印异常堆栈信息

            print(traceback.print_exc())

def tearDown(self):

        #t退出Chrome浏览器

        self.driver.quit()

if __name__== '__main__':

    unittest.main()

你可能感兴趣的:(unittest+js自动化测试高级应用)