51Testing软件测试论坛

标题: 自动化测试的实现过程,给你的毕业设计一些思路 [打印本页]

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







欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2