TA的每日心情 | 无聊 3 天前 |
---|
签到天数: 1050 天 连续签到: 1 天 [LV.10]测试总司令
|
一提到计算机专业的毕业设计,很多人第一个想到的就是各种系统的开发,例如下面列表中提到的:
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表格文档。
·最后,随便找一个网站(只要网上能见到的,都行)
一切准备妥当后,接下来只需要完成类似的功能就行了:
- # 导入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()
复制代码 看到这里,希望能够引起大家对自动化测试实现过程的兴趣,而且这么搞的话,毕设就真的没有那么难!
|
|