zoukankan      html  css  js  c++  java
  • Selenium 2自动化测试实战34(编写Web测试用例)

    编写Web测试用例

    1.介绍了unittest单元测试框架,其主要是来运行Web自动化测试脚本。简单的规划一下测试目录:
    web_demo1/
    ------test_case/
    ------------test_baidu.py
    ------------test_google.py
    ------report/
    ------------login.txt
    ------runtest.py
    目录结构如下图所示:

    创建web测试用例。

    #test_baidu.py

    #coding:utf-8 from selenium import webdriver import unittest import time class MyTest(unittest.TestCase): def setUp(self): self.driver=webdriver.Chrome() self.driver.maximize_window() self.driver.implicitly_wait(10) self.base_url="http://www.baidu.com" def test_baidu(self): driver=self.driver driver.get(self.base_url+"/") driver.find_element_by_id("kw").clear() driver.find_element_by_id("kw").send_keys("unittest") driver.find_element_by_id("su").click() time.sleep(2) title=driver.title self.assertEqual(title,u"unittest_百度搜索") def tearDown(self): self.driver.quit() if __name__=="__main__": unittest.main()

      

    #test_google.py

    #coding:utf-8 from selenium import webdriver from selenium.webdriver.common.keys import Keys import unittest import time class MyTest(unittest.TestCase): def setUp(self): self.driver=webdriver.Chrome() self.driver.maximize_window() self.driver.implicitly_wait(10) self.base_url="https://www.google.com" def test_google(self): driver=self.driver driver.get(self.base_url+"/") driver.find_element_by_name("q").clear() driver.find_element_by_name("q").send_keys("webdriver") driver.find_element_by_name("q").send_keys(Keys.ENTER) time.sleep(2) title=driver.title self.assertEqual(title,u"webdriver - Google 搜索") def tearDown(self): self.driver.quit() if __name__=="__main__": unittest.main()  

    在test_case/目录下分别创建百度搜索test_baidu和有道搜索test_google.py测试文件,并在测试文件中编写web自动化测试用例

    runtest.py文件如下图所示,这里需注意:(导入模块)由于test_baidu.py和test_google.py与runtest.py并不在同一个目录下,所以这里,只需要在test_case目录下加入一个__init__.py文件即可。

    #runtest.py

    #coding:utf-8 import unittest #加载测试集 from test_case import test_baidu from test_case import test_google #构造测试集 suite=unittest.TestSuite() suite.addTest(test_baidu.MyTest("test_baidu")) suite.addTest(test_google.MyTest("test_google")) if __name__=="__main__": runer=unittest.TextTestRunner() runer.run(suite)

      

    2.保存测试结果

    怎样把测试结果生成一个有log.txt的文件呢?这里需要借助dos命令来实现。
    首先打开Windows命令提示符,进入到../web_demo1/目录下执行命令,如下图所示。

    打开…./report/log.txt文件,内容如下图所示


    小结:学习unittest框架是为了用它来编写web自动化测试用例,利用其组织测试用例,断言预期结果以及批量执行测试用例等功能,可以很好地进行web自动化测试的开发。

  • 相关阅读:
    java数组
    python中的换行与不换行
    金融业务知识2---资金的时间价值与跨时期优化
    金融业务知识1---金融和金融系统
    你真的理解正向代理和反向代理吗?
    webpack(9)plugin插件功能的使用
    webpack(8)vue组件化开发的演变过程
    webpack(7)webpack使用vue配置
    webpack(6)webpack处理图片
    webpack(5)webpack处理css文件
  • 原文地址:https://www.cnblogs.com/Rita-LJ/p/11793018.html
Copyright © 2011-2022 走看看