长沙城乡建设网站,城乡建设部门户网站,网址导航系统,建设银行扬中网站3.测试分类 系统测试包括回归测试和冒烟测试
回归测试#xff1a;修改了旧的代码后#xff0c;重新测试功能是否正确#xff0c;有没有引入新的错误或导致其它代码产生错误
冒烟测试#xff1a;目的是确认软件基本功能正常#xff0c;可以进行后续的正式测试工作
按是否…3.测试分类 系统测试包括回归测试和冒烟测试
回归测试修改了旧的代码后重新测试功能是否正确有没有引入新的错误或导致其它代码产生错误
冒烟测试目的是确认软件基本功能正常可以进行后续的正式测试工作
按是否查看代码
白盒结构测试、逻辑驱动测试要查看代码对代码测试结构测试
黑盒功能测试不用查看代码对功能进行测试 看是否符合用户需求
灰盒介于黑盒白盒多用于集成测试
按测试对象
业务测试、界面测试、容错性测试、文档测试、
兼容性测试平台、浏览器、与其他相关软件是否兼容、向前先后兼容、
性能测试响应时间、吞吐量、执行间隔等、
内存泄露测试原因
分配完内存之后没有回收
程序写法有问题没办法进行回收
某些API函数的使用不正确造成内存泄露
没有及时释放3.1.单元测试、集成测试、系统测试的区别“
单元测试
单元测试是对软件组成单元进行测试其目的是检验软件基本组成单位的正确性测试的对象是软件设计的最小单位函数、或者类。通常情况下是白盒的一般由开发人员测试.能够尽早的发现错误降低修改成本。
集成测试
集成测试也称综合测试、组装测试、联合测试将程序模块采用适当的集成策略组装起来对系统的接口及集成后的功能进行正确性检测的测试工作。其主要目的是检查软件单位之间的接口是否正确集成测试的对象是已经经过单元测试的模块。
系统测试
系统测试是对整个系统的测试将硬件、软件、操作人员看作一个整体检验它是否有不符合系统说明书的地方主要包括功能测试、界面测试、可靠性测试、易用性测试、性能测试。 功能测试主要针对包括功能可用性、功能实现程度功能流程业务流程、数据处理业务数据处理方面测试。在集成测试之后。 在系统实际运行环境下来进行测试。
三者区别
粒度不同 - 单元测试粒度最小测试的是软件的基本模块或接口- 集成测试粒度居中测试的是集成各个单元模块之间的接口- 系统测试粒度最大测试的是 整个系统的功能和性能测试方式不同 - 单元测试一般由开发小组采用白盒方式来测试- 集成测试一般由开发小组采用白盒加黑盒的方式来测试- 系统测试一般由独立测试小组采用黑盒方式来测试。 测试内容不同 - 单元测试主要测试单元是否符合“设计”- 集成测试既验证“设计’又验证“需求”偏技术- 系统测试主要测试系统是否符合“需求规格说明书”偏业务使用阶段不同 - 单元测试为开发人员在开发阶段要做的事情- 集成测试和系统测试为测试人员在测试周期内级层做的工作。 3.2 验收测试
也称交付测试是针对用户需求、业务流程进行的正式的测试以确定系统是否满足验收标准由用户、客户或其他授权机构决定是否接受系统。
验收测试包括alpha测试和beta测试alpha测试是由开发者进行的软件测试beta测试是由用户在脱离开发环境下进行的软件测试。
3.3 白盒和黑盒的区别 白盒测试 白盒测试也称为结构测试或逻辑驱动测试是针对被测单元内部是如何进行工作的测试。检查程序内部逻辑结构对所有的逻辑路径进行测试是一种穷举路径的测试方法 常见的白盒测试的方法有语句覆盖条件覆盖判定覆盖条件组合覆盖基本路径覆盖等等。 优点可以检测代码的每条分支和路径可以揭示隐藏在代码中的错误对代码的测试比较彻底。 缺点耗费比较大不能检测到代码中遗漏的逻辑不能直接验证需求的正确性 黑盒测试 黑盒测试用例设计方法基于用户需求的测试、等价类划分方法、边界值分析方法、错误推测方法、因果图方法、判定表驱动分析方法、正交实验法、场景法。依据是用户需求规格说明书详细设计说明书 黑盒测试也称功能测试或数据驱动测试它不看代码内部的逻辑只检查程序功能是否按照需求规格说明书的规定正常使用程序是否能适当地接收输入数锯而产生正确的输出信息并且保持外部信息如数据库或文件的完整性。 优点容易实施不需要关注内部实现贴近用户需求。 缺点覆盖率比较低因为不知道内部逻辑
3.4 性能测试关注啥
指标响应时间RT、每秒能完成的响应数TPS、CPU利用率、内存占用、网络带宽使用率、手机app的话还考虑耗电量……
考虑负载加大时各项指标如何变化联网的考虑各种不同的网络环境正常网、超快网、网速慢、断网时指标的变化
3.5 压力测试关注啥
通常要进行软件压力测试的资源包括内部内存、CPU 可用性、磁盘空间和网络带宽。
3.6并发用户数和在线用户数的区别
在线用户数用户同时在一定时间段的在线数量
并发用户数某一时刻同时向服务器发送请求的用户数
在线用户只要在线就好了并发用户计算的是和服务器有交流的用户一般比例5%-20%
3.7 其他测试的类型
功能测试关注功能正常包含兼容性测试除了下面分类都测
性能测试关注比如前端性能、后端性能
安全测试关注传输、存储等安全
特性测试特性指平台差异(即部分兼容性测试)如PC端鼠标键盘操作特性(Tab键等)如手机触屏操作横竖屏中断恢复(来电)等
3.8 如何开展第一次测试
1.学习项目所有的文档
2.参加所有会议
3.了解公司的项目管理工具
4.学习用例、缺陷书写规范工具的使用规范
5.积极主动和负责人以及项目组的人员沟通
3.9 提交一个BUG研发人员不认可怎么办
1自查,是否bug描述不清楚 2检查缺陷级别。定级要有理有据
3让研发站在用户的角度了解bug可能给用户造成的困扰
4提高自身的业务水平和技术能力最好能提出解决方案
5好好沟通不要争吵
6需求变更
7寻求第三方的帮助发起Bug评审。
4. Web和 APP测试的区别 App测试和Web测试的区别
1.首先是web和APP的区别
- web是b/s架构的基于浏览器-APP是c/s架构的必须要有客户端。那么在系统测试测试的时候就会产生区别了。 - Web测试中只要更新了服务器客户端就会同步更新而且保证每个用户用的客户端一样- App就不能保证完全一致因为App客户端需要用户主动更新.-如果App测试中修改了服务器就意味着客户端用户使用的所有核心版本都要进行回归测试 2.性能方面
- web主要看响应速度,响应时间
- App还看电量、流量、CPU、GPU图形处理器、内存… 3.兼容方面
web基于浏览器主要看电脑硬件、电脑系统、浏览器(主要)方面的兼容选择不同浏览器内核进行测试IE\Chrome\FirefoxApp依赖于手机或平板关注的系统主要是安卓和ios还要关心分辨率、屏幕尺寸 4.App比web测试多一些专项测试 - 相比较web测试app更是多了一些专项测试弱网测试安装、卸载、更新界面操作、触摸手势等 - 一些异常场景的考虑以及弱网络测试。这里的异常场景就是中断来电短信关机重启等。- 而弱网测试是App测试中必须执行的一项测试。包含弱网和网络切换测试。需要测试弱网所造成的用户体验重点要考虑回退和刷新是否会造成二次提交。需要测试丢包延时的处理机制。避免用户的流失。- 安装、卸载、更新- web测试是基于浏览器的所以不必考虑这些。而app是客户端的则必须测试安装、更新、卸载。除了常规的安装、更新、卸载还要考虑到异常场景。包括安装时的中断、弱网、安装后删除安装文件更新的强制更新与非强制更新、增量包更新、断点续传、弱网卸载后删除App相关的文件等等。 - 界面操作- 现在app产品的用户都是使用的触摸屏手机所以测试的时候还要注意手势横竖屏切换多点触控事件触发区域等测试。4.1请你讲讲怎样进行web测试 5.测试一款产品/一个功能 角度
功能
性能响应速度、CPU占用联网的话考虑多用户并发/弱网环境app的话考虑耗电量
易用性
兼容性多平台/多系统/多版本
安全用户名密码有没有保存功能数据往服务器传是不是加密的有没有防止一些脚本或者SQL注入攻击
UI符合大众期望有无错别字排版和颜色搭配
稳定性压力测试、极端条件测试
查看产品的使用说明书
6.软件质量模型的6大特性 功能性可靠性易用性效率维护性可移植性
-功能性用户要求的功能是否正确实现
-可靠性在规定的时间和条件下。软件维持性能水平的程度
-易用性对用户使用的友善性使用是否方便
-效率性能否在完成功能的同时节约资源
-可维护当需求改变或软件环境发生改变时对软件修改的难易程度
-可移植从一个计算机系统或环境移动到另一个计算机系统或环境的难易程度7. selenium流程、获取元素方法 先import然后webdriver模拟打开一个浏览器初始化获取特定的网址然后通过获取元素模拟鼠标点击页面上的按钮或者其他动作比如在特定的文本框输入特定的内容最后quit()一下
获取元素方法xpathcss选择器文本内容……等等比如find_element_by_xpath、find_element_by_css_selector、find_element_by_link_text
8.自动化测试和手工测试的区别 9. selenium的特点 1.多平台Firefox \Chrome\edge(MS)、IE\Safari
2.多语言Java \python\C\C#\ruby
selenium工具集
selenium1: selenium IDEselenium RC,selenium Grid
selenium2:selenium1webdriver 相当于出租车司机
selenium3:做了一些更新增加了edge和Sarafi原生驱动
3.自动化适合什么样的项目
接口自动化功能稳定
时机后台开发完成就可以做接口自动化
Web自动化功能稳定界面元素稳定
时机前后台都开发完成
关闭浏览器
close:仅仅关闭浏览器
quit:关闭浏览器清除占用的资源释放session
10.重要参数
10.1 QPS每秒查询率
QPS每秒查询率QPS是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准
用来衡量服务器的机器性能。
10.2 QPS和TPS的区别
TPSTransactions Per Second每秒传输的事物处理个数即服务器每秒处理的事务数。TPS包括一条消息入和一条消息出加上一次用户数据库访问。
是软件测试结果的测量单位。
10.3系统吞吐量
是指单位时间内系统处理用户的请求数或页面数量可以直接反映出软件的承载能力。一般来说利用每秒钟的请求数或页面数量衡量吞吐量从业务的角度来看也可以用每天的访问人数或每小时处理的业务数来衡量。