老谢面试问题整理

老谢面试问题整理


自我介绍:
1,你可以做什么? 体验技能
2,你做过什么? 工作经历

原来我们linux主要用来,查看日志,协助定位问题,还有监控资源,搭建下测试环境
原来出现bug,必须截图还有提交日志文件,出现问题,都是要去查看日志,一般是用tail -200 或者tail -500,如果找不到,
就用tail -f 查看动态日志,把日志提交给开发,有的时候监控下资源,free ,ps 查看进程,top 查看资源,df 查看磁盘
写shell脚本(自动部署测试环境)
原来我们工作当中,数据库主要是用来做测试结果的检查,造一些测试数据 比如说,申请一个借款,我们要去数据库中检查是否存在新增的数据,审核通过以后,也要去查看,表数据是否有变化,还有就是造一些测试数据比如,我们测试分页功能,需要造几十条数据,数据库中造测试数据还有就是做性能测试,需要大量的数据,我们就用过存储去造批量的数据

APP测试

分为Android和IOS两种。
(1)界面测试
(2)兼容性测试
(3)网络测试
(4)异常测试
(5)稳定性测试(monkey)
(6)性能测试
(7)安全测试

以Android为例,Android app主要是从以下几点进行测试:
(1)界面测试,我们测试界面跟需求文档中界面原图是否一致,使用不同的手机界面分辨率,以及界面大小等方面进行测试。
(2)功能测试,功能测试和web测试差不多,主要测试app对其他相关功能模块的影响。
(3)兼容性测试,我们也会用不同品牌和不同系统版本的真机来测试一下兼容性;还要测试是否跟手机自带的软件是否有冲突,和市场上的主流软件是否有冲突来进行交互性测试,防止被当成病毒不允许安装。
(4)网络测试,在不同的网络中进行测试,比如:2G,3G,4G,移动,电信,联通,还有网络之间切换,用fiddler进行弱网测试。
(5)异常测试,异常测试手机关机、重启以及断网的一些异常情况

1.如果自己包装的是大公司:我们测试有测试主管,测试组长,和(几名)测试员,我是测试员或测试组长
2.如果包装的是中小型公司:我们测试有测试主管和(几名)测试组员,我是测试组员

目前在熟悉测试流程的基础上,在未来2年希望自己能熟练的掌握自动化测,性能测试,希望能够往技术方面的路线走

计算机的体系结构

简单来说包括三块:硬件、操作系统、应用程序。
硬件包括: CPU、内存、磁盘、网卡、其它……,
操作系统包括 进程、虚拟内存、文件系统、网络、其它……,
应用程序我就不用说了大家都懂,常见的有Apache、MySQL、Nginx、Memcahed等。
性能调优就是对计算机硬件、操作系统和应用有相当深入的了解,调节三者之间的关系,实现整个系统(包括硬件、操作系统、应用)的性能最大化(获得更好的性能),并能不断的满足现有的和不断增加的业务需求。

公司标准流程

正常一般的公司标准流程是先了解需求,进行需求分析,开需求评审,产品系统设计,编写测试计划,评审测试计划,编写测试方案,编写测试用例,搭建测试环境,开发递交软件项目进行冒烟测试,发现BUG并提交到BUG管理系统上面,跟踪BUG并进行回归测试,编写测试报告。以前公司需求评审跟产品设计一起开的。测试过程中遇到一些BUG开发认为不是BUG,而中途开过几次会来商定。

是对软件测试的结果从用例覆盖率、执行率、通过率、缺陷遗留等情况进行评价,从而得出该版本的测试是否能够通过。

左右链接

1、左连接就是,表1左连接表2,就是保存表1所有内容,和表2与表1匹配的内容,其他为null;
2、右连接就是,表一右连接表2,就是保存表2所有内容,和表1与表2匹配的内容,其他为null。

having,用于条件筛选,与where不同的是,having作用于分组。
where用于筛选记录,发生在聚集函数作用之前,与group by联用,having之后的条件判断的字段必须是聚合函数返回的结果。

登录界面怎么测?

1.功能测试

输入正确的用户名和密码,点击提交按钮,验证 是否正确登录。
输入错误的用户名或者密码,验证登录会失败,并且提示相应的错误信息。
登入成功后能否跳转到正确的页面
用户名和密码如果太长或者太短,应该如何处理
用户名和密码中有特别字符或者非英文的情况
记住用户名的功能能否有用。
登录失败后,不能记录密码的功能
用户名和密码前后有空格的处理
密码是否以星号显示

2.界面测试

布局是否合理,2个testbox(可输入文本框)和一个按钮是否对齐
testbox和按钮的长度,高度是否符合要求

3.性能测试

一,打开登录界面需要几秒
二,输入正确的用户名和密码后,登录成功跳转到新页面,不超过5秒

4.接口测试

提前介入测试进行:接口的功能性测试
接口的性能测试

5.安全性测试:

登录成功后生成的cookie,是否是httponly(唯一),否则很容易被脚本盗取
二。用户名和密码是否通过加密的方式发给服务器。
三。用户名和面的验证应该是用服务器端验证,而不是单单是客户端用javascript验证。

注:嵌入动态文本于HTML页面。
对浏览器事件做出响应。
读写HTML元素。
在数据被提交到服务器之前验证数据。
检测访客的浏览器信息。
控制cookies,包括创建和修改等。
基于Node.js技术进行服务器端编程。 )

四。应该屏蔽sql注入攻击。。

五。用户名和密码的输入框,应该禁止输入脚本(防止xss攻击)

六。错误登录的次数限制(防止暴力破解)。

兼容性测试:

1.主流的浏览器能否显示正常以及显示的功能正常(ie,6,7,8,9firefox,chrom,safari等)
2,不同的平台能否正常工作,比如window,mac
3.移动设备上是否正常工作,比如iPhone,andriod、
4不同的分辨率

可用性测试:

1、是否可以全用键盘操作,是否有快捷键
2、输入用户名,密码回车,是否可以登入。

等价类是用到哪些场景

等价类划分是一种典型的黑盒测试设计方法,使用该方法主要对测试子项进行测试规格分析,得到用例,而不用对系统内部处理进行深入了解,它也是目前测试设计过程中使用最普遍的一种方法。采用等价类划分,是将系统的输入域划分为若干部分,然后从每个部分选取少数代表性数据进行测试,这样可以避免穷举法产生的大量用例。
等价类是指某个输入域的子集合,在该子集合中,各个输入数据对于揭露软件中的错误都是等效的。并合理地假定:测试某等价类的代表值就等于对这一类其它值的测试。因此,可以把全部输入数据合理划分为若干等价类,在每一个等价类中取一个数据作为测试的输入条件,就可以用少量代表性的测试数据取得较好的测试结果。
所以等价类可以用于:只要有数据输入的地方就可以使用,从无线多的数据中选取少数代表性的数据进行测试。

接口测试把参数改变了,你怎么是解决

用jmeter+java实现的,记录一下:
  前提:接口类型是post,实现功能是增加积分。由于功能的特殊性,肯定不能随意增加积分,所以后台制定了一套规则,每次增加积分都会要求生成一个不重复唯一的签名。在测这个功能的性能时就需要模仿大量不同的用户集中去增加积分,于是需要构造非常多的不重复的签名去发起请求。
  实现:利用后台提供的生成签名的jar包和算法,用java代码实现生成签名,返回到一个变量中。所用到的jar包要放在jmeter的安装目录的/lib/ext中

monkey命令用到哪些参数,你monkey怎么日志怎么分析的

1.Monkey测试是Android平台自动化测试的一种手段,通过Monkey程序模拟用户触摸屏幕、滑动Trackball、按键等操作来对设备上的程序进行压力测试、随机测试和稳定性测试,检测程序多久的时间会发生异常。

adb -s 设备号 shell monkey -p 包名 -v --throttle time --randommize-throttle times --pct-事件名 20 > route

#time:思考时间
#times:想要monkey模拟的事件次数,具体事件是什么请参考monkey概念中提到的,辅助了解
-p:此参数后面附包名,如果不指定该参数,monkey测试会随机选取手机系统应用测试
-v :此参数代表monkey测试过程中生成日志的详细程度,详细程度分为3个等级为:-v;-v-v;-v-v-v
-pct-: 模拟用户事件类别占比
route:此表示存放monkey日志的位置

2.测试结果分析:
(1)找到是monkey里面的哪个地方出现错误
(2)查看monkey里面出错前的一些事件动作,并手动执行该动作
(3)若以上步骤还不能找到,可以使用之前执行monkey命令,再执行一遍,注意使用的seed值要一样
测试结果分析:
(1)ANR问题(程序无响应):在日志中搜索“ANR"(application no response)
(2)闪退问题:在日志中搜索"crash"
(3)异常:搜索"exception"
(4)强制退出:搜索"force closed"
如果Monkey测试顺利执行完成,在log的最后,会打印出当前执行事件的次数和所花费的时间, Monkey finished代表执行完成。Monkey执行中断,在log的最后也能查看到当前已执行的次数。

web测试与app测试的区别

单纯从功能测试的层面上来讲的话,APP 测试、web 测试 在流程和功能测试上是没有区别的。
系统架构方面:
web项目,一般都是b/s架构,基于浏览器的
app项目,则是c/s的,必须要有客户端,用户需要安装客户端。
web测试只要更新了服务器端,客户端就会同步会更新。App项目则需要客户端和服务器都更新。

性能方面:
web页面主要会关注响应时间
而app则还需要关心流量、电量、CPU、GPU、Memory这些。
它们服务端的性能没区别,都是一台服务器。

兼容方面:
web是基于浏览器的,所以更倾向于浏览器和电脑硬件,电脑系统的方向的兼容
app测试则要看分辨率,屏幕尺寸,还要看设备系统。
web测试是基于浏览器的所以不必考虑安装卸载。
而app是客户端的,则必须测试安装、更新、卸载。除了常规的安装、更新、卸载还要考虑到异常场景。包括安装时的中断、弱网、安装后删除安装文件
此外APP还有一些专项测试:如网络、适配性。。。

APP测试特点

(除了按需求说明书外的 功能测试 之外还需要进行如下测试)

1: 适配性测试(也叫兼容性测试,不同的安卓版本,不同厂商,不同手机品牌)

2: 不同网络测试 (2G网络/3G网络/4G网络/WIFI网络)

3; 在线升级测试

4: 中断测试(电话、短中消息打扰)

5: 耗电量测试

6: 弱网测试(信号差,信号屏蔽实验室)

7: 安装卸载 (C/S)

8: 流量测试

测试报告重点内容

(1)项目背景和目的
(2)测试用例设计
(3)测试环境
(4)测试过程用到的工具
(5)测试范围
(6)测试用例执行情况
(7)测试缺陷分析和总结
(8)测试结果

等价类怎么用?

常用方法:
(1)边界值
(2)等价类
(3)错误推测法
(4)判定表或者因果图
(5)流程分析法
(6)场景法
等价类举例: A系统,本身存在用户数据库,通过用户名,手机/邮箱可以完成登录;此时,需要引入另外一套B管理系统的用户中心,A系统用户登录,按照正常登录流程;但是当B系统的用户,不存在A系统数据库时,用户可以免注册登录,实现A系统和B系统的统一认证;当B系统用户存在A系统数据库,也可以正常登录,A系统会同步到B系统上,A系统用户数据是B系统的子集;

输入为:用户名,手机号码,邮箱号码,和密码

输入用户名和密码时,要注意A系统不存在和B系统存在用户的情况

测试中的风险

(1)需求风险
(2)测试用例风险
(3)缺陷风险
(4)代码质量风险
(5)测试环境风险
(6)测试技术风险
(7)回归测试风险
(8)沟通协调风险
(9)其它不可预计风险

测试计划的内容

(1)目的和范围
(2)规程
(3)测试方案和方法
(4)测试的准入和准出
(5)测试计划(流程、时间安排、对应人员)
(6)测试的环境配置和人员安排
(7)交付件

给你一个全新的产品,或者全新的一个模块,从开始到结束,你怎么测试的一个过程,你讲下

"第一步:需求分析:

我会对这个全新的软件需求进行全面分析,主要的分析点有:1.软件的版本需求合理性,是否可测试;2.项目人员配置(遇到什么问题找谁,有多少人投入测试,测试环境,硬件,软件);3.要测试的软件的主流程,异常流程,测试重点;4。项目整体规划(发布时间)

第二步:指定测试策略、测试计划和bug定义标准,

这一步主要是针对需求,在已有的和可协调到的资源上做出具体的,可执行的计划,这个阶段的输出是测试计划。测试计划中明确包含测试范围,测试策略,比如功能测试,性能测试,自动化测试,可用性测试,云测,mokey等

第三步:按计划执行,编写测试用例

,(编写测试用例的方法:等价类,边界值,错误猜测法,因果图,正交分解法等等)(编写测试用例需要注意的点,用例区分等级,特殊场景考虑:为空(接口空、数据空)、加载超时、网络异常、重复提交、异常中断、缓存冲突、系统兼容、流程迂回、流程中断;如果是PC,要注意浏览器(IE,chrome,火狐,苹果的),操作系统(xp,win7,win8,win10,linux,mac)的兼容,如果是手机,注意手机的品牌,操作系统,android版本,手机屏幕尺寸,手机网络等等场景),写完用例,如果有条件,就要评审测试用例

第四步:执行用例,

补充场景,记录bug,回归bug(注意开发提测的需求需要冒烟测试通过)

第五步:功能合入,回归测试

(各个功能点测试通过之后,再合入)

第六步:提交验收

(回归测试通过之后,提交给验收人员进行验收)

第七步:发布上线

(全新的软件,先是小范围内测,观察线上数据(如:crash,用户反馈,运营数据等)如果有产品认为严重的问题,则需要修复后重发,符合预期才能扩大发布)"

运行APP的时候遇到电话被打断要不要测,为什么要测

考虑移动端特有的特殊场景,设计专项测试;
A、断网、断电、重启等意外的测试,也叫做暴力测试,可归为一个测试专项;
B、网络切换、来电、来信息(系统或者其他应用提示信息)等环境变化对app业务实现的影响,可归为一个测试专项;
C、低电量时,不同的厂商会采用不同的处理机制,低电量环境可归为专项测试。

FPS是什么?

每秒传输帧数(Frames Per Second),指画面每秒传输帧数,通俗来讲就是指动画或视频的画面数。FPS是测量用于保存、显示动态视频的信息数量。每秒钟帧数越多,所显示的动作就会越流畅。

兼容性怎么测,兼容测试选择手机标准是什么?

我们主要考虑主流品牌,和不同系统版本对APP的影响。主要测试点有:图形处理(屏幕分辨率和屏幕大小),CPU,ROM处理器,APP版本是向上兼容性,和向下兼容性。还应该考虑是否支持第三方软件安装APP,浏览器下载安装APP。

性能测试怎么做?

做性能测试的方式有两种:
1.竞品分析
2.版本对比

性能专项我们主要关注这些测试点:
**1、响应
2、内存
3、cpu
4、FPS (app使用的流畅度)
5、GPU过度渲染
6、耗电量
7、耗流量
**
一、响应:
1、冷启动:首次启动app的时间间隔(只是启动时间,不包括页面加载)
2、热启动:非首次启动app的时间间隔(只是启动时间,不包括页面加载)
3、完全启动:从启动到首页完全加载出来的时间间隔
4、有网启动:从发起跳转,到页面完全加载出来的时间间隔
5、无网启动:从发起跳转,到页面完全加载出来的时间间隔
测试标准:冷启动时间不超过1.5s, 热启动不超过1s.

二、CPU
测试点:
1).在空闲时间(切换至后台)的消耗,基本没大应用使用cpu
2).在运行一些应用的情况下,cpu已占50%的情况下,观察应用程序占用cpu的情况
3).在高负荷的情况下看CPU的表现(cpu占用应是在80%以上)

三、内存:
1、空闲状态:切换至后台或者启动后不做任何操作,消耗内存最少。
2、中强度状态:时间偏长的操作应用。
3、高强度状态:高强度使用应用,可以跑monkey来测试(通常用来测试内存泄漏)。
** 内存泄漏:指应用里的内存一直没有释放,内存一直增加 ,系统内存一直减少 **
测试关注点:
1、Native heap alloc
2、Dalvik heap alloc
3、PSS
关注点:
1、退出某个页面后,内存是否有回落。
如果没有及时回落,且程序自动GC或者手动GC,那便可确认有问题。
2、进行某个操作后,内存是否增长过快。
如果增长过快,也有可能存在风险,需重复操作确认。

四、FPS:
一般来说,Android设备的屏幕刷新率为60帧/s,要保持画面流畅不卡顿,要求每一帧的时间不超过1000/60=16.6ms,这就是16ms的黄金准则,如果中间的某些帧的渲染时间超过16ms,就会导致这段时间的画面发生了跳帧,因此原本流畅的画面变发生了卡顿。

五、GPU过度渲染:
过度绘制对动画性能的影响是极其严重的,如果你想要流畅的动画效果,那么一定不能忽视过度绘制。
GPU过渡渲染不同的颜色代表不同的绘制程度
1)、原色:无过渡绘制
2)、蓝色:绘制一次 (理想状态)
3)、绿色:绘制二次
4)、浅红:绘制三次 (可以优化)
5)、深红:绘制四次 (必须优化)

六、耗电量:
测试点:
测试手机安装目标APK前后待机功耗无明显差异;
常见使用场景中能够正常进入待机,待机电流在正常范围内;
长时间连续使用应用无异常耗电现象。

Linux定位问题

通过查看项目执行日志来定位bug。查看日志的方式如下一些命令:
1.cat 文件名
2.tail -num 文件名
3.head -num 文件名
4.tail -f 文件名
5.less 文件名
6.more 文件名

Linux命令

删除文件:rm      
改变所有者:chown                      
显示网络状态信息:netstat     
切换目录:cd           
关机:sutdown   
查看文件类容:cat   
拷贝:cp   
移动或重命名:mv       
切换用户:su                                                 
在文件中查找某个字符串:grep   
创建目录:mkdir                        
测试网络连通:ping  
删除目录:rmdir    
打包:tar           
改变文件权限:chmod   
显示文件或目录:ls   
创建空文件:touch       
查看网络情况:ifconfig         
创建链接文件:ln   
显示当前目录:pwd

Linux下配置静态IP

一、查看网络配置 1.ifconfig——查看网络配置 2.hostname命令
3.route命令
4.netstat命令——查看系统的网络连接状态等 二、测试网络连接 1.ping命令——测试网络连通性 2.traceroute命令——跟踪数据包的路由途径
3.nslookup命令——测试DNS域名解析

查看端口被占用:netstat -anp |grep +端口号

shell脚本

1…进入shell的方式是linux系统中经常使用的外部连接软件
2.命令行是$符号,普通用户在创建shell脚本,命令行是#符号 是管理员在创建shell脚本
3.shell脚本的创建,直接使用vi/vim工具或者其它工具创建都可以,后缀一般都是使用.sh为结尾
4…新建脚本默认所属用户是具有执行权限的,但如果使用其它用户进行执行则需要先授权执行权限。否则其它用户无法执行

索引

第一种:没用过,但我有所了解,索引相当于一个导航作用,有助于加快查询速度,但是会占用存储空间,可能会减缓SQL的增删改功能的速度。
第二种:联合索引是由多个字段组成的索引,在多条件查询时,联合索引效率要高。唯一索引是使用索引可快速访问数据库表中的特定信息。查询时使用联合索引的一个字段,如果这个字段在联合索引中所有字段的第一个,那就会用到索引,否则就无法使用到索引。索引的使用范围:单一列索引可以出现在where 条件中的任何位置,而联合索引需要按一定的顺序来写。
多个索引唯一索引更能加快查询速度,但是占用更多存储空间。

post和get请求

我们常用的请求方法有post跟get请求,get跟post主要区别是有以下几种(1)get的请求参数是在url上传输,post的请求参数在请求正文中传输。
(2)get的传输的安全性比post安全性低,因为get的请求参数在url上暴露(用户名、密码、重要的数据都不能用get传输方式)
(3)get传输的数据只能接受ascll编码格式,而post是没有要求的
(4)get在传输过程中产生一个TCP包,而post在传输过程中产生2个TCP数据包

1.get请求参数长度有限制,而post没有。get请求参数是放在url上传输,post请求参数是放在请求正文中传输
2.get参数只能用ASCALL编码格式传输数据,而post 是没有限制的。get参数暴露在url,不能传输敏感数据,比较不安全。
而post参数是在请求正文中传输
3.get只会产生一个TCP数据包,而post产生2个TCP数据包,get请求是一次性发送所有的数据。而post请求是先发送头部消息头,在发送请求正确。

Http响应

HTTP响应也是由三个部分组成,分别是:状态行、消息报头、响应正文。
返回状态行:HTTP-Version Status-Code Reason-Phrase CRLF
HTTP/1.1 200 OK
HTTP常见的响应状态码有:
200 OK //客户端请求成功
401 Unauthorized //请求未经授权,这个状态代码必须和WWW-Authenticate报头域一起使用
403 Forbidden //服务器收到请求,但是拒绝提供服务
404 Not Found //请求资源不存在,eg:输入了错误的URL
500 Internal Server Error //服务器发生不可预期的错误
503 Server Unavailable //服务器当前不能处理客户端的请求

而数字;2开头的表示请求成功 ; 3开头,重定向,4开头的一般都是客户端的问题 ;5开头的一般都是服务器的问题

HTTP 请求报文由请求行、请求头、空行和请求内容 4 个部分构成。

性能测试

一般我们在系统基础功能测试完、系统趋于稳定的情况下,才会进行性能测试。
首先对需求进行熟悉及分析,包括系统是什么架构的、哪些场景可能存在什么问题、哪些时间段可能会造成峰值等;以及测试的基准和指标确认,将存在的问题在需求评审阶段进行澄清。
然后编写测试计划、方案,确定起止时间,测试环境配置,人员等。
接着搭建测试环境,这里需要考虑被测系统的稳定性、是否有交叉影响、和生产环境的一致性等。
然后是设计测试用例和测试数据的准备。
接着就是测试执行
最后是缺陷报告和测试报告的输出以及工作总结。
总的来说,性能测试和功能测试流程大致是相同的。区别在于测试指标、测试方法、测试难度不同而已。

具体做法:

1.首先对系统进行分析,建立性能测试数据模型,化为可衡量的具体性能指标,确定性能测试的目标,明确被测系统的相关技术信息(架构、平台、协议等),明确被测系统的基础业务、关键业务、用户行为,明确性能测试指标及通过的标准。我以前的项目挑选了用户使用最频繁的功能来做性能测试,如:登陆,搜索,提交订单,确定性能指标,如:事务通过率为100%,90%的事务响应时间不超过5秒,并发用户为1000人,CPU和内存的使用率为70%以下(*)
2.编写性能测试计划,明确测试时间(通常在功能稳定后,如第一轮测试后进行)和测试环境和测试工具的选择。我以前的那个项目性能测试环境为。。。,测试工具有。。。。。
3.编写性能测试用例
4.搭建性能测试环境,准备好性能测试数据
5.通过性能测试用例,编写性能测试脚本
6.性能测试脚本进行调优,设置检查点、参数化、关联、集合点、事务,调整思考时间,删除冗余的脚本等
7.设计性能测试场景,使用nmon工具监控服务器,运行测试场景
8.分析性能测试结果,如果有问题(性能瓶颈),收集相关的日志提单给开发修改
9.开发修改好后,回归性能测试
10.编写性能测试报告

测试报告包括哪些内容?

(1)概述(简单描述测试报告针对的是哪个项目的哪个版本的,适用阅读对象等等。)
(2)测试环境(可以通过表格形式将实际的测试环境配置描述出来。如果与测试计划、测试方案的一致,直接拷贝过来就行了)
(3)测试任务安排总结(可以通过表格的形式描述工作的安排情况,重点是表现出时间、人员的安排)
(4)测试范围(描述实际的测试范围,如果与测试计划一致,可以直接拷贝。)
(5)测试用例执行情况(描述测试过程中需求覆盖度、测试用例数、测试用例执行情况)
(6)测试缺陷分析和总结【1.缺陷严重程度统计 2.缺陷在各功能点分布情况 3.遗留缺陷统计—主要参考缺陷管理工具上的缺陷状态】(通过表格及饼图的方式)
(7)风险分析(将测试过程中发现的风险及对应的解决方案列出,如未有具体解决方案,需明确说明。)
(8)测试结果(根据缺陷遗留情况,存在的风险情况,参考测试计划里面描述的测试通过标准,定义本次测试结果为通过/不通过)

如何写测试用例?

测试的ID,测试标题,测试场景,重要级别,前置条件,输入数据,操作步骤,预期结果;重要的有测试场景,输入数据,操作步骤和预期结果

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值