当前位置: 首页 > wzjs >正文

常见制作网页的软件北京网站建设东轩seo

常见制作网页的软件,北京网站建设东轩seo,洛阳网站建设 恒凯科技,安阳吧百度贴吧朋友们、伙计们,我们又见面了,本期来给大家带来关于在线OJ项目的测试报告,如果看完之后对你有一定的启发,那么请留下你的三连,祝大家心想事成! C 语 言 专 栏:C语言:从入门到精通 数…

朋友们、伙计们,我们又见面了,本期来给大家带来关于在线OJ项目的测试报告,如果看完之后对你有一定的启发,那么请留下你的三连,祝大家心想事成!

C 语 言 专 栏:C语言:从入门到精通

数据结构专栏:数据结构

个  人  主  页 :stackY、

C + + 专 栏   :C++

Linux 专 栏  :Linux

目录

1. 项目介绍

2. 测试计划

3. 测试工具

4. 涉及到的测试动作 

5. 设计测试用例

6. 执行测试

6.1 功能性测试

6.2 兼容性测试

7. 自动化测试 

7.1 common模块实现

7.2 tests模块实现

7.2.1 OJ首页自动化测试 

7.2.2 题目列表页自动化测试

7.2.3 刷题页面

7.2.4 结合测试

8. 项目测试bug简述

9. 测试结论 


1. 项目介绍

在线OJ项目我主要是通过模仿牛客、LeetCode等在线OJ平台自主实现的一个刷题网站,虽然目前里面没有多少题目,但是后面会慢慢添加一些比较有意思的题目;

我们这个项目主要实现的功能就是在线判题:

我们点击任意的题目列表,就可以跳转到题目的具体描述页面;

在这个页面我们可以对题目进行阅读并写出对应的代码然后点击提交,并得到代码运行的结果;


项目源码:https://gitee.com/yue-sir-bit/load-balancing-type---oj

项目博客:https://blog.csdn.net/Yikefore/article/details/145696953?spm=1001.2014.3001.5501

2. 测试计划

项目完成之后,我们本篇对我写的在线OJ项目进行一下测试;

我们的测试计划是:

  • 1. 设计测试用例
  • 2. 根据测试用例进行对应的测试
  • 3. 编写自动化测试脚本

接下来就一一进行实现:

3. 测试工具

Pycharm、selenium、chrome-driver(本地)、Chrome、Edge

4. 涉及到的测试动作 

功能测试:覆盖了在首页点击按钮跳转到题目列表页,在题目列表页点击指定题目进入刷题页面,在刷题页面可以可以写代码并提交代码;

自动化测试:使用自动化测试接口来检查首页、题目列表页、刷题页面是否存在BUG。 

5. 设计测试用例

 对于在线OJ项目设计测试用例,我主要从以下几个方面进行了设计: 

  • 功能测试
  • 界面测试
  • 性能测试
  • 易用性测试
  • 兼容性测试
  • 安全性测试
  • 弱网测试

      

6. 执行测试

设计出了测试用例之后,接下来对对照测试用例来进行具体的测试(由于我的设备有限,所以我只能把我所能测的设计用例进行测试):

6.1 功能性测试

  


  


  


  


  


  


6.2 兼容性测试

 


剩下的测试用例就不一一展示了; 

7. 自动化测试 

在自动化测试这里我使用本地的Chrom浏览器驱动;

Chrome版本:

自动化测试用例:

自动化测试这里我一共测试了三个页面

OJ首页、题目列表页、指定题目的刷题页;


测试文件的设计:

  • common模块:进行浏览器驱动的创建以及公共方法(屏幕截图)的实现;
  • tests模块:对需要测试的页面分文件单独编写自动化测试脚本;
  • images:存放屏幕截图并对屏幕截图按照日期进行分类,并以调用方法和调用时间给对应的屏幕截图命名(方便查找)

7.1 common模块实现

我在Utils.py文件中实现了对于chrome驱动的创建以及屏幕截图的实现:

Utils.py:

import datetime
import os
import sysfrom selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.chrome.service import Serviceclass Driver:driver = ""def __init__(self):chrome_driver_path = "E:\\Python\\chromedriver-win64\\chromedriver.exe"  #本地驱动所在路径options = Options()options.add_argument("--remote-allow-origins=*")self.driver = webdriver.Chrome(service=Service(chrome_driver_path), options=options) #创建驱动self.driver.implicitly_wait(2)   #查找时的隐式等待#屏幕截图功能# ../images/当前日期/调用函数名-当前具体日期.pngdef GetScreenShot(self):dirname = datetime.datetime.now().strftime("%Y-%m-%d")# 判断是否存在,如果不存在则创建if not os.path.exists("../images/" + dirname):os.mkdir("../images/" + dirname)# 截图文件名前面添加调用方法的名称filename = sys._getframe().f_back.f_code.co_name + "-" + datetime.datetime.now().strftime("%Y-%m-%d-%H%M%S") + ".png"self.driver.save_screenshot("../images/" + dirname + "/" + filename)
#创建单例
OJDriver = Driver()

7.2 tests模块实现

在这个模块主要对三个页面进行自动话测试,最后再将三个页面结合测试;

7.2.1 OJ首页自动化测试 

对与OJ首页的测试,我做了以下一个工作:

通过url访问到OJ首页,然后对页面元素依次进行了查找,并进行了屏幕截图;

自动化测试代码:

OJHomePage.py

7.2.2 题目列表页自动化测试

在题目列表页我主要做了以下工作:

通过url访问到题目列表页,依次查找页面元素,并截图,然后点击任意一个题目查看能否进入;

OJListQuestionsPage.py:

import timefrom selenium.webdriver.common.by import Byfrom common.Utils import OJDriverclass OJListQuestions:url = ""driver = ""def __init__(self):self.url = "http://124.70.16.162:8080/all_questions"  #题目列表页urlself.driver = OJDriver.driver                         #创建驱动self.driver.get(self.url)                             #访问道题目列表页# 测试题目列表页面def ListQuestionsPage(self):# 检查页面元素actual = self.driver.find_element(By.CSS_SELECTOR, "body > div > div.question_list > h1").text# 断言是否存在assert actual == "OnlineJudge题目列表"#检查题目列表元素#编号self.driver.find_element(By.CSS_SELECTOR, "body > div > div.question_list > table > tbody > tr:nth-child(1) > th:nth-child(1)")#标题并self.driver.find_element(By.CSS_SELECTOR, "body > div > div.question_list > table > tbody > tr:nth-child(1) > th:nth-child(2)")#难度self.driver.find_element(By.CSS_SELECTOR, "body > div > div.question_list > table > tbody > tr:nth-child(1) > th:nth-child(3)")# 截图保存OJDriver.GetScreenShot()#找到任意一个题目并点击self.driver.find_element(By.CSS_SELECTOR, "body > div > div.question_list > table > tbody > tr:nth-child(2) > td:nth-child(2) > a").click()

7.2.3 刷题页面

在刷题页面我主要做了以下工作:

通过url进入到任意一个题目的刷题页面,然后依次查找个元素,点击提交按钮查看能否提交,并截图,因为我的这个代码编辑区域是第三方插件,所以自动化测试这里就没有进行写代码的测试;

OJOneQuestionPage.py:

7.2.4 结合测试

将上面三个页面的自动化测试结合起来,一次性跑完三个页面的自动化测试:

RunTest.py:

8. 项目测试bug简述

界面测试:在刷题页面题目描述和返回结果背景都为白色,不能很好进行区分;

兼容性测试:对于移动端用户来说页面不能伸缩导致竖屏使用时体验感差,题目文字被遮挡严重。

9. 测试结论 

本次项目测试通过(已经测试完成的,还有由于设备原因还有未测试的);

项目开发耗时一周,项目测试耗时2天(包含测试报告总结)。

 

 

http://www.dtcms.com/wzjs/319951.html

相关文章:

  • 河南做网站推广seo服务公司怎么收费
  • 公众号购物做网站还是小程序潍坊网站建设解决方案
  • 甘肃网站建设哪家便宜百度收录批量查询
  • 金融网站模板素材今日国内新闻热点
  • 263网站建设怎么样品牌网络推广
  • 网站建设合同 附件网络口碑营销的成功案例
  • 广西南宁网站建设网站推广开户
  • 南京我爱我家网站建设新村二手房如何给自己的公司建网站
  • 做网站空腾讯企点qq
  • 中等职业学校网站建设模块windows7优化大师官方下载
  • 专门做潮搭的网站长沙靠谱seo优化
  • 鞍山做百度网站一年多少钱制作网站费用
  • jsp网站开发技巧谷歌浏览器下载安装2021最新版
  • 怎么自己建设网站黑马培训
  • 手机版的网站开发搜索数据
  • 郑州企业网站优化多少钱站长之家网站排名
  • 双语网站建设小程序开发文档
  • 广州网站制作网站b2b和b2c是什么意思
  • 开锁公司做网站深圳网站建设的公司
  • 接做施工图的网站网络营销的概念是什么
  • 企业建设网站哪家好软文营销定义
  • 商城网站开发销售清单软件永久免费版
  • 影院网站如何做百度提交链接
  • 网站跟app的区别天津seo推广
  • 台州网站平面设计网络公司取什么名字好
  • 网站如何做分站小说风云榜
  • 遵义市住房城乡建设局网站手机360优化大师官网
  • 网站备案 互联网信息微信app小程序开发
  • 常用的英文网站字体seopeixun
  • 外国人搞笑做视频网站青岛神马排名优化