最近有位win7系统用户在使用电脑的时候,却发现电脑自带的ie浏览器不见了,用户重启电脑,可是结果还是一样,用户不知道如何解决,为此非常苦恼,那么win7系统ie浏览器不见了如何解决呢?下面为大家介绍win7系统ie浏览器不见了的解决方法。
1、打开开始菜单,找到所有程序,在所有程序中找下有么有IE,默认一般都是在的,如果没有,就往下看;如图所示:
win7系统ie浏览器不见了的解决方法就为小伙伴们详细介绍到这边了,如果用户们使用电脑的时候碰到了相同的情况,可以根据上述方法步骤进行解决哦,希望本篇教程能够帮到大家,更多精彩教程请关注。
通过一系列手段去证明软件是符合用户需求的,满足质量要求的。预期结果和实际结果的一个对比。
按方法分:黑盒测试、白盒测试、灰盒测试
黑盒测试:把软件比作一个“黑匣子”,不考虑具体是内部是如何实现的,只考虑外部功能的运行,检查软件的输入和输出是否匹配。
白盒测试:检查软件的代码、函数和方法等内部结构。
灰盒测试:介于白盒和灰盒测试之间,既可以根据外部暴露出的功能进行检测,也可以参考内部的代码结构。
(c++一般用于桌面程序)
(左边界、右边界):<=6,先测<6,再测=6,所以要取边界值和边界值旁边的点,5和6。
有效等价类:比如查看的ip
22:访问Linux服务器的默认端口
ip的别称,好记,花钱买。
集成测试(接口测试):后端bug
work 浏览器自带(F12),抓web,选择XHR是看接口数据。
失败的话,直接用镜像安装:
#这样不会积累测试数据,测试完就删除清空。
安装appium的安卓客户端
- 下载并安装雷电模拟器:/
使用的是手机:打开安卓手机的USB调试,用数据线连接手机和电脑
使用的是模拟器:直接去执行adb devices
在windows命令提示符中输入:adb devices,能看到手机连上电脑既可
在VSCode中新建Python文件,并且输入对应代码运行查看效果
根据自己的手机来修改代码中对应的参数
windows上不能做ios的自动化测试,需要苹果系统
2.进入lrunner文件之后,我们找到目录下的En文件,然后点击打开En文件
3.进入En文件之后,我们再找到prerequisites文件并且点击打开。
6.最后我们退出安装,重新点击loadrunner进行安装即可。
1. 安装完成后,LR会自动打开,不管他,直接关掉
最后点击close,安装和破解LR工作就完成了
loadrunner:商业版的性能测试工具,根据线程数收费
(QA破解,用的是群里的老版,新版不好破解)
写代码之前先保存,容易崩。
1.vuser(create/edit script) 脚本编辑器,(支持录制,但是需要ie8,基本不用,还是使用控件编写脚本)
找到loadrunner启动器,以管理员模式运行。
body里面的字符串参数的引号,前面要加上转移的反斜杠。
判断cpu好不好的两个主要指标:
1.主频(速度):越大越好
cpu使用率:服务器硬件的繁忙程度
内存:越大越好,读写速度快
IO:硬盘,越快越好(ssd固态硬盘比hhd机械硬盘快很多)
带宽:下载速度一般是1/10带宽,越大越好
web容器(应用服务器):
作用:开发的代码必须通过应用服务器进行部署,供用户访问
常用的网关:nginx(可支持百万级并发)
反向代理:不用关心过程(一般情况都使用反向代理)
数据库最终是存放在硬盘中的,硬盘的读取速度慢。
优化:使用redis把数据库中的数据缓存在内存中,读取不到再去数据库找。
内存:读取速度快,断电数据丢失(所以服务器数据存在硬盘中)
硬盘:读取速度慢,断电数据保存
定义:通过各种工具模拟多用户并发访问服务器,来测试服务器的性能
基于这个性能的攻击:洪水攻击
压力测试:超出峰值的情况下的系统表现(大并发)
负载测试:逐步增加压力来试探服务器的性能
强度测试:长时间在峰值情况下运行,看能持续多久
并发测试:同时发送用户请求,强调功能性测试
(订单/奖品超发,库存和实际卖出不匹配)
性能拐点:服务器在什么情况下性能跑得最快
最大容量:服务器在多少并发时能够hold住
验证问题:使用方法还原bug场景,解决bug
判断性能拐点和最大容量
1.响应时间:平均响应,90%line(有90%的请求在x秒内完成)
258原则:2秒内很快,2-5还行,5-8等一等可以加载出来,8秒以后,很烂。
每秒事务数,服务器每秒返回的请求数
可以通过tps找性能拐点:随着并发用户数的增加,tps出现峰值
1.cpu使用率:长时间不能100%,持续小于85%
2.内存使用率:不同操作系统,内存调动机制不同。
linux/mac os机制:先把内存占满,再分配
Windows:要用的时候再分配内存
*所以linux直接看cpu使用率,要看单个进程(比如看tomcat,要看java程序,linux命令top可以看进程的占用内存情况)
内存泄漏(通常是java出现的问题,即tomcat要考虑的问题):
tomcat一直把内存占着,越来越大,没有释放内存资源--发生内存泄漏。
判断内存是否足够:看虚拟内存是否足够,看IO使用率是否非常大。
对业务模型(多场景)有深入了解,了解用户使用场景:单场景(单个测试用例)、多场景(集合多个测试用例)
先考虑单场景的情况,然后组合在一起,考虑多/混合场景的情况。
接口和网页:app项目直接用接口,web项目要考虑静态资源:
1.静态资源(网页、图片、视频):
静态资源不占cpu,即不需要进行计算,静态资源一般和带宽有关。所以不考虑带宽的话,一般不考虑静态资源。
jmeter(在cmd里输入jmeter,会出现提示:不要使用GUI模式做负载测试)
硬件:windows:任务管理器里有自带的性能资源监视器
6.生成测试报告,分析结果
常见分析方法(控制变量法):
2.服务是否崩溃:事务失败率,http状态码出现大量500+
3.最大容量:cpu使用率上限,响应时间,失败率(缺一不可)
4.内存泄漏:看jvm/java内存泄漏--查看java进程的内存大小,对比每一次的数据。在性能测试结束后,观察内存是否被释放。
新建一个文件夹,不要叫pytest,会和原有的文件夹冲突。
加上test可以自动识别文件。
assert res.status_code == 200 #第一次判断运行是否通过(服务器是否可用),可能功能不对,但是运行没问题。
不用py命令运行,用pytest运行。
新建终端:终端--新建终端
*unitest要手动查找文件,pytest如果不写路径的话,自动查找test开头的文件。
1打开浏览器,实例化浏览器,获得实例化句柄
用开发者工具,定位搜索框元素的id或其他name之类的。
因为网页内容是变化的,但是网页title不变,所以可以用title做判断。
新建终端:终端--新建终端
2.执行测试脚本并生成测试报告
3.把测试结果编译成网页测试报告
生成report文件夹,里面有个html报告。
安卓app的压力测试工具
作用:通过对安卓app输入大量的随机事件(点击/滑动/按键)来检测app是否存在崩溃、闪退和无响应等问题。
兼容性测试:安卓手机不同的版本和、oppo、等多种操作系统上测试。
1.首先安卓手机连上电脑。
安卓app自动化测试工具
运行方式:直接在shell执行,或者py文件运行。
4.#定义路由(接口地址),用装饰器
*不需要配置服务器,flask自带一个WSGI服务器。本地环境http://127.0.0.1:5000/,ctrl+单击打开网站,就可以访问我们前面第四步写的网站。(终端运行的时候有写)
新建文件夹,名字必须叫”templates“,放html文件。
创建文件夹”static“,放静态资源:css、文件、图片等。*记得改链接
然后了解原理,仿造自动化工具,实现一套自己的工具。
初级性能测试:熟练使用工具,掌握常用的分析方法,会用工具分析出系统的瓶颈。
中级性能测试:对系统的熟练程度高,熟悉各个组件,能够分析问题原因
高级性能测试:对系统的各个组件了如指掌,给出具体的调优方案。
深入了解:应用服务器,网关,缓存,前端,数据库(了解哪种查询语句快)
开发知识:java,企业的java开发框架,
管理方向:流程管理,QA
如果对软件测试有兴趣,想了解更多的测试知识,解决测试问题,以及入门指导,帮你解决测试中遇到的困惑,我们这里有技术高手。如果你正在找工作或者刚刚学校出来,又或者已经工作但是经常觉得难点很多,觉得自己测试方面学的不够精想要继续学习的,想转行怕学不会的, 都可以加入我们,群内可领取最新软件测试大厂面试资料和Python自动化、接口、框架搭建学习资料!
每一个成功的人,在前进的路上都会收到很多的鼓励,也会愿意鼓励他人,我深深感受到鼓励带给我的帮助,你们的每一次点赞,就是对我最大的支持,让我一直坚持的做出更好的内容。
米鼠网自成立以来一直专注于从事、、等,始终秉承“专业的服务,易用的产品”的经营理念,以“提供高品质的服务、满足客户的需求、携手共创双赢”为企业目标,为中国境内企业提供国际化、专业化、个性化、的软件项目解决方案,我司拥有一流的项目经理团队,具备过硬的软件项目设计和实施能力,为全国不同行业客户提供优质的产品和服务,得到了客户的广泛赞誉。
为什么要使用Jquery?
我觉得非常重要的理由就是:它能够兼容市面上主流的浏览器,我们学习AJAX就知道了,IE和FireFox获取异步对象的方式是不一样的,而Jquery能够屏蔽掉这些不兼容的东西…
(2)免费,开源且轻量级的js库,容量很小
注意:项目中,提倡引用min版的js库
注意:jQuery不是将所有JS全部封装,只是有选择的封装
(4)能够处理HTML/JSP/XML、CSS、DOM、事件、实现动画效果,也能提供异步AJAX功能
(5)文档手册很全,很详细
(6)成熟的插件可供选择
(7)提倡对主要的html标签提供一个id属性,但不是必须的
(8)出错后,有一定的提示信息
(9)不用再在html里面通过
JavaScript定位到HTML的控件有三种基本的方式:
我们发现,JavaScript的方法名太长了,不易于书写代码……
这些方法名太长了,获取ID属性、NAME属性、标签名属性的控件也用不着三个方法,我们定义下规则就好了
传入的参数是"#"号开头的字符串,那么就是id属性
传入的参数是没有"#"号开头的字符串,也没有前缀修饰的字符串就是标签名属性
到这里,我们就可以根据传入的参数判断它是获取ID属性的控件还是标签名的控件了。在内部还是调用document.getElementById()这些方法。我们真正在使用的时候直接写上我们自定义规则的字符串就可以获取对应的控件了。
打开网易新闻 查看精彩图片
JQuery对象与JavaScript对象是可以互相转化的,一般地,由于Jquery用起来更加方便,我们都是将JavaScript对象转化成Jquery对象
在Jquery中对象都是当成是数组的。因此Jquery转成JavaScript对象语法如下:获取数组的下标,出来的结果就是JavaScript对象了。
一般地,我们习惯在Jquery对象的变量前面写上\$,表示这是JQuery对象
Jquery提供了九个选择器给我们用来定位HTML控件..
目的:通过九类选择器,能定位web页面(HTML/JSP/XML)中的任何标签
直接定位id、类修修饰器、标签
有父子,兄弟关系的标签
大于、小于、等于、奇偶数的标签
定义内容为XXX、内容中是否有标签器、含有子元素或者文本的标签
匹配表单对应的控件属性
(9)表单对象属性选择器
通过这九种的选择器,我们基本可以能获取HTML中任何位置的标签。
打开网易新闻 查看精彩图片
前面使用Jquery的选择器来获取到了HTML标签,单纯得到标签是没有用的。我们要对其进行增删改,这样在网页上才能做出“动态”的效果…
打开网易新闻 查看精彩图片
Jquery是对JavaScript的封装,那么Jquery在得到HTML标签后,也有对应的方法来获取标签的内容,动态创建、删除、修改标签。从而在网页上做出动态的效果
append():追加到父元素之后
after():追加到兄弟元素之后
before():追加到兄弟元素之前
我们发现在选择器上就有层次关系的选择器,在API上也有层次关系的方法。一般地,我们用方法来定位到对应的控件比较多。
children():只查询子节点,不含后代节点
next():下一下兄弟节点
prev():上一下兄弟节点
hasClass():判断标签是否有指定的样式,true表示有样式,false表示无样式
toggleClass():如果标签有样式就删除,否则增加样式
往这些方法下设置参数,那么就可以控制它的隐藏、显示时间
直接调用无参就是获取,给指定的参数就是修改
val(""):设置value属性值为""空串,相当于清空
由于Jquery对象都是被看成是一个数组,each()方法就是专门用来操作数组的。
each():是jQuery中专用于迭代数组的方法,参数为一个处理函数,this表示当前需要迭代的js对象
JavaScript一大特性就是事件驱动,当用户用了执行了某些动作以后,JavaScript就会响应事件,在事件的方法上,我们就可以对用户的动作“回馈”一些信息给用户!
window.onload:在浏览器加载web页面时触发,可以写多次onload事件,但后者覆盖前者
ready:在浏览器加载web页面时触发,可以写多次ready事件,不会后者覆盖前者,依次从上向下执行,我们常用\$(函数)简化
change:当内容改变时触发
select:选中所有的文本值
mousemove:在指定区域中不断移动触发
submit:在提交表单时触发,true表示提交到后台,false表示不提交到后台
值得注意的是:当用户执行动作的时候,浏览器会自动创建事件对象,传递进去给响应事件的方法【类似与监听器的原理】,那么我们在响应方法上就可以获取一些属性:
打开网易新闻 查看精彩图片
我们在开始使用JavaScript学习AJAX的时候,创建异步对象时,需要根据不同的浏览器来创建不同的对象….装载XML文件的时候,也有兼容性的问题。
Jquery就很好地屏蔽了浏览器不同的问题,不需要考虑浏览器兼容的问题,这是非常非常方便我们开发的。
前4个方法的功能都是差不多的,都是向服务器发送请求,得到服务器返回的数据。
最后一个是对表单的数据进行封装,将表单的数据封装成JSON格式
首先,我们来使用一下load()这个方法吧。在文档中对它的解释是这样子的。
打开网易新闻 查看精彩图片
第一个参数:表示的是要请求的路径
第二个参数:要把哪些参数带过去给服务器端,需要的是JSON格式的
第三个参数:回调方法,服务器返回给异步对象的时候,会调用该方法
回调方法也有三个参数:
回调函数中参数一:backData表示返回的数据,它是js对象
回调函数中参数二:textStatus表示返回状态的文本描述,例如:success,error,
一般地,我们只需要用到第一个参数!
我们来使用这个方法来获取当前的时间,对这个方法熟悉一下:
调用load方法的jquery对象,返回结果自动添加到jQuery对象代表的标签中间
如果带参数就自动使用post,不带参数自动使用get。
使用load方法时,自动进行编码,无需手工编码
打开网易新闻 查看精彩图片
上面的load()方法,当我们带参数给服务器的时候,就自动转化成post、不带参数的时候就转换成get。\$.get()就是指定是get方法
load()方法是使用Jquery对象来调用的,并且调用过后,会把数据自动填充到Jquery对象的标签中间,而\$.get()
并不是特定的Jquery对象来调用!
由于\$.get()
是没有将返回的数据自动填充到标签之中,因此需要手动地添加到指定的标签之中!
打开网易新闻 查看精彩图片
\$.post()和\$.get()
是十分类似的,只不过是把请求方式改变了,一般情况下,我们有参数传递给服务器的时候,都是用post方式的。
使用\$.post()
方法是需要设定编码的,它和load()方法是不一样的!
下面使用检查用户名和密码是否合法的案例来说明这两个方法:
打开网易新闻 查看精彩图片
打开网易新闻 查看精彩图片
上面在介绍参数的时候已经说了,发送给服务器端的参数是需要JSON格式的,但是呢,如果我在表单中有很多很多的参数呢???那不是要我自己一个一个地去拼接????
于是乎,Jquery也提供了serialize()这么一个方法,给我们自动把表单中的数据封装成JSON格式的数据
为每个jQuery对象设置一个name属性,因为name属性会被认为请求参数名
根据上面的例子,我们来使用一下,我们调用serialize()方法,不自己去拼接JSON
打开网易新闻 查看精彩图片
对于这个方法,我们又使用二级联动这个案例来讲解吧。我们曾经使用过JavaScript来解析XML、JSON来实现二级联动。这次我使用Jquery+Struts2+JSON来实现二级联动。
\$.ajax()
这个方法接收的参数是一个JSON类型,JSON里面有几个参数:
data【发送给服务器的数据,也是一个JSON类型】
这里遇到的问题:动态获取选择下拉框的值时候,调用的是val()而不是text()….
打开网易新闻 查看精彩图片
load()方法是使用Jquery的对象来进行调用的,得到服务器的结果自动会把结果嵌套到所在的标签中。
get()方法不是使用Jquery对象来调用,因此需要手动把结果放在想要放的位置
post()方法是用来把参数带过去给服务器的,因此我们需要在Servlet上手动设置编码。用法与get()方法一样
serialize()是非常好用的一个方法,不需要我们手动去拼接参数,会自动把form表单的参数封装成JSON格式的数据。
打开网易新闻 查看精彩图片
打开网易新闻 查看精彩图片
打开网易新闻 查看精彩图片