随笔分类 -  测试基础技能

摘要:1、base:ACID属性,并发控制 2、MySql事务的隔离级别有哪些,含义是什么? 3、锁知多少,读锁,写锁,排他锁,共享锁,间隙锁,乐观锁,悲观锁。 4、Mysql的事务与锁有什么关联?MySq中的事务实例。 1.1 ACID属性,多版本并发控制 在数据库汇总,事务可以看作是一组SQL语句组成 阅读全文
posted @ 2019-02-03 21:26 loleina 阅读(1360) 评论(0) 推荐(0)
摘要:在测试的过程中,无法避免的需要做一些性能压测,造数据的时长在此时就会备受关注。比如,造数据的时候用多线程还是多进程,用直接插入DB方式还是用先写文件后导入mysql的方式,写文件是写批量sql后面source导入,还是写文本格式后面load ito file导入,使用不同的方法耗时结果肯定是不一样的 阅读全文
posted @ 2018-10-26 17:18 loleina 阅读(14987) 评论(1) 推荐(0)
摘要:本文希望达到的目标: 1、服务器端与线程池 (实例demo) 2、并发插入db与线程池(实例demo) 3、线程池使用说明 4、线程池源码解析 一、基于socket的服务器与线程池连接。 1、在i7内核,windows机器下,处理300笔客户端发的请求(客户端开启3个进程,每个进程串行发送数据100 阅读全文
posted @ 2018-09-20 19:12 loleina 阅读(664) 评论(0) 推荐(0)
摘要:本文希望达到的目标: 一、多线程同步原语:互斥锁 在多线程代码中,总有一些特定的函数或者代码块不应该被多个线程同时执行,通常包括修改数据库,更新文件或者其他会产生竞态的类似情况。当多个线程共享相同内存时,需要确保每个线程看到的数据是一致的,如果线程使用的变量是其他线程都不会去修改或读取的,那就不存在 阅读全文
posted @ 2018-09-17 19:48 loleina 阅读(516) 评论(0) 推荐(0)
摘要:本文希望达到的目标: 一、多线程的基本认识 多线程编程的目的:并行处理子任务,大幅度地提升整个任务的效率。 线程就是运行在进程上下文的逻辑流。每个线程都有自己的线程上下文,包含唯一的线程ID(就当前所属进程而言),栈,栈指针,程序计数器,通用寄存器和条件码等。 同一个进程中的线程,共享相同的运行环境 阅读全文
posted @ 2018-09-16 11:00 loleina 阅读(13595) 评论(0) 推荐(1)
摘要:在https学习笔记二,已经弄清了数字证书的概念,组成和在https连接过程中,客户端是如何验证服务器端的证书的。这一章,主要介绍下如何使用openssl库来创建key file,以及生成root CA及签发子证书。学习主要参考官方文档:https://www.feistyduck.com/libr 阅读全文
posted @ 2018-03-12 14:57 loleina 阅读(38146) 评论(1) 推荐(0)
摘要:在更详细的学习HTTPS之前,我也觉得很有必要学习下HTTPS经常用到的加密编码技术的背景知识。密码学是对报文进行编解码的机制和技巧。可以用来加密数据,比如数据加密常用的AES/ECB/PKCS5Padding加密,也可以用来防止报文的篡改,使用RSA2048withSHA256签名验证,使用MD5 阅读全文
posted @ 2018-03-06 19:43 loleina 阅读(8538) 评论(0) 推荐(2)
摘要:首先推荐一本书,《HTTP权威指南》我就是看这本书入门的,对http协议有了更好的理解,学习https的理论知识我认为需要了解以下几点,需要一步步的深入学习: 1、HTTPS的基本概念? 2、HTTPS和HTTP的差别?HTTP + 数据加密技术 =HTTPS ?HTTPS 所谓的安全是指哪里安全? 阅读全文
posted @ 2018-02-06 10:19 loleina 阅读(2054) 评论(0) 推荐(0)
摘要:工厂设计模式是入门模式,也是使用较多的模式,这一篇就总结下我在测试项目时,看到使用的地方以及编写测试桩时基于此模式的实际运用。 实例一:测试的c++项目——简单工厂+宏函数反射的使用 由于公司对业务和代码要求保密,在这是不能贴业务代码更不能直接给业务UML类图,所以在这我做了一个类似案例的举例。常测 阅读全文
posted @ 2017-09-03 11:41 loleina 阅读(880) 评论(0) 推荐(0)
摘要:学习了简单工厂,工厂方法模式,那什么是抽象工厂呢?工厂方法模式是在超类(IFactory)中定义一个工厂的抽象接口(CreateOperation),然后由子类负责创建具体对象;而抽象工厂则是维护一个产品家族,由子类定义产品被产生的方法,客户根据超类的接口开发。目前简单的理解,抽象工厂更多的就是基于 阅读全文
posted @ 2017-08-19 17:29 loleina 阅读(394) 评论(0) 推荐(0)
摘要:工厂方法模式,在简单工厂上再深一层,简单工厂里有一个弊端,就是在方法里是根据用户的输入直接返回子类对象。在工厂方法里,定义了一个用于创建对象的接口,让子类决定实例化哪一个类,工厂方法使得一个类的实例化延迟到了子类。 以之前的操作运算为例,使用工厂方法代码如下: 客户端在使用时,需要决定由于哪一个工厂 阅读全文
posted @ 2017-08-16 20:23 loleina 阅读(272) 评论(0) 推荐(0)
摘要:一直都特别想整体学习下设计模式,之前总觉得不是时候,觉得基础不够好怕吸收不了,或者体会不到设计模式带来的便利。就在上半年的KPI编写测试桩项目中,我就深刻的感受到设计模式带来的好处。一般测试人员写的代码不是很多,很多时候写代码也都是基于解决问题的逻辑来的,写的代码面向过程思路较多,因此代码的冗余度特 阅读全文
posted @ 2017-08-16 20:02 loleina 阅读(357) 评论(0) 推荐(0)
摘要:检查用户输入的合法性,确信输入的内容只包含合法的数据,数据检查应当在客户端和服务器端都执行之所以要执行服务器端验证,是为了弥补客户端验证机制脆弱的安全性。在客户端,攻击者完全有可能获得网页的源代码,修改验证合法性的脚本(或者直接删除脚本),然后将非法内容通过修改后的表单提交给服务器。因此,要保证验证 阅读全文
posted @ 2015-12-02 19:19 loleina 阅读(417) 评论(0) 推荐(0)
摘要:那为什么出现以上问题呢?这是程序代码层控制不当导致的。如果web前端对输入数据控制严格,会对数据库进行操作的字符串,在客户端做敏感字符转义处理,或者在操作数据库的dao层,使用动态参数的sql,不使用拼接方式的sql,都可以防止该类问题的发生。 一般情况,如果测试人员了解dao层的具体设计,如果使用 阅读全文
posted @ 2015-12-02 19:18 loleina 阅读(1729) 评论(0) 推荐(0)
摘要:以下篇幅,用一个简单的实例说明如何进行测试。 功能:根据用户NAME删除用户,采用的是SQL拼接的方式,核心代码部分如下: public static void deleteByName(String name)throws Exception{ Session session = seesionf 阅读全文
posted @ 2015-12-02 19:12 loleina 阅读(1095) 评论(0) 推荐(0)
摘要:在进行java web 测试时,经常会忽略的测试种类就是sql注入测试,这类缺陷造成的原因是开发技术在这方面欠缺的表现,虽然不常见,但一旦有这类缺陷,就很因此对运营的数据造成很多不必要的损失,所以,还是值得关注部分,那什么是sql注入? SQL 注入是一种专门针对SQL语句的攻击方式。通过把SQL命 阅读全文
posted @ 2015-12-02 19:07 loleina 阅读(796) 评论(0) 推荐(0)