精华内容
下载资源
问答
  • 微信小程序测试环境
    2022-07-30 14:09:54

    1.开通权限

    在开发完小程序进入测试阶段时候,需要在小程序平台注册对应的账号,需要添加测试人员、开发人员以及需要体验微信小程序的账号

    2.功能

    在功能上测试小程序可以当成一个单独的app进行测试,按照需求文档来设计测试用例,进行黑盒测试

    3.兼容性

    1.)安卓与苹果手机的操作系统

    2.)不同的微信版本;当前的微信版本、升级前的微信版本

    3.)分辨率;不同的手机型号,页面的显示等

    4.)二维码的兼容;二维码的分享、二维码是否易识别

    4.系统兼容

    微信运行的小程序中,低版本手机系统会影响小程序的页面显示

    不同手机分辨率兼容

    5.网络

    网络测试可以参考app的测试,比如网络切换、断网、弱网测试等等。

    主要看小程序在不同的网络环境下的运行是否流畅

    6.权限

    指已授权和未授权两种情况

    1.)已授权

    可以正常访问小程序的各个功能点

    2.)未授权

        1.)可以进入小程序,但是点击任意按钮时,会提示需要授权

         2.)进不去小程序,提示需要授权

    主要测试在允许访问和不允许访问的两种情况下的小程序的功能是否正常

    7.缓存

    小程序和app都是存在缓存情况,但是小程序的缓存最多是10M本地缓存

    缓存的作用是提高程序的流畅度,减少网络请求,节约服务器的资源。

    用户会清除缓存时,需要强制退出,后台数据清理等情况

    更多相关内容
  • 背景:小程序测试号无法调用自定义交易组件相关接口,如果使用正式的appid配置本地access_token会与正式的产生冲突 解决:使用的sdk是easywechat:https://easywechat.com/docs/5.x/customize/cache 替换easywechat...

    小程序 测试环境和正式环境 access_token冲突问题

    背景:小程序测试号无法调用自定义交易组件相关接口,如果使用正式的appid配置本地access_token会与正式的产生冲突

    解决:使用的sdk是easywechat:https://easywechat.com/docs/5.x/customize/cache
    替换easywechat的缓存引擎,指定测试环境和正式环境为同一个缓存配置。

    $app = Factory::miniProgram($config);
    
    # 替换缓存配置
    $redisConfig = config('database.redis.product');
    $redis       = new Client($redisConfig);
    $cache       = new RedisAdapter($redis);
    $app->rebind('cache', $cache);
    
    $access_token       = $app->access_token->getToken();
    $this->access_token = $access_token['access_token'];
    
    展开全文
  • 开发环境: 一、概念 二、开发环境的组成 三、配置基本流程及流程总结: 测试环境: 一、概述: 测试环境的秩序体现在以下几个环节: 生产环境(线上环境): 一、概述: 二、上线原则 总结

    在这里插入图片描述


    在这里插入图片描述



    个人名片:

    🐼作者简介:一名大一在校生
    🐻‍❄️个人主页:小新爱学习.
    🐼个人WeChat:hmmwx53
    🕊️系列专栏:零基础学java ----- 重识c语言 ---- 计算机网络
    🐓每日一句:唯有热爱,可抵岁月漫长 唯有热爱 不畏惧世间无常



    运行环境

    软件运行环境,狭义上讲是软件运行所需要的硬件支持。广义上也可以说是一个软件运行所要求的各种条件,包括软件环境和硬件环境。
    也就是程序的运行平台,我们通常所说的程序是指应用程序,就是在运行平台(即系统程序)上进行二次开发出来的应用软件

    微信小程序运行在多种平台上:iOS/iPadOS 微信客户端、Android 微信客户端、Windows PC 微信客户端、Mac 微信客户端、小程序硬件框架和用于调试的微信开发者工具等。

    不同运行环境下,脚本执行环境以及用于组件渲染的环境是不同的,性能表现也存在差异

    • 在 iOS、iPadOS 和 Mac OS 上,小程序逻辑层的 JavaScript 代码运行在 JavaScriptCore 中,视图层是由 WKWebView 来渲染的,环境有 iOS 14、iPad OS 14、Mac OS 11.4 等;

    • 在 Android 上,小程序逻辑层的 JavaScript 代码运行在 V8 中,视图层是由基于 Mobile Chromium 内核的微信自研 XWeb 引擎来渲染的;

    • 在 Windows 上,小程序逻辑层 JavaScript 和视图层都是用 Chromium 内核;

    • 在 开发工具上,小程序逻辑层的 JavaScript 代码是运行在 NW.js 中,视图层是由 Chromium Webview 来渲染的。

       JavaScriptCore 无法开启 JIT 编译 (Just-In-Time Compiler),同等条件下的运行性能要明显低于其他平台。
      

    平台差异
    尽管各运行环境是十分相似的,但是还是有些许区别:

    • JavaScript 语法和 API 支持不一致:语法上开发者可以通过开启 ES6 转 ES5 的功能来规避(详情);此外,小程序基础库内置了必要的Polyfill,来弥补 API 的差异(详情)。

    • WXSS 渲染表现不一致:尽管可以通过开启样式补全来规避大部分的问题,还是建议开发者需要在各端分别检查小程序的真实表现。

    开发环境:

    在这里插入图片描述

    一、概念

    软件开发环境(Software Development Environment,SDE)是指在基本硬件和数字软件的基础上,为支持系统软件和应用软件的工程化开发和维护而使用的一组软件,简称SDE。它由软件工具和环境集成机制构成,前者用以支持软件开发的相关过程、活动和任务,后者为工具集成和软件的开发、维护及管理提供统一的支持。

    软件开发环境是一个综合性的概念,从软件工程的角度看它还涵概了软件生命周期中软件开发与设计方法

    1、软件开发环境的定义

    SDE:Software Development Environment

    广义:是围绕着软件开发的一定目标而组织在一起的一组相关软件工具的有机集合。

    IEEE和ACM支持的国际工作小组提出的关于“软件开发环境”的定义:“软件开发环境是相关的一组软件工具集合,它支持一定的软件开发方法或按照一定的软件开发模型组织而成”。

    二、开发环境的组成

    软件开发环境基本组成部分:

    工具集、交互系统、环境数据库

    开发环境可分为4层:

    • 宿主层 :宿主硬件、操作系统
    • 核心层 :工具组、环境数据库和系统界面
    • 基本层 :至少一组工具,如编译工具、调试工具等
    • 应用层 :以基本层为基础补充某些工具,以适应应用软件的要求。

    总之,开发环境是研发团队的领地,你可以把开发环境当成是蛮荒之地,在这里,惟有力量和自然法则才是统治者,野蛮的研发团队成群结队的出现,频繁的发布版本,经常爆发小规模的资源冲突,荒草重生,各种奇异和鬼怪的现象都会在开发环境出现,就像是一个还未完全成形的小世界,你看到的一切都有可能是假像,昨天发生的事情,到了今天就可能是完全不一样的结果。

    三、配置基本流程及流程总结:

    1. 找到小程序项目下的config.js文件,修改host为 微信开发者工具-详情-腾讯云状态-开发环境 request 域名
    2. 修改server/config.js,
    • 把本地开发环境配置隐藏
    • 修改appId 和 appSecret(微信公众平台后台找)
    • useQcloudLogin: false
    • 把mysql的password修改成appId
    1. 上传代码到测试环境

    点击腾讯云,上传测试代码,点击确定,然后就可以看到数据正常展示。

    总结:

    • 第一,研发团队需要提供假数据来保证前后端并发开发。
    • 第二,研发团队经常会出现思维漏洞。
    • 第三,不少研发团队的成员没有持续集成的习惯,
      总是在自己本地环境中做研发。
    • 第四,开发环境没有版本管理,所有的依赖关系都不够稳定。
    • 第五,开发环境是思想从诞生到落地的重要过程,
      产品经理的意志最终被研发团队执行并展现在世人面前,
      研发团队和产品经理的理解偏差也会随之浮现。

    测试环境:

    一、概述:

    测试环境:一般是克隆一份生产环境的配置,由测试人员进行系统性的全面测试,寻找潜在bug,一个程序在测试环境工作不正常,那么肯定不能把它发布到生产机上。通常指项目测试,修改bug阶段。

    在这里插入图片描述
    测试环境,是测试人员所掌控的世界。在这里,所有的Bug的发现,流转,验收和版本的管理,必须摆脱开发环境的野蛮和无序。

    测试环境的秩序体现在以下几个环节:

    • 1.发布到测试环境需要登记。在测试环境中,只有两种情况下才允许被发布,一种是新的迭代开发,一种是Bug的修复。
      这是指,每一次的发布,要么是对一个迭代开发的需求,要么是对一个Bug的修复。
    • 2.发布到测试环境,必须要指定版本号。
    • 3.发布到测试环境,必须要指定回滚版本。
    • 4.测试环境发布之后,必须由运维,开发依次验证是否发布成功。
    • 5.测试环境的发布,原则上只允许每天发布一次,详细记录改动步骤。
    • 6.测试环境中,开发人员应该只有读日志的权限,不应该重启和发布的权限。

    生产环境(线上环境):

    在这里插入图片描述

    一、概述:

    生产环境:是指正式提供对外服务的,一般会关掉错误报告,打开错误日志。可以理解为包含所有的功能的环境,任何项目所使用的环境都以这个为基础,然后根据客户的个性化需求来做调整或者修改。通俗的讲,项目数据前端后台已经跑通,部署在服务器上之后,有客户使用,访问,就是网站正式运行了。

    二、上线原则

    因为产品上线永远都是一件恐怖又期待的事情,你永远不能提前预测出它会出现什么样的问题,或者完美运行~

    上线的严肃程度远超开发环境,历经开发和测试的层层把关,倒底系统上线之后是什么样子,答案也会在一刻揭晓。

    但无论如何,对线上的操作应该谨记的重要原则如下:

    • 1.如有问题,五分钟之内无法解决,立刻回滚 , 严禁在线上调试和解决问题。

    • 2.发布必须选择每天活跃用户最少的时候。

    • 3.视发布版本的重要度来决定是否要对用户公告停机或者是不停机维护。

    • 4.视发布版本的重要度来决定是否对新功能做运营推广。

    • 5.线上发布必须所有团队在线

    • 6.发布之后,运维,研发,测试和产品必须依次验证。

    • 7.发布之后,重点观察用户的反馈和系统日志。

    • 8.出现问题准备好要祭天的程序员。

    • 9.发布应该当成正常发布和紧急发布。

    对于线上的Bug,一旦是Major级别,可以定性成是事故了,对事故,往往需要摆脱正常发布的限制,可以走紧急发布流程,通常是在单独的Wiki页面登记,由产品总监和技术总监签字画押。

    流程可以后补,但是不能不补,特别是对于没有打版本发布的场景,手工修改的一些页面,或者是字段,往往有可能会被开发人员忘记,又被覆盖掉。

    对于App的,有审核时间的限制,所以向前兼容性,是产品经理要提前重点告知开发团队,并在测试环境严谨测试的。

    版本更新通常是分成强制更新和非强制更新,也由产品人员和研发人员共同决定。

    总结

    一、开发环境:是程序员们专门用于开发的服务器,配置可以比较随意, 为了开发调试方便,一般打开全部错误报告。通俗的讲,项目尚且在编码阶段,我们的代码一般在开发环境中,不会在生产环境中,生产环境组成:操作系统 ,web服务器 ,语言环境,开发工具。

    二、测试环境:一般是克隆一份生产环境的配置,一个程序在测试环境工作不正常,那么肯定不能把它发布到生产机上。通常指项目测试,修改bug阶段

    三、生产环境:是指正式提供对外服务的,一般会关掉错误报告,打开错误日志。可以理解为包含所有的功能的环境,任何项目所使用的环境都以这个为基础,然后根据客户的个性化需求来做调整或者修改。通俗的讲,项目数据前端后台已经跑通,部署在服务器上之后,有客户使用,访问,就是网站正式运行了。

    三个环境也可以说是系统开发的三个阶段:【开发】->【测试】->【上线】,其中生产环境也就是通常说的真实环境。
    执行步骤:开发完成,测试环境测试,保证程序没有问题后,再上传到生产环境中


    在这里插入图片描述

    欢迎添加微信,加入我的核心小队,请备注来意

    👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇

    展开全文
  • 微信小程序测试分享

    2018-12-25 15:48:05
    原创小程序测试分析,适用人群为想简单了解小程序测试,文档中简单介绍小程序,一些测试注意点,小程序开发工具使用技巧
  • 效果   js let app = getApp(); Page({ data: { img: "/images/1.jpg" }, onLoad() { }, scan() { wx.scanCode({ success: (res) => { console.log("扫码结果"); console.log(res);...view class="view
  • 我们知道openid是微信用户验证的重要标识,支付功能严重依赖这个东西,之前我们做微信支付的时候是通过在微信客户端直接调用官方接口,通过传code参数来调用,下面这样 getOpenId(){ //获取用户的openid let _this=...
  • 微信小程序AR测试

    2021-01-27 09:37:26
    微信小程序AR Marker 该示例基于库,并针对小程序运行环境,对基础库jsARToolkit进行了重新编译和修改。 说明 通过修改jsartoolkit的相机标定(camera calibration)文件,可以实现不同比例源识别。 该示例目前只在...
  • 由于现在网上已经有很多的《微信小程序从精通到入门》的教程了,所以就不再重复那些,只是讲一下,在开发的过程中,如何使用本地(开发环境)的接口。 因为小程序的开发文档中写到了,wx.request中的URL只能是一个...
  • 文章目录前言一、微信小程序简介1.微信⼩程序2.运行环境3.环境准备二、项目的目录结构1.小程序项目结构与传统web相比2.小程序基本目录结构2.1 .json 配置文件2.1 模板语法(代码见demo01)2.2.wxss 后缀的 WXSS 样式...


    前言

    通过本章介绍小程序的安装,环境搭建以及项目目录。


    一、微信小程序简介

    1.微信⼩程序

    简称⼩程序, 英⽂名 Mini Program , 是⼀种不需要下载安装即可使⽤的应⽤, 它实现了应⽤ “触⼿可及”的梦想, ⽤户扫 ⼀ 扫或搜⼀下即可打开应⽤,有以下优点:

    1. 微信有海量⽤⼾, ⽽且粘性很⾼, 在微信⾥开发产品更容易触达⽤⼾;
    2. 推⼴app 或公众号的成本太⾼。
    3. 开发适配成本低。
    4. 容易⼩规模试错, 然后快速迭代。
    5. 跨平台。

    2.运行环境

    小程序的宿主环境:我们称微信客户端给小程序所提供的环境为宿主环境。小程序借助宿主环境提供的能力,可以完成许多普通网页无法完成的功能。小程序的运行环境分成渲染层和逻辑层,其中 WXML 模板和 WXSS 样式工作在渲染层,JS 脚本工作在逻辑层。

    小程序的渲染层和逻辑层分别由2个线程管理:渲染层的界面使用了WebView 进行渲染;逻辑层采用JsCore线程运行JS脚本。一个小程序存在多个界面,所以渲染层存在多个WebView线程,这两个线程的通信会经由微信客户端(下文中也会采用Native来代指微信客户端)做中转,逻辑层发送网络请求也经由Native转发,小程序的通信模型下图所示。
    在这里插入图片描述

    3.环境准备

    具体步骤参考:
    微信小程序开发文档:https://developers.weixin.qq.com/miniprogram/dev/framework/quickstart/getstart.html

    1)申请账号
    进入小程序注册页 根据指引填写信息和提交相应的资料,就可以拥有自己的小程序帐号。注册成功后, 可登录,然后获取APPID。也可以不进行注册使用测试号,但是后期调⽤微信⼩程序的接⼝、支付等功能,需要索取开发者的⼩程序中的 APPID进行登录。
    2)安装开发工具
    前往 开发者工具下载页面 ,根据自己的操作系统下载对应的安装包进行安装。
    3)新建项目
    在这里插入图片描述
    然后填写项目信息
    在这里插入图片描述

    新建项目选择小程序项目,选择代码存放的硬盘路径,填入刚刚申请到的小程序的 AppID,给你的项目起一个名字,勾选 “不使用云服务” (注意: 你要选择一个空的目录才可以创建项目),点击新建,你就得到了你的第一个小程序了,点击顶部菜单编译就可以在微信开发者工具中预览你的第一个小程序。

    打开编译器可以看到微信开发者工具的工作界面如下:
    在这里插入图片描述

    二、项目的目录结构

    1.小程序项目结构与传统web相比

    ⼩程序框架提供了⾃⼰的视图层描述语⾔ WXML 和 WXSS , 以及 JavaScript , 并在视图层与逻辑层间提供了数据传输和事件系统, 让开发者能够专注于数据与逻辑。
    在这里插入图片描述
    通过以上对⽐得出, 传统web是三层结构。 ⽽微信⼩程序 是四层结构, 多了⼀ 层 .json的配置文件。

    2.小程序基本目录结构

    在这里插入图片描述
    项目里边生成了不同类型的文件:

    2.1 .json 配置文件

    小程序全局配置app.json,包括了小程序的所有页面路径、界面表现、网络超时时间、底部 tab 等:

    {
    "pages":[
    "pages/index/index",
    "pages/logs/logs"
    ],
    "window":{
    "backgroundTextStyle" : "light",
    "navigationBarBackgroundColor" :  "#fff",
    "navigationBarTitleText" :  "WeChat",
    "navigationBarTextStyle" : "black"
    }
    }
    

    字段的含义:

    1. pages 字段⽤于描述当前⼩程序所有⻚⾯路径, 这是为了让微信客⼾端知道当前你的⼩程序 ⻚⾯定义在哪个⽬录。
    2. window 字段定义⼩程序所有⻚⾯的顶部背景颜⾊, ⽂字颜⾊定义等。
    3. 完整的配置信息请参考app.json配置

    工具配置 project.config.json,开发项目时的个性化配置,其中会包括编辑器的颜色、代码上传时自动压缩等等一系列选项。
    页面配置 page.json,让开发者可以独立定义每个页面的一些属性,例如刚刚说的顶部颜色、是否允许下拉刷新等等。
    sitemap .json ⽤于配置⼩程序及其⻚⾯是否允许被微信索引。

    在介绍小程序基本语法之前,我们需要简单知道:
    从事过网页编程的人知道,网页编程采用的是 HTML + CSS + JS 这样的组合,其中 HTML 是用来描述当前这个页面的结构,CSS 用来描述页面的样子,JS 通常是用来处理这个页面和用户的交互。其中 WXML 充当的就是类似 HTML 的角色。WXSS就是CSS。JS还是处理逻辑的。
    而小程序的 WXML 用的标签是 view, button, text 等等,这些标签就是小程序给开发者包装好的基本能力,我们还提供了地图、视频、音频等等组件能力。
    小程序使用的框架叫做MINA,框架构建的思路:采用MVVM 的开发模式(例如 React, Vue),提倡把渲染和逻辑分离。简单来说就是不要再让 JS 直接操控 DOM,JS 只需要管理状态即可,然后再通过一种模板语法来描述状态和界面结构的关系即可。

    2.1 模板语法(代码见demo01)

    WXML(WeiXin Markup Language)是框架设计的⼀套标签语⾔,结合基础组件、事件系统,可以构建出⻚⾯的结构。
    1、数据绑定
    写法:

    <view>  {{  message  }}  </view>
    
    Page({
    data :  {
    message :  'Hello  MINA!'
    }
    })
    

    2、组件属性

    <view  id="item-{{id}}">  </view>
    
    Page({
    	data :  {
    	   id : 0
    	}
    })
    

    在这里插入图片描述

    3、 boolean
    不要直接写checked=“false”,其计算结果是个字符串

    <checkbox  checked= "{{false}}">  </checkbox>
    

    4、运算
    三元运算:

    <view  hidden= "{{flag  ?  true  :  false}}">  Hidden  </view>
    

    算术运算:

    <view>  {{a  +  b}}  +  {{c}}  +  d  </view>
    

    字符串运算:

    <view>{{"hello"  +  name}}</view>
    
    Page({
    data:{
    name :  'MINA'
    }
    })
    

    注:花括号和引号之间如果有空格, 将最终被解析成为字符串

    5、列表渲染
    项的变量名默认为 item wx :for-item 可以指定数组当前元素的变量名
    下标变量名默认为 index wx :for-index 可以指定数组当前下标的变量名
    wx :key ⽤来提⾼数组渲染的性能,wx :key 绑定的值 有如下选择
    1) string 类型, 表⽰ 循环项中的唯⼀ 属性

    list:[{id:0,name:"炒饭"},{id:1,name:"炒面"}]
    wx:key= "id"
    

    2)保留字 *this , 它的意思是 item 本⾝ , *this 代表的必须是 唯⼀ 的字符串和数组。
    完整使用代码如下:

    list:[1,2,3,4,5]
    wx:key= "*this"
    

    完整使用代码如下:

    <view  wx:for= "{{array}}"  wx:key= "id">
    {{index}}:  {{item.message}}
    </view>
    
    Page({
    data :  {
    array :  [{
    id :0,
    message :  'foo',
    },  {
    id :1,
    message :  'bar'
    }]
    }
    })
    

    6、 block
    渲染⼀个包含多节点的结构块 block最终不会变成真正的dom元素.

    <block  wx:for= "{{[1,  2,  3]}}"  wx:key= "*this"  >
    <view>  {{index}}:  </view>
    <view>  {{item}}  </view>
    </block>
    

    这里扩展下什么是DOM?
    DOM就是当网页被加载时,浏览器会创建页面的文档对象模型(Document Object Model)。浏览器接收到代码后进行解析,经过三大步骤:DOM构造、布局以及绘制页面,最终展现为人人都能看懂的网页。
    在这里插入图片描述

    浏览器首先将收到的html代码,通过html解析器解析构建为一颗DOM树。DOM树就像是一颗倒长着的大树,这样的对象模型决定了节点之间都有一定的关联它们关系可能有父子、有兄弟,我们可以顺着这颗树做出许多操作。接着将接收到的css代码,通过css解析器构建出样式表规则将这些规则分别放到对应的DOM树节点上,得到一颗带有样式属性的DOM树。

    浏览器按从上到下,从左到右的顺序,读取DOM树的文档节点,顺序存放到一条虚拟的传送带上。传送带上的盒子就是节点,而这条流动的传送带就是文档流。文档流排完之后,开始获取计算节点的坐标和大小等CSS属性,然后把节点一一摆放,这就将节点布局到了页面。

    布局完成之后,我们在页面上其实是看不到任何内容的浏览器只是计算出了每一个节点对象应该被放到页面的哪个位置上,但并没有可视化。因此最后一步就是将所有内容绘制出来,完成整个页面的渲染。

    7、条件渲染
    Wx:if
    在框架中,使⽤ wx :if="{{condition}}"来判断是否需要渲染该代码块:

    <view  wx:if= "{{false}}">1</view>
    <view  wx:elif= "{{true}}">2</view>
    <view  wx:else>3</view>
    

    Hidden

    <view  hidden= "{{condition}}">  True  </view>
    

    注:类似 wx :if,若频繁切换建议使⽤hidden

    8、事件绑定 (代码见demo02)
    ⼩程序中绑定事件, 通过bind关键字来实现。 如 bindtap bindinput bindchange 等不同的组件⽀持不同的事件, 具体看组件的说明即可。
    举例使用:
    在wxml里添加以下代码,给input这个标签绑定一个handleInput的事件

    <input  bindinput= "handleInput"  />
    

    在js文件中定义这个事件

    Page({
    //  绑定的事件
    handleInput :  function(e)  {
    console .log(e);
    console .log("值被改变了");
    }
    })
    

    需注意的是:绑定事件时不能带参数 不能带括号 ,以下是不正确的使用

    <input  bindinput= "handleInput(100)"  />
    

    正确的事件传值方式,应该是, 通过标签⾃定义属性的⽅式 和 value

    <input  bindinput= "handleInput"  data-item= "100"  />
    

    2.2.wxss 后缀的 WXSS 样式文件 (代码见demo03)

    先来认识下css:
    1、定义:CSS通常称为CSS样式或层叠样式表,主要用于设置HTML页面中的文本内容(字体、大小、 对其方式等)。使用HTML时,需要遵从一定的规范,CSS也是如此有一定规范

    选择器{
    		属性1:属性值;
    		属性2:属性值;
    }
    

    2、“选择器"用于指定CSS样式作用的HTML对象括号内是对该对象设 置的具体样式属性和属性值以键值对方式呈现,英文冒号”:“分隔多个属性之间使用英文 分号”;"。要注意的是,
    "选择器"严格区分大小写,"属性"和"属性值”不区分大小写
    3、样式使用
    行内样式:是通过标签的style属性来设置元素的样式,行内样式通过标签的属性来控制样式,没有做到结构与表现(HTML结构、CSS显示 )分离(少使用)

    <a style="color:#000;font-size:30px;"></a>
    

    内部样式:CSS代码集中卸载HTML文档的标签体中,并且使用

    <head>
    	<style>
    		body{
    		height:100px;
    		}
    	</style>
    </head>
    

    外部样式:外部样式又称为链入式,将所有的样式放在一个或多的外部样式表文件中,将所有的样式放在一个或多的外部样式表文件中

    <link rel="stylesheet" type="text/css" href="css/style.css">
    

    优先级:行内样式>内部样式(内嵌式)>外部样式

    4、选择器的使用
    1)默认样式:* 这个符号能匹配所有样式,所以如果没有额外定义就默认为这个样式,一般用于消除页面与浏览器的内外边距

    <style>
        *{
            padding:0;  // 所有标签默认消除内边距
            margin:0;  // 所有标签默认消除外边距
        }
    </style>
    

    2)标签选择器,示例为匹配所有span标签,并且设置其css样式

    <style>
            span{
                font-size:26px;  // 设置所有span里字体大小
                color:snow;  // 设置span里的字体颜色
            }
        </style>
    

    3)类选择器,示例为匹配所有class='bgcolor’的标签,设置样式,得注意样式前面有个英文状态下的点

    <style>
        .bgcolor{
            font-size:26px;  // 设置字体大小
            color:snow;  // 设置字体颜色
            background:pink; // 设置背景颜色
        }
    </style>
    

    4)id选择器,示例为匹配id='yun’的标签,并且设置其css样式,需要注意的是id的值在整个html页面必须是唯一的,即不同的标签里面不可以出现重复的id值

        <span id='yun'>i want you</span>
        <p id='yun'>i miss you</p>  // 此标签为错误示例,因为id和上面的重复了!
    
    <style>
        #yun{
            font-size:26px;  // 设置字体大小
            color:snow;  // 设置字体颜色
        } 
        // 另外不要纠结这个样式,#yun 能不能重复写,能重复写,但是你都能重复写了,为什么不把样式写在一起?
    </style>
    

    5) 多元素选择器,用逗号隔开,比如选择,id=yun 和 class=‘abc’ 的标签,应用样式

    <style>
        #yun,.abc{
            font-size:26px;  // 设置字体大小
            color:snow;  // 设置字体颜色
        }
    
        // 或者
        span,#yun,.abc,.cde{
            color:green; 
        } 
    </style>
    

    6) 后代选择器,用空格隔开

     <div id='yun'>
            <p>会被应用样式</p>
            <div>
                <p>这个也会被应用</p>
            </div>
        </div>
        <style>
            // 该样式会应用于,id为yun标签下面的p标签,注意这里指的是下面所有,包括子元素,子元素的子元素,子子子元素... 只要是p标签
            #yun p{
                font-size:26px;  // 设置字体大小
                color:snow;  // 设置字体颜色
            } 
        </style>
    

    7) 子元素选择器,使用>符号

     <div id='yun'>
            <p>仅这样的子元素会被应用样式</p>
        </div>
        <style>
            // 该样式会应用于id为yun这个标签下面的p标签子元素,
            #yun>p{
                font-size:26px;  // 设置字体大小
                color:snow;  // 设置字体颜色
            } 
        </style>
    

    5、选择器的优先级
    通配选择器、选择符和逻辑组合伪类的优先级都是 0。
    标签选择器的优先级是 1。
    类选择器、属性选择器和伪类的优先级是 2。
    ID 选择器的优先级是 3。
    style属性内联样式的优先级是 4。
    !important优先级是最高的,也就是 5。

    计算规则:
    每一段 CSS 语句的选择器都可以对应一个具体的数值,数值越大优先级越高,其中的 CSS 语句将被优先渲染。具体规则为:
    出现一个 0 级选择器,优先级数值+0;
    出现一个 1 级选择器,优先级数值+1;
    出现一个 2 级选择器,优先级数值+10;
    出现一个 3 级选择器,优先级数值+100。

    以下示例会帮助更好的理解选择器的优先级是怎么样确定的:
    在这里插入图片描述
    WXSS( WeiXin Style Sheets )是⼀ 套样式语⾔, ⽤于描述WXML 的组件样式。 与 相⽐, 扩展的特性有:

    • 响应式⻓度单位 rpx

    • 样式导⼊

    WXSS 在底层支持新的尺寸单位 rpx ,开发者可以免去换算的烦恼,只要交给小程序底层来换算即可,由于换算采用的浮点数运算,所以运算结果会和预期结果有一点点偏差。你可以写一个 app.wxss 作为全局样式,会作用于当前小程序的所有页面,局部页面样式 page.wxss 仅对当前页面生效。
    1 、rpx (responsive pixel)的使用
    可以根据屏幕宽度进⾏⾃适应。规定屏幕宽为 750rpx 。 如在iPhone6上,屏幕宽度为375px,共有750个物理像素, 则
    750rpx = 375px = 750物理像素 ,
    1rpx = 0 .5px = 1物理像素 。

    在这里插入图片描述
    开发微信⼩程序时设计师可以⽤ iPhone6 作为视觉稿的标准。使⽤步骤:

    1. 确定设计稿宽度 pageWidth
    2. 计算⽐例 750rpx = pageWidth px ,因此 1px=750rpx/pageWidth 。
    3. 在less⽂件中, 只要把设计稿中的 px => 750/pageWidth rpx 即可。

    2、引入样式
    1)内部样式

    /**  common.wxss  **/
    .small-p  {
    padding :5px;
    }
    

    2)外联样式

    /**  app.wxss  **/
    @import  "common.wxss";
    .middle-p  {
    padding :15px;
    }
    

    注:特别需要注意的是 ⼩程序 不⽀持通配符 * 因此以下代码⽆效!

    3)支持的样式选择器
    在这里插入图片描述

    2.3 .js 后缀的 JS 脚本逻辑文件

    一个服务仅仅只有界面展示是不够的,还需要和用户做交互:响应用户的点击、获取用户的位置等等。在小程序里边,我们就通过编写 JS 脚本文件来处理用户的操作。


    展开全文
  • 2 相关技术介绍及系统环境开发条件 5 2.1相关技术介绍 5 2.2系统环境开发条件 6 3 系统的需求分析与设计 6 3.1可行性分析 7 3.2需求分析 7 3.2.1系统总体概述 8 3.2.2功能性需求 8 3.2.3非功能性需求 10 3.2.4流程图...
  • WordPress独立后台壁纸小程序是一款高端二开黑金壁纸微信小程序源码,拥有WP独立后台运行,可以自定义后台添加流量AD ID,小白也可以轻松搭建,支持看AD后保存壁纸到本地。 安装环境: 1.PHP7.3建议,数据库Mysql...
  • 本地搭建微信小程序服务器的实现方法 现在开发需要购买服务器,价格还是有点贵的,可以花费小代价就可以搭建一个服务器,可以用来开发小程序,博客等。 1.域名(备案过的)  2.阿里云注册免费的https证书  3.配置...
  • 主要介绍了微信小程序Server端环境配置详解(SSL, Nginx HTTPS,TLS 1.2 升级)的相关资料,需要的朋友可以参考下
  • 微信小程序登录,全局状态,401处理
  • 微信小程序版 socket.io和engine.io ...运行测试服务器&测试微信小程序 运行测试服务器 $ npm run serve 使用 "微信web开发者工具" 打开examples/app项目,运行样例小程序 注意:运行测试程序,请开启"开发环境
  • 微信小程序bug记录 textarea 1.textarea在模拟器上没有padding,可是在真机上会自带padding,而且在外部改不了,并且在安卓和IOS上padding还不一样 第一张图是在开发工具上的,第二张图是在IOS真机上的。从上图...
  • 微信小程序体验版(测试环境)和线上版(生产环境)发布前言小程序如何打包 前言 下面将详细说说微信小程序如何发布体验版(测试环境)和线上版(生产环境) 小程序如何打包 打开微信开发者工具,并使用微信扫码...
  • 微信小程序开发过程中,微信开发平台要求线上上线的微信小程序配置的合法域名以及网络请求必须是https。但是一般在开发测试阶段,网络请求使用http请求方式,那就需要在微信开发者工具里面进行一个配置即可。 ...
  • 微信小程序如何封装api接口 首先创建个http文件夹(可自定义名字) 一:创建个env.js文件用来设置公共访问的url,即环境地址 module.exports = { //开发环境 dev:{baseUrl:http://localhost:3000}, //测试环境 ...
  • 微信小程序如何测试

    千次阅读 2022-03-07 10:02:22
    那我们该如何进行微信小程序测试呢? 1、功能测试 功能测试以需求文档和交互视觉文档为准,如果没有这些文档,参考APP的测试方法,也就是说就把它当做手机的APP来测试即可。 2、兼容性测试 01、操作系统的...
  • 软件测试---微信小程序测试

    千次阅读 2021-11-19 10:05:09
    二、 小程序测试点 1. 权限测试: (1) 未授权登录小程序 ①未授权时,一般使用一些业务功能的时候,都会弹出提醒‘先授权再操作对应功能 ②在提交数据到后台的时候,会提示补充相关身份信息才能提交 (2) 已授权登录...
  • 微信小程序测试环境搭建,整体流程是: 1.安装微信开发者工具 2.登录微信开发者工具 3.安装hbuildx 4.导入项目 5.设置hbuildx和微信开发者关联信息 6.编译代码 7.微信小程序测试 1、安装微信开发者工具 1....
  • 1.注册微信公众号 ...所以我们需要有自己的服务器,但是为了测试方便,我们需要把本机作为服务器进行本地环境测试。因此我们就需要进行反向代理(内网穿透) 内网穿透的软件有很多,比如ngrok,nat..
  • 适用类型 微信小程序 测试环境:系统环境:CentOS Linux 7.6.1810 (Core)、运行环境:宝塔 Linux v7.0.3(专业版)、网站环境:Nginx 1.15.10 + MySQL 5.6.46 + PHP-7.1 / PHP-5.6、常见插件:ionCube ;fileinfo ; ...
  • 微信小程序测试方法

    千次阅读 2021-09-12 17:56:17
    微信小程序的定义 依附于微信而无需再次下载安装的移动端应用程序 微信小程序的特点 无需下载,即用即走 功能丰富,清爽体验 流量大、易裂变 微信小程序的局限性 数量:每个应用最大支持页面层级为10层 大小:小程序...
  • 登录微信小程序平台,配置小程序的上传域名白名单。 步骤 3:使用 Web 端直传实践方案 Demo 进行上传测试 下载应用服务器代码 修改 Demo 中 upload.js 的密钥和地址。 进行上传测试。 获取上传需要的签名(si
  • 代码主体写完后,还有不可或缺的部分需要补充完整,即接收支付结果通知,官方文档:...微信小程序接入微信支付(四):接收支付结果通知与沙箱测试 支付结果通知: 微信支付官方会调用我们“notify_u
  • 微信小程序支付(已调试通过) ...2.执行PyTest.java中的main方法测试微信小程序支付 如果出现以下情况: 可以先对下appid、mch_id、openid、API密钥 确定无误后,可尝试重设下API密钥 ,然后在重新请求试试。
  • 2 相关技术介绍及系统环境开发条件 4 2.1相关技术介绍 4 2.2系统环境开发条件 5 3 系统的需求分析与设计 5 3.1可行性分析 5 3.2需求分析 6 3.2.1系统总体概述 6 3.2.2功能性需求 6 3.2.3非功能性需求 7 3.3系统ER图...
  • 2.4.2 微信小程序 8 2.4.3 Maven 9 2.4.4 Bootstrap 9 2.4.5 Jsoup爬虫框架 9 3 系统设计 10 3.1 系统总体设计 10 3.2 系统业务流程图 10 4 系统详细设计 12 4.1 系统功能详解 12 4.1.1 系统时序图 13 4.2 Html页面...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 49,966
精华内容 19,986
关键字:

微信小程序测试环境