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

网站建设原则五大原则东莞最新消息今天

网站建设原则五大原则,东莞最新消息今天,怎么做网站的内链,丽江网站建设朋友们、伙计们,我们又见面了,本期来给大家带来关于在线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/174529.html

相关文章:

  • 响应式布局原理是什么seo推广公司排名
  • 动态网站开发实训心得800seo如何优化图片
  • 郑州企业网站制作怎么做西藏自治区seo 标题 关键词优化
  • 商城网站需要多少钱优化大师免费下载安装
  • 电子商务网站开发代码百度上看了不健康的内容犯法吗
  • 赤峰做网站开发嘉定区整站seo十大排名
  • t想学网站建设近期重大新闻
  • 做网站时怎样申请域名昆山网站建设公司
  • 企业建立一个网站如何租用域名谷歌广告优化
  • 许昌网站优化app如何推广
  • 创造一个网页网络优化初学者难吗
  • 房屋建筑学课程设计图纸seo关键词排名软件
  • 泸州做网站的公司有哪些seo关键词优化哪个平台好
  • 山东做网站靠谱的公司肇庆百度快照优化
  • wordpress建站教程网网站seo整站优化
  • 临城企业做网站网络营销公司
  • 莱芜金点子传媒电子版长沙seo网络优化
  • 网站怎么做百度快照logo推广资源整合平台
  • dede做英文网站优化合肥网站建设优化
  • 哪里可以学习做网站成都高端网站建设哪家好
  • php做直播网站随州seo
  • 网站建设logo百度投广告怎么收费
  • 网站开发目录过多的缺点南宁百度推广代理公司
  • 网站建设要多钱软文营销案例文章
  • 深圳网络开发搜索引擎优化策略有哪些
  • 河南工程建设协会网站百度推广官网登录
  • 比较顺口的公司名字seo是什么职务
  • 番禺网站 建设信科网络百度软文推广公司
  • 容桂网站制作代理商网络推广推广培训
  • 日语网站建设怎么免费给自己建网站