在大型项目中的前端测试与开发,通常使用git clone将整个工程目录下载下来,然后本地运行调试。

  然而,当一个项目已经发布到测试机上,需要临时查看某个页面的效果或修改某个页面时,clone整个工程目录显然并不是个好办法。

  本文同时考虑PC本地调试方法及在手机端查看的方法,其总方法如下图所示,具体细节会在后文详细介绍。

  

一、PC本地查看(调试)方法

  如果是静态页面,最简单的方法就是把这个单一页面下载(复制)到本地,然后本地运行调试代码或者看效果。

  但是如果是动态页面,如最终预发布生成的地址为 www.xxx.com/y.html。当页面内包含数据请求接口时,该接口域名应与www.xxx.com一致。

  由于本地测试模拟的环境域名与线上并不一致,所以会导致接口请求变成跨域请求导致请求失败。所以需要进行上图部分1的步骤映射本地host为请求接口的域。其具体方法如下:

  1. 使用该方法首先需具备一个服务器环境用于模拟真实的服务器,即apache、nginx等。
  2. 将本地的host(127.0.0.1或本地IP)指向接口所在域,这里的域为www.xxx.com。 具体方法在chrome下可以使用比较简单的hosts文件管理插件,如下图。
  3. 将需要查看/调试的文件下载到网络目录中,localhost/test.html,其中test.html为目标文件。
  4. 在浏览器地址栏中输入 http://本地IP/test.html,页面本地显示成功。

二、手机端(无线端)查看及简单测试方法

  这种方法仅能用于在手机端查看上文所述的PC端的页面,并能进行简单的数据拦截mock操作。

  其方法如上图的第2、3部分,具体步骤如下:

  1. PC端安装代理软件,本文使用fiddler
  2. PC端安装页面二维码生成插件,如chrome二维码插件的安装
  3. 手机端设置网络代理指向PC端本地IP,端口8888
  4. 手机安装二维码扫描软件
  5. 打开fiddler,手机端扫描PC端待检测页面生成的二维码,即可查看页面成功

  在这个过程中,可以在fiddler中查看到详细的数据传输及数据请求过程,可以通过fiddler对数据的更改从而mock数据查看页面结果。

  可以看到,步骤有些复杂,那么为什么不直接在手机中输入:PC端ip/页面文件目录 呢?

  由于页面中动态数据的请求,其host地址被PC端所映射。而在手机端,并未设置host,会导致跨域请求从而最终导致页面接口的请求失败。所以手机端实际上需要PC端做好hosst地址的映射工作,直接从PC端配置好的服务器环境中浏览数据。所以使用fiddler将PC端服务器环境中已经生成好的(数据请求之后的)最终页面代理一下直接发送到手机端,同时手机端的操作也通过fiddler进行数据代理返回给PC端,由PC端进行数据处理。这样就避免了数据请求跨域的问题。

web前端本地测试方法的更多相关文章

  1. web前端实现本地存储

    当我们在提及web前端本地存储的时候,首先需要介绍一下本地化存储的概念和历史.本地化存储从来不是一个新奇的概念,因为web应用程序一直在追求的就是媲美甚至超越桌面应用程序.但是桌面应用程序一直优于we ...

  2. 也许你需要点实用的-Web前端笔试题

    之前发的一篇博客里没有附上答案,现在有空整理了下发出来,希望能帮助到正在找工作的你,还是那句话:技术只有自己真正理解了才是自己的东西,共勉. Web前端笔试题 Html+css 1.对WEB标准以及w ...

  3. 每天成长一点---WEB前端学习入门笔记

    WEB前端学习入门笔记 从今天开始,本人就要学习WEB前端了. 经过老师的建议,说到他每天都会记录下来新的知识点,每天都是在围绕着这些问题来度过,很有必要每天抽出半个小时来写一个知识总结,及时对一天工 ...

  4. web前端面试试题总结---html篇

    HTML Doctype作用?标准模式与兼容模式各有什么区别? (1).<!DOCTYPE>声明位于位于HTML文档中的第一行,处于 <html> 标签之前.告知浏览器的解析器 ...

  5. Web前端性能测试-性能测试知多少---深入分析前端站点的性能

    针对目前接手的web前端的性能,一时间不知道从什么地方入手,然后经过查找资料,发现其实还是蛮简单的. 前端性能测试对象: HTML.CSS.JS.AJAX等前端技术开发的Web页面 影响用户浏览网页速 ...

  6. React 还是 Vue: 你应该选择哪一个Web前端框架?

    学还是要学的,用的多了,也就有更多的认识了,开发中遇到选择的时候也就简单起来了. 本文作者也做了总结: 如果你喜欢用(或希望能够用)模板搭建应用,请使用Vue    如果你喜欢简单和“能用就行”的东西 ...

  7. 谈谈Web前端工程师的定位

    原文地址:http://www.360doc.com/content/10/0708/17/1277406_37692580.shtml 2010-07-08  锋子chans   阅 1116  转 ...

  8. web前端工程师在移动互联网时代里的地位问题

    支付宝十周年推出了一个新产品:支付宝的十年账单,我也赶个时髦查看了一下我的支付宝十年账单,哎,感慨自己真是太屌丝了,不过这只是说明我使用淘宝少了,当我大规模网上购物时候,我很讨厌慢速的快递,所以我大部 ...

  9. Web 前端开发人员和设计师必读文章推荐【系列二十八】

    <Web 前端开发精华文章推荐>2014年第7期(总第28期)和大家见面了.梦想天空博客关注 前端开发 技术,分享各类能够提升网站用户体验的优秀 jQuery 插件,展示前沿的 HTML5 ...

随机推荐

  1. jquery点击区域显示或隐藏DIV,点击非该DIV的地方隐藏该DIV

    <div class="Content_top"> <div class="Reserve"> <h3><span c ...

  2. 【android tools】内存、网络、界面性能响应优化的工具

    一.性能优化工具 性能分析,我理解有内存性能,IO性能, 界面性能,耗电等. 内存性能,用debuggable的app结合mat等专业工具可以分析.另外最近的Leakcanary很好用,但是要手动加入 ...

  3. cat命令在文件中插入内容

    eg: cat>> xxx <<EOFinsert 1insert 2 EOF

  4. Java获取前天和后天的时间

    import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Calendar;import j ...

  5. ThinkPHP的URL优化

    在刚刚安装好tp框架时,我们的路径一般是这样的: http://localhost/index.php/Home/Index/index?name=cly 我们可以通过下面一步步的步骤来优化这个路径 ...

  6. Web安全学习笔记之一

    浏览器基本策略:同源策略 同源策略规定:不同域的客户端脚本在没有明确授权的情况下,不能读写对方的资源. 同域与不同域:如http://www.text.com与https://www.text.com ...

  7. 使用redis的五个注意事项

    http://blog.nosqlfan.com/html/3705.html 下面内容来源于Quora上的一个提问,问题是使用Redis需要避免的五个问题.而回答中超出了五个问题的范畴,描述了五个使 ...

  8. redis 安装(centos 6.4)

    我使用6.4系统,mark一下,其他版本应该也一样. wget wget http://download.redis.io/releases/redis-3.0.6.tar.gz make make ...

  9. JavaScript显示当前时间的代码

    方法一: <script type="text/javascript"> function startTime() { //获取当前系统日期 var today=new ...

  10. PHP文件操作系统----主要的文件操作函数

    一.文件操作系统概述 1.概述: php中的文件操作系统主要是对文件和目录的操作.文件在windows系统下分为3种不同:文件.目录.未知,在linux/unix系统下分为7种不同:block.cha ...