<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[tester_runing的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/tester_runing</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; tester_runing]]></copyright><item><title><![CDATA[Zipkin+Sleuth调用链监控集成和使用]]></title><link>https://blog.youkuaiyun.com/tester_runing/article/details/120966442</link><guid>https://blog.youkuaiyun.com/tester_runing/article/details/120966442</guid><author>tester_runing</author><pubDate>Tue, 26 Oct 2021 10:05:48 +0800</pubDate><description><![CDATA[背景与需求

跨微服务的API调用发生异常，要求快速定位出问题出在哪里。
跨微服务的API调用发生性能瓶颈，要求迅速定位出性能瓶颈。

集成
整体结构
整体机构为C/S模式，客户端(Sleuth)来监控采集调用链信息，汇报给服务端(Zipkin)，通过Zipkin提供的web页面来展示链路调用和异常信息，统计链路图等功能。如下图：
操作步骤
1. 引入依赖
&lt;dependency&gt;  &lt;groupId&gt;org.springframework.cloud&lt;/groupId&gt.]]></description><category></category></item><item><title><![CDATA[微信小程序自动化，记录趟过的坑！]]></title><link>https://blog.youkuaiyun.com/tester_runing/article/details/111299647</link><guid>https://blog.youkuaiyun.com/tester_runing/article/details/111299647</guid><author>tester_runing</author><pubDate>Wed, 16 Dec 2020 18:06:10 +0800</pubDate><description><![CDATA[项目思想：关键字+数据驱动混合测试

基于Android-微信小程序自动化的关键是：webview的切换
对于微信App来说如何从NATIVE切换到webview的过程
测试版本信息
1.微信版本：7.0.21
2.Android：7.0
3.appium引入依赖：6.1.0
4.testng引入依赖：6.14.3
初始化实例配置信息
1.配置参数如下：


其中涉及到微信内置webview版本与chromedriver一致性设置，查看流程如下：
第一步：查看微信webview版本信息，这里通过uc-de.]]></description><category></category></item><item><title><![CDATA[testNG优雅的使用注解让你的测试项目开发更高效！]]></title><link>https://blog.youkuaiyun.com/tester_runing/article/details/109461946</link><guid>https://blog.youkuaiyun.com/tester_runing/article/details/109461946</guid><author>tester_runing</author><pubDate>Tue, 03 Nov 2020 09:19:02 +0800</pubDate><description><![CDATA[testNG大部分是通过xml配置测试类和监听类

但是这种方法就像传统的spring框架一样需要引入大量的xml配置信息，而且在各层之间也需要通过new对象传递。如果testNG能使用注解注入bean对象，那么完成一个自动化项目的开发周期必然会缩短很多。于是在spring官网看到支持TestNG Support Classes。大致说明如下：

官方文档地址
可以通过抽象类AbstractTestNGSpringContextTests,实现bean查找或测试整个上下文的状态。

现在大部分后端项目是sp]]></description><category></category></item><item><title><![CDATA[Easypoi实现excel多sheet表导入导出功能]]></title><link>https://blog.youkuaiyun.com/tester_runing/article/details/109236579</link><guid>https://blog.youkuaiyun.com/tester_runing/article/details/109236579</guid><author>tester_runing</author><pubDate>Sun, 25 Oct 2020 11:46:06 +0800</pubDate><description><![CDATA[Easypoi简化了开发中对文档的导入导出实现，并不像poi那样都要写大段工具类来搞定文档的读写。

第一步引入Easypoi依赖

        &lt;!-- 导出文件工具 EasyPoi实现Excel读写管理测试用例  --&gt;
        &lt;dependency&gt;
            &lt;groupId&gt;cn.afterturn&lt;/groupId&gt;
            &lt;artifactId&gt;easypoi-spring-boot-s.]]></description><category></category></item><item><title><![CDATA[IWeb4j 项目解决web自动化回归测试痛点!]]></title><link>https://blog.youkuaiyun.com/tester_runing/article/details/109174913</link><guid>https://blog.youkuaiyun.com/tester_runing/article/details/109174913</guid><author>tester_runing</author><pubDate>Tue, 20 Oct 2020 09:43:54 +0800</pubDate><description><![CDATA[IWeb4j 项目思想

IWeb项目的测试用例使用数据驱动测试，当下数据驱动使用最多的无非是excel、yaml、json、数据库（后续通过SpringDataJPA实现数据库驱动）作为数据驱动的载体，四种方式思想都一样只是实现方式不同。
目前先实现excel数据源驱动。通过开源的Easypoi文档导入导出工具完成，后续会新增数据库、yaml文件的数据驱动方式。
页面元素定位使用封装的关键字库测试，通过dom4j解析xml方式实现。
整体项目属于混合模型开发测试，整体项目只用显示等待解决元素加载可见可编辑]]></description><category></category></item><item><title><![CDATA[java版集成Allure报告--注解的强大]]></title><link>https://blog.youkuaiyun.com/tester_runing/article/details/108979202</link><guid>https://blog.youkuaiyun.com/tester_runing/article/details/108979202</guid><author>tester_runing</author><pubDate>Tue, 20 Oct 2020 09:40:22 +0800</pubDate><description><![CDATA[testNG集成Allure报告–注解使用说明
前置条件

首先需要下载allure的zip包解压，然后配置环境变量即可（win）。allure的GitHub下载地址：
然后执行testn.xml或者是单元测试下的runCase方法，两者任选其一。测试用例执行完成后会在项目目录下生成：allure-results文件夹
最后通过cmd或者IDEA 的Terminal功能，在当前项目下执行如下命令

allure serve allure-results

即可自动打开web页面测报告

下面详解下java版]]></description><category></category></item><item><title><![CDATA[java版app自动化测试初始化模板]]></title><link>https://blog.youkuaiyun.com/tester_runing/article/details/108843949</link><guid>https://blog.youkuaiyun.com/tester_runing/article/details/108843949</guid><author>tester_runing</author><pubDate>Tue, 29 Sep 2020 09:15:11 +0800</pubDate><description><![CDATA[项目目录介绍


目录结构如下：
（包含：驱动的基础配置、全局异常处理、异常截图、报告自动生成、app常用操作方法封装、常用工具类封装）



各包分层关系
basepage包负责存放app公共操作方法、AndroidDriver基础配置、testNG公共执行顺序BaseTest,对外暴露驱动等。


BaseApp类包含app操作有：封装By类型的点击操作和输入框输入数据操作、切换到下一个窗口操作、上下左右滑动操作、具体坐标点击操作、直接使用adb命令的操作、前进后退刷新的操作等，其它方法可自行封住。

]]></description><category></category></item><item><title><![CDATA[java接口自动化框架优化（二）]]></title><link>https://blog.youkuaiyun.com/tester_runing/article/details/106476707</link><guid>https://blog.youkuaiyun.com/tester_runing/article/details/106476707</guid><author>tester_runing</author><pubDate>Mon, 01 Jun 2020 16:59:45 +0800</pubDate><description><![CDATA[项目路径说明

内容优化
优化内容
1.自动生成的测试报告集成至项目中，可直接通过项目访问测试报告（之前生成测试报告位于项目外，需要手动打开） 优化效果:

2.增加邮件发送功能（定时任务触发用例后，生成的测试报告通过邮件发送）
部分代码
public class SendEmail {
​
    private String smtpHost; // 邮件服务器地址  
    private String sendUserName; // 发件人的用户名  
    private String s.]]></description><category></category></item><item><title><![CDATA[java接口自动化优化（一）]]></title><link>https://blog.youkuaiyun.com/tester_runing/article/details/106396264</link><guid>https://blog.youkuaiyun.com/tester_runing/article/details/106396264</guid><author>tester_runing</author><pubDate>Thu, 28 May 2020 09:00:21 +0800</pubDate><description><![CDATA[优化extentreports在线样式改为离线加载自己项目下的样式
主要解决extentreports在线加载失败问题

上篇文章介绍了通过testng编写用例后使用extentreports作为测试报告的输出。java接口自动化首篇文章介绍
由于一直根据业务写接口测试，昨天跑业务接口的时候突然extentreports在线样式加载不，就知道extentreports静态服务器挂了，这样可不行，赶紧去下载静态文件放到自己的项目中，这样才有安全感。中间改静态文件路径的时候遇到一些坑，特此记录下。

入坑记录.]]></description><category></category></item><item><title><![CDATA[常用的思维导图融合流程图工具，贼好用，推荐给大家！]]></title><link>https://blog.youkuaiyun.com/tester_runing/article/details/106272695</link><guid>https://blog.youkuaiyun.com/tester_runing/article/details/106272695</guid><author>tester_runing</author><pubDate>Fri, 22 May 2020 09:09:32 +0800</pubDate><description><![CDATA[一般图示融合了思维导图+流程图+概念图的理念，可以更立体、全面地厘清逻辑关系，会比单纯用文字记录学习得更透彻、记忆更长久。下面就分享下自己最常用的两款免费画图软件——ProcessOn（简称PO）和Draw.io（简称Draw）！
软件可绘制的内容
通常画的主要是思维导图、流程图、概念图。但其实这两款软件也可以支持画人物关系图、组织架构图、泳道图，甚至简单的平面图、电路图都行。
PO网站地址点击跳转

Draw网站地址点击跳转

不过因为我画思维导图、流程图、概念图比较多，所以主要从这个角度去分析两款软件的]]></description><category></category></item><item><title><![CDATA[灵活轻巧的java接口自动化测试实战]]></title><link>https://blog.youkuaiyun.com/tester_runing/article/details/106209971</link><guid>https://blog.youkuaiyun.com/tester_runing/article/details/106209971</guid><author>tester_runing</author><pubDate>Tue, 19 May 2020 11:01:59 +0800</pubDate><description><![CDATA[前言
无论是自动化测试还是自动化部署，撸码肯定少不了，所以下面的基于java语言的接口自动化测试，要想在业务上实现接口自动化，前提是要有一定的java基础。
如果没有java基础，也没关系。这里小编也为大家提供了一套java基础精讲视频（虽然年代有点久2017，但是讲解内容绝对干货，小编看了很多的基础视频唯有这一套讲解到位）由于视频较大，放到了某盘上，后台回复关键字【java】即可获取。
进入主题
使用技术

Spring Boot
mybatis
testng
Swagger2
extentreports]]></description><category></category></item><item><title><![CDATA[六大接口管理平台，总有一款适合你的！]]></title><link>https://blog.youkuaiyun.com/tester_runing/article/details/106119298</link><guid>https://blog.youkuaiyun.com/tester_runing/article/details/106119298</guid><author>tester_runing</author><pubDate>Thu, 14 May 2020 14:29:15 +0800</pubDate><description><![CDATA[前后端分离绕不开的接口测试
先聊一聊前端和后端分离的优点。前后端分离优点如下：

真正的实现前后端解耦，前端服务器使用 nginx；
易于发现bug，可以快速定位是谁的问题，不会出现互相踢皮球的现象；
减少后端服务器的并发/负载压力；
nginx 支持热部署，不用重启服务器，前端无缝升级；
增加代码的维护性&amp;易读性（前后端耦合在一起的代码读起来相当费劲）；

其中不可避免的就是定制好接口文档，后端工程师要写好单元测试，推荐使用 chrome 的插件 postman 或 soapui或 jmeter，]]></description><category></category></item><item><title><![CDATA[一款超棒的redis开源客户端工具]]></title><link>https://blog.youkuaiyun.com/tester_runing/article/details/106119249</link><guid>https://blog.youkuaiyun.com/tester_runing/article/details/106119249</guid><author>tester_runing</author><pubDate>Thu, 14 May 2020 14:27:56 +0800</pubDate><description><![CDATA[前言

Redis DeskTop Manager可视化工具（之前一直在用的）

其实我在本地一直是直接用redis-client直接命令行连接redis，一方面是可以熟悉redis的命令，另一方面实在也没有什么好用的客户端工具。别跟我说rdm，Redis DeskTop Manager自从进入了0.9.9版本就开始付费使用或者贡献代码获得免费使用期限。而且rdm实在是太丑了，都不如我用命令行。
Redis DeskTop Manager可视化界面：

最后在GitHub上看到一个开源的redis桌面可视化]]></description><category></category></item><item><title><![CDATA[Redis在项目上的常用操作【二】]]></title><link>https://blog.youkuaiyun.com/tester_runing/article/details/104444641</link><guid>https://blog.youkuaiyun.com/tester_runing/article/details/104444641</guid><author>tester_runing</author><pubDate>Sat, 22 Feb 2020 15:33:04 +0800</pubDate><description><![CDATA[Redis的高级用法
redis集群

redis 主从复制


概念：持久化保证了即使redis服务重启也不会丢失数据，因为redis服务重启后会将硬盘上持久化的数据恢复到内存中，但是当redis服务器的硬盘损坏了可能会导致数据丢失，如果通过redis的主从复制机制就可以避免这种单点故障。

主从复制原理图：


说明

主redis中的数据有两个副本（replication）即从redis1...]]></description><category></category></item><item><title><![CDATA[Redis在项目上的实战操作【一】]]></title><link>https://blog.youkuaiyun.com/tester_runing/article/details/104408290</link><guid>https://blog.youkuaiyun.com/tester_runing/article/details/104408290</guid><author>tester_runing</author><pubDate>Thu, 20 Feb 2020 12:11:23 +0800</pubDate><description><![CDATA[redis的基础用法
1. Redis的应用场景

缓存-是JavaEE项目中使用最多的功能
如: 数据查询、短连接、新闻内容、商品内容等
任务队列
如：秒杀、抢购、12306等等
数据过期处理（精确单位毫秒级）
分布式集群架构中的session分离（等同于nginx负债均衡的（ip_hash）策略,其目的都是解决用户session一致性问题）


实际项目中：对于nginx的ip绑定策略同一用...]]></description><category></category></item><item><title><![CDATA[高并发下nginx调优实战]]></title><link>https://blog.youkuaiyun.com/tester_runing/article/details/104240915</link><guid>https://blog.youkuaiyun.com/tester_runing/article/details/104240915</guid><author>tester_runing</author><pubDate>Sun, 09 Feb 2020 21:25:11 +0800</pubDate><description><![CDATA[1.nginx优势说明

a.  占有内存少 (在3W并发连接中，开启的10个nginx进程消耗内存大约150M)
b. 高并发能力强 (官方测试能够支撑5W并发连接，在实际生产环境中能到2-3W并发连接数)
c . 简单 (配置文件通俗易懂)
d . 价格 (免费、开源)
e.  支持Rewriter重写 (能够根据域名、URL的不同，将HTTP请求分到不同的后端服务器群组)
f. 内置健康检...]]></description><category></category></item><item><title><![CDATA[性能测试平台源码介绍]]></title><link>https://blog.youkuaiyun.com/tester_runing/article/details/104227569</link><guid>https://blog.youkuaiyun.com/tester_runing/article/details/104227569</guid><author>tester_runing</author><pubDate>Sat, 08 Feb 2020 20:08:06 +0800</pubDate><description><![CDATA[性能测试平台技术说明

性能测试平台基于Fast框架开发，内核基于Jmeter-Api和Jmeter脚本实现在线性能压测

项目结构




fast目录
解释




doc
SQL语句–数据库需要执行的脚本


src



common
公共部分目录


aspect
日志


exception
异常


utils
项目工具类


validator
校验


xss
XXS


con...]]></description><category></category></item><item><title><![CDATA[基于docker容器web服务器集群部署]]></title><link>https://blog.youkuaiyun.com/tester_runing/article/details/104224982</link><guid>https://blog.youkuaiyun.com/tester_runing/article/details/104224982</guid><author>tester_runing</author><pubDate>Sat, 08 Feb 2020 16:45:23 +0800</pubDate><description><![CDATA[项目架构图


场景说明
基于docker容器引擎，分别pull  nginx镜像、tomcat镜像(具体镜像使用参考官方文档说明 ）配置nginx反向代理功能、配置Tomcat集群。实现应用服务器集群部署，提高服务器的承载能力。

docker官方文档地址
https://hub.docker.com/


在docker官方搜索需要拉取的镜像

docker安装步骤见上篇博客
https://...]]></description><category></category></item><item><title><![CDATA[Nginx配置文件 nginx.conf详解]]></title><link>https://blog.youkuaiyun.com/tester_runing/article/details/104215385</link><guid>https://blog.youkuaiyun.com/tester_runing/article/details/104215385</guid><author>tester_runing</author><pubDate>Fri, 07 Feb 2020 20:39:24 +0800</pubDate><description><![CDATA[Nginx配置文件nginx.conf详解

nginx.conf


# 定义Nginx运行的用户和用户组
# user nobady nobady;
# nginx进程数，建议设置为等于CPU总核心数,默认为1。
worker_processes 8;
#全局错误日志定义类型，[ debug | info | notice | warn | error | crit ]
error_log ...]]></description><category></category></item><item><title><![CDATA[linux下使用docker容器部署web应用]]></title><link>https://blog.youkuaiyun.com/tester_runing/article/details/104039410</link><guid>https://blog.youkuaiyun.com/tester_runing/article/details/104039410</guid><author>tester_runing</author><pubDate>Sun, 19 Jan 2020 13:31:14 +0800</pubDate><description><![CDATA[一、认识docker
Docker 是一个开源的应用容器引擎，基于 Go 语言 并遵从 Apache2.0 协议开源。
Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中，然后发布到任何流行的 Linux 机器上，也可以实现虚拟化。
容器是完全使用沙箱机制，相互之间不会有任何接口（类似 iPhone 的 app）,更重要的是容器性能开销极低。

二、Docker的应用...]]></description><category></category></item></channel></rss>