当前位置: 首页 > 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/201125.html

相关文章:

  • 成都网站建设 公司深圳网络络推广培训
  • 做外贸自己做网站么一句话宣传自己的产品
  • 域名服务网站怎么注册域名网址
  • 内部网站建设教程知名网页设计公司
  • 网站手机端优化百度首页的ip地址
  • 网站构成要素外贸b2b平台都有哪些网站
  • gif网站banner怎么做互联网营销专业
  • 园州网站建设引流推广网站平台
  • 找出网站所有死链接如何让网站快速收录
  • 1号店网站模板下载潍坊seo网络推广
  • 门户类网站如何做策划论坛推广工具
  • 徐州手机网站营销公司哪家好安卓手机优化神器
  • 广州域名注册郑州seo优化培训
  • 游戏网站建设的策划百度提交网站入口网址
  • 网站建设合肥手机百度官网
  • wordpress新主题tint优化科技
  • 虚拟空间做网站武汉网站竞价推广
  • 大同百度做网站多少钱网络营销是什么专业
  • 个人做排行网站网络推广是干嘛的
  • 建立网站软件深企在线
  • 网站设置超链接代码湖北网站建设制作
  • 信誉好的丹阳网站建设宁波网站推广大全
  • 郴州 网站建设杭州余杭区抖音seo质量高
  • 网站优化价格友情链接平台广告
  • 下载了国外app怎么连不上网网站推广优化排名seo
  • 深度网站建设plc培训机构哪家最好
  • 北京58网站建设seo网站关键词优化费用
  • 焦作网站设计公司合肥网络推广培训学校
  • 做网站去哪里做蜜雪冰城网络营销案例分析
  • 翻墙国外网站做兼职seo如何快速排名