自动化测试的实现过程,给你的毕业设计一些思路

发表于:2020-12-21 10:29

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:测试凯哥    来源:知乎

  一提到计算机专业的毕业设计,很多人第一个想到的就是各种系统的开发,例如下面列表中提到的:
  1.网络留言薄
  2.客户管理系统
  3.多媒体积件管理库的开发与应用
  4.基于WEB的多媒体素材管理库的开发与应用
  5.网络教学软件中的教学设计与应用
  6.小型教育网站的开发与建设
  7.基于图像的风景旅游模拟漫游系统
  8.网上报名系统
  9.电脑配件网络购物
  10.房产网站
  11.计算机组成原理网站
  12.软件下载系统网站
  13.图书管理系统
  14.网络办公系统
  15.电子书店管理系统
  16.中学学生学籍管理系统
  17.在线图书销售系统
  18.网上图书销售系统
  19.网上购物系统
  20.出租公司管理系统
  ……
  除此之外,还有很多很多,但是都是烂大街的项目了,而且还要写代码,对于“懒癌”晚期的你,是不是很难呢?
  下来凯哥跟你说一个不需要写那么多代码,简单轻松还能看上去高大上的毕设方案——软件自动化测试技术
  本文将利用一下几个内容:
  ·Python3.7以上版本
  ·Selenium3.14以上版本
  ·火狐浏览器
  ·火狐浏览器驱动程序
  ·HTMLTestRunner.py模块
  ·再来一个CSV表格文档。
  ·最后,随便找一个网站(只要网上能见到的,都行)
  一切准备妥当后,接下来只需要完成类似的功能就行了:
  # 导入Selenium包和time包
  from selenium import webdriver
  from time import sleep
  # 导入csv包
  import csv
  # 导入unittest包
  import unittest
  #导入生成HTML测试报告的包
  from HTMLTestRunner import HTMLTestRunner
  # 定义测试类,继承unittest
  class QQ(unittest.TestCase):
      # 定义函数
      def test_qq_reg(self):
          # 读取csv中的数据(默认会以列表嵌套的形式保存数据到脚本的变量中)
          data = csv.reader(open('reg_qq.csv','r'))    
          # 定义浏览器驱动
          driver = webdriver.Firefox()
          # 使用循环获取data中的列表数据
          for info in data :
              # 定义昵称变量,获取列表中的用户名
              name = info[0]
              # 定义密码变量,获取列表中的密码
              passwd = info[1]
              # 定义手机号变量,获取列表中的手机号
              phone = info[2]
              # 定义验证码变量,获取列表中的验证码
              code = info[3]
              '''
              将代码中输入数据的地方都用上面的变量代替
              '''
              # 打开页面
              driver.get("https://ssl.zc.qq.com/v3/index-chs.html")
              # 休眠2秒钟
              sleep(2)
              # 在昵称文本框输入 “测试凯哥”
              driver.find_element_by_id("nickname").send_keys(name)
              sleep(2)
              # 在密码文本框 输入“TestKai2020”
              driver.find_element_by_id("password").send_keys(passwd)
              sleep(2)
              # 在手机号文本框输入  “13366244232”
              driver.find_element_by_id("phone").send_keys(phone)
              sleep(2)
              # 点击 发送短信验证码 按钮
              driver.find_element_by_id("send-sms").click()
              sleep(2)
              # 在短信验证码文本框输入 321234
              driver.find_element_by_id("code").send_keys(code)
              sleep(2)
              # 点击 立即注册 按钮
              driver.find_element_by_id("get_acc").click()
              sleep(2)
              # 判断注册后页面是否跳转到 成功页(预期结果)
              exp_url = "https://ssl.zc.qq.com/v3/success.html"
              sleep(2)
              # 浏览器获取页面url地址
              real_url = driver.current_url
              # 判断实际结果和预期结果是否相同  相同就输出  success
              # 如果不同就截图保存
              if exp_url == real_url:
                  print("success")
              else:
                  driver.get_screenshot_as_file("./test_qq.png")
              sleep(2)
  #生成单元测试流程
  testunit = unittest.TestSuite()
  #加载测试用例,可以把多人的测试用例导入进来,放在一起:
  testunit.addTest(QQ("test_qq_reg"))
  #创建测试报告
  fp=open('./result.html','wb')
  runner = HTMLTestRunner(stream=fp,
                          title="QQ注册测试",
                         description="用例执行情况:")
  runner.run(testunit)
  fp.close()
  看到这里,希望能够引起大家对自动化测试实现过程的兴趣,而且这么搞的话,毕设就真的没有那么难!

  本文内容不用于商业目的,如涉及知识产权问题,请权利人联系51Testing小编(021-64471599-8017),我们将立即处理
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号