泰安软件公司 泰安网站建设,网络会议网站,微服务网站开发,自学网站建设看哪本书很多同学认为功能测试和性能测试是严格分开的#xff0c;功能测试人员无法发现性能问题。其实不是这样的#xff0c;功能测试人员在验证功能时也可以发现性能问题#xff1b;一些功能反而在功能测试环境不好验证#xff0c;需要在性能环境上测试。 今天咱们就说一下测试涉及…很多同学认为功能测试和性能测试是严格分开的功能测试人员无法发现性能问题。其实不是这样的功能测试人员在验证功能时也可以发现性能问题一些功能反而在功能测试环境不好验证需要在性能环境上测试。 今天咱们就说一下测试涉及数据库操作的功能时如何发现SQL语句使用不当导致的性能低的问题。主要方法就是通过EXPLAIN命令查看SQL语句的执行计划如果执行计划中没有使用任何索引基本上可以确认是性能问题其他情况需要具体分析。如果开发不信将SQL语句涉及的表格插入100万行然后执行相同的功能操作看看。 今天的例子以Mysql数据库演示结果其他数据库也是类似操作。 执行explain之后结果集包含如下信息
-------------------------------------------------------------------------------------------------------
|
| id | select_type | table | partitions | type | possible_keys | key | key_len | ref | rows | filtered | Extra | -------------------------------------------------------------------------------------------------------
type字段解释如下表 执行样例
mysql explain select * from test where id 1;
------------------------------------------------------------------------------------------
|
| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra | ------------------------------------------------------------------------------------------
|
| 1 | SIMPLE | test | range | PRIMARY | PRIMARY | 8 | NULL | 34252 | Using where | ------------------------------------------------------------------------------------------ 大家初步使用执行计划时可以只关注type的取值是否是ALL即可如果是ALL就说明SQL语句执行会导致全表扫描这种SQL语句在表记录较多时会引入性能问题。 以下是我收集到的比较好的学习教程资源虽然不是什么很值钱的东西如果你刚好需要可以评论区留言【777】直接拿走就好了 各位想获取资料的朋友请点赞 评论 收藏三连
三连之后我会在评论区挨个私信发给你们~