App测试方法总结

一、安全测试1.软件权限1)扣费风险:包括短信、拨打电话、连接网络等。2)隐私泄露风险:包括访问手机信息、访问联系人信息等。3)对App的输入有效性校验、认证、授权、数据加密等方面进行检测4)限制/允许使用手机功能接入互联网5)限制/允许使用手机发送接收信息功能6)限制或使用本地连接7)限制/允许使用手机拍照或录音8)限制/允许使用手机读取用户数据9)限制/允许使用手机写入用户数据10)限制/允许应用程序来注册自动启动应用程序2.安装与卸载安全性1)应用程序应能正确安装到设备驱动程序上2)能够在安装设备驱动程序上找到应用程序的相应图标3)安装路径应能指定4)没有用户的允许,应用程序不能预先设定自动启动5)卸载是否安全,其安装进去的文件是否全部卸载6)卸载用户使用过程中产生的文件是否有提示7)其修改的配置信息是否复原8)卸载是否影响其他软件的功能9)卸载应该移除所有的文件3.数据安全性1)当将密码或其它的敏感数据输入到应用程序时,其不会被存储在设备中,同时密码也不会被解码。2)输入的密码将不以明文形式进行显示。3)密码、信用卡明细或其他的敏感数据将不被存储在它们预输入的位置上。4)不同的...
代码星球 代码星球·2021-02-18

JMeter测试WEB性能入门

一.JMeter介绍1.Apache JMeter是什么   ApacheJMeter 是Apache组织的开放源代码项目,是一个100%纯Java桌面应用,用于压力测试和性能测量。它最初被设计用于Web应用测试但后来扩展到其它测试领域。ApacheJMeter可以用于对静态的和动态的资源(文件,Servlet,Perl脚本,Java对象,数据库和查询,FTP服务器或是其它资源)的性能进行测试。JMeter可以用于在服务器,网络或对象模拟繁重的负载来测试它们提供服务的受压能力或者分析不同压力条件下的总体性能情况。你可以使用JMeter提供的图形化界面,分析性能指标或者在高负载情况下测试你的服务器/脚本/对象。2.Apache JMeter能做什么1.能够对HTTP和FTP服务器进行压力和性能测试,也可以对任何数据库进行同样的测试2.完全的可移植性和100%纯Java3.完全Swing的轻量级组件支持4.完全多线程框架允许通过多个线程并发取样和通过单独的线程组对不同的功能同时取样5.精心的GUI设计允许快速操作和更精确的计时6.缓存和离线分析/回放测试结果7...

手机APP测试点总结

(1)根据产品需求文档编写测试用例(2)软件设计文档编写用例(1)Android、iOS版本的兼容性(2)手机分辨率兼容性(3)网络的兼容性:2G/3G/4G/Wifi,弱网下、断网时(4)APP跨版本的兼容性1.适配性测试:(1)手机不同分标率支持:客户端支持的分辨率等(2)手机不同版本的支持:2.3  4.0  4.4等;在测试计划中:需要安排单独的时间用于Android不同系统的兼容性测试,包括2.0以下版本和4.0以上等(3)手机不同厂家系统的支持:不同厂家会有不同Android系统,例如:小米,华为,锤子对市面上主流手机的支持(4)手机不同尺寸的支持:3.5到5.7屏幕在UI显示有区别,要支持最大到最小。2.安装、卸载测试(1)生成apk文件在真机上可以安装及卸载;(2)Android手机端通过使用安装工具。如:豌豆荚3.在线升级测试:(1)验证数字签名(2)升级后可以正常使用(3)在线跨版本升级。(1)压力测试(2)电量流量测试(3)CPU、内存消耗(4)APP启动时长(5)Crash率(6)内存泄露(1)外网测试主要现实模拟客户使用...
代码星球 代码星球·2021-02-18

Android性能测试工具Emmagee

Emmagee介绍Emmagee是监控指定被测应用在使用过程中占用机器的CPU、内存、流量资源的性能测试小工具。开源地址:https://github.com/NetEase/Emmagee支持SDK:Android2.2以及以上版本为什么开发Emmagee?1、现有免费的android性能测试工具并不能满足我们的需求     当前android市场上也有很多免费的工具可以监控性能,但是基本上都是监控手机整体的性能,或者监控被测应用某个时间点占用的总共内存、流量数据等。也有可以监控单个应用的工具,但是需要你一直启动工具在UI最前端,但这样会影响功能测试过程,很不方便。2、方便按照功能测试人员的需求继续完善定制工具    自己开发的话后续有新的需求方便新增和继续完善,比如我们当前就加入了浮窗等功能。3、后续考虑和UI自动化测试在结合    希望自己通过开发小工具了解android中性能数据获取的相关知识,后续可以和UI自动化测试结合。为什么使用Emmagee?...

LoadRunner对移动互联网后端服务器压力测试

LoadRunner,是惠普公司研发的一款预测系统行为和性能的负载测试工具。通过以模拟上千万用户实施并发负载及实时性能监测的方式来确认和查找问题,LoadRunner能够对整个企业架构进行测试。LoadRunner11是目前比较常用的版本,有免费的超级license 最高支持6.5w个并发,目前该版本对Web网站的压力测试有很好的支持,但是不支持手机app的操作脚本录制。LoadRunner12顺应移动互联网的快速发展,增加了对手机app的操作脚本录制功能,由于该版本推出时间较短,目前没有破解版或者免费的license,而且购买license十分昂贵(5000 virtual user day @ $1.40 each),5000个虚拟用户的并发每天大概需要7000美元,但是有Loadrunner12社区版,仅支持50个用户并发。经过实践发现,LoadRunner12录制的手机app操作脚本可以运行在LoadRunner11上,所以我们结合二者的优点,采用LoadRunner12录制脚本+ LoadRunn...

Web测试方法总结

(5)安全性检查:输入特殊字符串(null,NULL,javascript,2.数值型输入框:(1)边界值:最大值、最小值、最大值+1、最小值-1(2)位数:最小位数、最大位数、最小位数-1、最大位数+1、输入超长值、输入整数(3)异常值、特殊字符:输入空白(null)、空格或“……!@#¥%&*({【《,。?、:;‘<>’》】})”等可能导致系统错误的字符、禁止直接输入特殊字符时,尝试使用粘贴拷贝查看是否能正常提交、word中的特殊功能,通过剪贴板拷贝到输入框,分页符,分节符类似公式的上下标等、数值的特殊符号如∑,㏒,㏑,∏,+,-等。     输入负整数、负小数、分数、输入字母、汉字、小数(小数前0点舍去的情况,多个小数点的情况)、首位为0的数字如01、02、科学技术法是否支持1.0E2、全角数字与半角数字、数字与字母混合、16进制,8进制数值、货币型输入(允许小数点后面几位)。(4)安全性检查:不能直接输入就粘贴3.日期型输入框:(1)合法性检查:(输入0日、1日、32日)、月输入【1、3、5、7、8、10、1...
代码星球 代码星球·2021-02-18

一位软件测试工程师浅谈用户体验

一、什么是用户体验    用户体验,英文叫做userexperience,缩写为UE,或者UX。一个较常见的定义是“指用户访问一个网站或者使用一个产品时的全部体验。他们的印象和感觉,是否成功,是否享受,是否还想再来使用。他们能够忍受的问题,疑惑和BUG的程度。”这是由英文直接翻译而来,生硬费解。而在我看来,用户体验就是一种用户在使用产品时所建立起来的心理感受。心理感受是纯主观性的,也就带有一定的不确定因素,不过,在界定用户基本确定的情况下,其用户体验的共性是能够通过良好的设计来实现的。二、提升用户体验的重要性    从用户角度来说,如今软件行业发展甚为迅速,各种软件产品更是形形色色,用户成了强势的群体,他们不再满足于使用的软件能实现其需要的功能,更追求一种使用过程中的良好的心理感受,用一种形象的说法就是用户是用他的脚来为软件投票的,非常简单的道理,你的产品不好,他就走掉了。从软件公司的角度来讲,提升产品的用户体验度可增加用户对软件产品乃至公司品牌的好感和信任度,这会使得我们的产品在市场上更有竞争力。同时,若...

大数据学习——java操作hdfs环境搭建以及环境测试

1新建一个maven项目 打印根目录下的文件的名字添加pom依赖pom.xml<?xmlversion="1.0"encoding="UTF-8"?><projectxmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.cyf</groupId><artifactId>hdfstest</artifactId><version>1.0-SNAPSHOT</version><packaging>war</packaging&g...

测试环境部署

部署测试环境1cd/opt/server/finsupper-report2ll3./service-finsupper-report.sh...
代码星球 代码星球·2021-02-17

软件工程-软件测试

    系统做完以后,就该测试系统了。在验收第一个系统的时候想必大家都会有这样的感受,信心满满的让师父验收系统,到师父这以后,一点就出错,而且还会输入一些自己想不到的字符之类的来“搞破坏”……系统也很给力的展示它的错误,越点错误越多,越会暴露自己思维上的漏洞,偷偷的想自己当初怎么都没有注意到这些问题呢,从这里说明几个情况:测试人员无论是技术上还是思想上都比开发人员高;测试时在输入合理和不合理的条件的情况下,都可以挺住!根据软工视频对系统测试进行了一下总结。      无论是做什么系统,及时的进行测试,进行模块测试是很重要的,等到最后所有代码都编写完以后再进行测试时,错误太多就会无从下手,而且不容易找到错误的根源,一方面会延迟做完系统的时间,另一方面还会给测试带来不必要的麻烦,因此要尽早和不断地进行软件测试。...
代码星球 代码星球·2021-02-17

[单元测试]VS-通过代码添加单元测试提示No classes or namespaces in this assembly

  在VisualStudio2012中,打算给以下方法添加单元测试,但却出现了提示:Noclassesornamespacesinthisassembly的提示。1namespaceUnitTest2{3classProgram4{5publicintAdd(inta,intb)6{7returna+b;8}9publicintDivide(inta,intb)10{11returna/b;12}13staticvoidMain(string[]args)14{15}16}17}  原因还是在于对Program这个类的访问权限,默认是internal类型。这时候只能在程序集内访问该类。而创建新的测试项目已经是属于另外一个程序集了,这时候测试项目当然无法查看到待测试项目中的类。因此,需要在需要测试的类前加上public访问修饰符。  又一次被默认访问修饰符耍了,心粗哎。  这里介绍下通过添加单元测试项目完成单元测试的方法,以加深理解。单元测试,浅显的理解就是写一个测试类,在这个测试类中输入测试参数,预期结果。然后在测试类的方法中运行待测试类的方法,看运行结果是否符合预期结果。用户需要输...

spring boot使用TestRestTemplate集成测试 RESTful 接口

这篇文章没什么技术含量,只是单纯的记录一下如何用TestRestTemplate访问受security保护的api,供以后查阅。 @Slf4j@RunWith(SpringRunner.class)@SpringBootTest(webEnvironment=SpringBootTest.WebEnvironment.RANDOM_PORT)publicclassAccountControllerTests{@AutowiredprivateTestRestTemplaterestTemplate;privateHttpEntityhttpEntity;/***登录*@throwsException*/privatevoidlogin()throwsException{StringexpectStr="{"code":0,"msg":"success"}";MultiValueMap<String,String>map=newLinkedMultiValueMap<>();map.add("username","183xxxxxxxx");map.ad...

.NET中的异步编程——动机和单元测试

自.NET4.5发布以来已经有很长一段时间了。留在了我们的记忆里,其发布在2012年8月15日。是的,六年前。感觉老了吗?好吧,我不打算让你做出改变,而是提醒你一些.NET发布的亮点。此版本带来的主要功能之一是使用async/await方法进行异步编程。基本上,微软的团队通过保持类似于同步代码的逻辑结构,使编译器完成开发人员过去经常做的工作。你看,在那个时候,WindowsPhone仍然是一件事情,为这些平台开发应用程序有一定的局限性。主要原因是WindowsPhone与桌面应用程序不同,引入了硬限制,其中任何方法都无法阻塞超过50ms。反过来,这意味着开发人员不再需要阻止UI,这导致了代码中某种异步性的必要性。.NET4.5展示了对这种必要性的回应。那么,为什么我要写一些超过五年前发生过的事情呢?好吧,我注意到尽管这是一个古老的话题,仍然有很多工程师都在努力解决这个问题。引用MikeJames在iProgrammer中的话:        通常,程序员完全清楚他们正在做的是面向对象的,但只是模糊地意识到他...

python性能测试脚本-乾颐堂

废话不多说,直接上代码。importhttplibimporturllibimporttimeimportjson   classTransaction(object):               def__init__(self):        self.custom_timers={}       defrun(self):        conn=httplib.HTTPConnection("localhost:8080")        headers={"Content-type":"ap...

MySQL的limit分页性能测试加优化

日常我们分页时会用到MySQL的limit字段去处理,那么使用limit时,有什么需要优化的地方吗?我们来做一个试验来看看limit的效率问题:环境:CentOS6&MySQL5.71、建议一个实验表:collect(id[主键],title[varchar],info[text],vtype[tinyint]);Engine:MyISAM2、关闭查询缓存:MySQL中的query_cache_size和query_cache_type参数。mysql>showvariableslike'query_cache%';+------------------------------+---------+|Variable_name|Value|+------------------------------+---------+|query_cache_limit|1048576||query_cache_min_res_unit|4096||query_cache_size|1048576||query_cache_type|OFF||query_cache_wlock_in...
首页上一页...56789...下一页尾页