- 博客(59)
- 收藏
- 关注

原创 Jenkins+postman+newman之API全自动化测试
1 背景本文要介绍的环境在我司已经投入使用,举个简单的真实使用场景,开发提供了300多个API,每个API都有各种参数,所以我们会先在postman中为这300多个API编写300*n个testcase,然后在jenkins上跑;到此有人可能会问,都在postman中写好testcase了,怎么还要去jenkins中跑,岂不是多此一举?答案是否定的,试想,当开发一直在不停的维护这300多个接口时,难
2016-07-19 21:53:16
31799
25
原创 Win10 Hyper-V 设置主机与虚拟机相互ping通和远程
背景已启用windows Hyp er 和 在Hyper-V 安装了虚拟机后,网络互通就尤为重要。设置Hyper-V主机与虚拟机网络互通创建虚拟交换机 ,如果想虚拟机联网,需要选择外部 只想虚拟机与本机交互使用可以选择内部(可以通过网上邻居来相互传送文件)确定电脑上是否生成一个与你设置名称相同vEthernet 的如下图此时在vEthernet 点右键选属性,选择 int...
2020-02-25 12:20:53
19084
1
原创 Win如何启用Hyper -V
背景Hyper-V 已经集成到 Windows 8, Windows 8.1 和 Windows 10,所以可以直接启用Hyper -V去安装管理虚拟机。如何启用Windows Hyper-V首先在键盘上按 Win+R 打开对话框在对话框输入 OptionalFeatures.exe 并按回车.从列表中 选择 Hyper-V如下图等待安装完成重启电脑,你会看到Hyper-V 管理器...
2020-02-25 11:34:12
680
原创 如何解决django 链接sql server 出现的 No module named sql_server.pyodbc 问题
报错截图如下主要错误信息: No module named sql_server.pyodbc 或者 No module named sql_server首先打开 sql sever管理工具把网络配置项下面的三个都改为Enabled安装sql server链接所用到的数据库pip install django-pyodbcpip install django-pyodbc-az...
2020-02-24 17:18:56
2666
原创 MySQL 数据类型
整型tinyint ,1个字节,存储范围(-128-127或0-255)。smallint,2个字节。mediuint,3个字节。int ,4个字节。bigint,8个字节。浮点类型float(M,D),M叫精度小数的总位数,D是标度代表右边的位数,float能存10^38, 小数部分到10的负38,如果M <= 24,占4个字节,否则占8个字节。用来表示数据中的小数除...
2019-12-20 20:28:24
258
原创 MySQL 新手常遇到的问题
在cmd 中断操作MySQL 时,新手最常见的几个问题一 输入SQL语句后cmd窗口出现乱码解决方法:查看终端的编码方式修改MySQL输出的编码格式与终端相同set names gbk;二 输入SQL语句后,发现没有执行解决方法SQL语句默认以分号结束,请输入 ;三 输入错误SQL语句,如何不执行解决方法:当发现输入了错误的SQL语句时,输入 “\C” 后进入新...
2019-12-18 19:46:34
322
原创 MySQL 基本操作
创建数据库创建一个数据库: create database 数据库名 [charset 字符集];删除数据库删除一个数据库:drop database 数据库名;创建表create table <表名>(<字段1> <字段1的类型>,<字段2> <字段2的类型>);表名重命名alter table <...
2019-12-18 17:31:57
251
原创 MySQL Workbench 安装以及可视化图文使用
关于MySQL Workbench 安装 请参考 https://www.jianshu.com/p/c59faa3a6fc4关于 MySQL Workbench的图文使用请参考 https://www.jianshu.com/p/c3dcd4d9ce69总之:MySQL Workbench 的安装和图文使用是非常简单,后续文章将分享如何使用SQL语句对数据库的操作,敬请期待。...
2019-12-18 09:37:28
402
原创 Windows下 MySQL的安装及图形化管理
MySQL 简介MySQL是一种开放源代码的关系型数据库管理系统(RDBMS),使用最常用的数据库管理语言–结构化查询语言(SQL)进行数据库管理。MySQL是开放源代码的,因此任何人都可以在General Public License的许可下下载并根据个性化的需要对其进行修改。MySQL因为其速度、可靠性和适应性而备受关注。大多数人都认为在不需要事务化处理的情况下,MySQL是管理内容最好...
2019-12-18 09:14:20
1089
原创 如何使用Jmeter 5.1录制脚本
背景Jmeter 能够进行压力测试和性能测试,以及脚本的录制和回放,下面就介绍一下如何使用最新版的Jmeter 录制脚本。环境准备下载 jdk8 并安装并配置java 运行环境。因为jmeter是纯100%的java语言开发的,它的运行需要java环境。下载Jmeter并解压。如何录制脚本启动jmeter,点击bin下的为Windows 批处理的jmeter。在已经启动...
2019-10-16 10:29:17
6686
5
原创 Web全自动化测试Python + Pytest+Selenium+ Saucelabs
背景介绍:关于Web Ui 全自动化测试,我们用简单易学的python语言来编写测试用例;采用Python的单元测试框架Pytest去控制和运行测试用例;采用开源的Web Ui 测试框架Seleniumt提供的API操作界面元素;使用Saucelabs平台提供的各种浏览器。这样我们可以轻松的达到多浏览多测试用例并行运行。一、环境搭建关于全局环境安装Python安装pip,用...
2018-03-12 18:01:05
8386
原创 如何使用appium desktop 获取Android APP 控件的id
背景:随着Android 版本的更新,你会发现我们之前用的最新的版本的Appium 1.5.3无法启动我们的 Android APP 在模拟器为7.0的设备上,所以我们有必要了解如何使用 appium desktop 来获取Android APP 控件的id.也由于获取在自动化测试过程中获取控件的信息(比如id)是非常关键的一步。环境搭建安装Appium Desktop 的windows版本(ht
2017-10-31 10:48:19
10210
原创 当Xcode大于等于8时,如何使用Appium Desktop 获取iOS APP控件的id进行自动化测试
背景:当 Xcode 升级到 8,在iOS自动化测试中,以前老的appium(1.5.3)的版本再也无法启动 iOS APP(官错误信息显示:Requested iOS support with version >= 10, using XCUITest driver instead of UIAutomation-based driver, since the latter is unsuppor
2017-10-24 13:51:52
3873
原创 fiddler 设置断点并修改请求
1 fiddler有两种方式设置断点在菜单栏Rules-》Automatic BreakPoints的下拉菜单里选择设置断点的方式(Before Requests,After Responses),取消断点选择Disabled。这种设断点的方式是对所有url生效。用bpu命令对特定url设置断点,这种方式断点设在Before Requests。取消断点时只需要再执行bpu命令即可。 执行如下命
2017-09-16 10:01:33
29075
5
原创 如何使用siege对接口进行性能测试
背景: 上篇讲了在windows下使用jmeter进行性能测试(http://blog.csdn.net/wanglin_lin/article/details/77963931),这篇我谈谈在ubuntu下如何使用siege进行性能测试!1 创建Ubuntu服务器创建Ubuntu 服务器介绍下我自己如何创建的Ubuntu 服务器: 在azure(https://portal.azure
2017-09-15 13:01:04
1600
原创 Jmeter +Maven+jenkins 接口性能全自动化测试
背景:首先用jmeter录制或者书写性能测试的脚本,用maven添加相关依赖,把性能测试的代码提交到github,在jenkins配置git下载性能测试的代码,配置运行脚本和测试报告,配置运行失败自动发邮件通知,这样一来性能测试的job配置完成。接着,把性能测试的job配置成开发job的下游job,一旦开发有了新的代码提交运行开发自己的job后,就会自动触发我们性能测试的job。这样我们就实现了接口
2017-09-13 14:10:27
14793
6
原创 Fiddler 如何抓取Android APP的数据
背景: 假如Android APP 有一个登录页面是webview,点击登录按钮后,页面没有跳转一直在加载,这时我们如何确定是客户端还是服务端的问题呢?我们就需要通过fiddler 抓取点击登录按钮后的数据包,查看相关请求的状态码和数据包的内容,并对其做进一步的分析和调试。1 下载fiddler 并安装下载的URL: http://www.telerik.com/fiddler2 配置
2017-09-09 13:49:54
4790
原创 如何定位APP上的webview控件
背景:在使用appium进行app测试时,发现很难定位webview上的控件. 使用chrome-development tool 来定位元素:android手机连接PC, 并确保在cmd中输入adb devices 可以找到devices的序列号.打开APP的webview 页面。在 PC机的chrome 浏览器上输入如下地址: chrome://inspect/#devices你会看到如
2017-09-09 11:36:32
7921
原创 Jenkins job 之间实现带参数触发
开发打包的 jenkins job A 是在 local 的一台 windows 上,同时在这台 local 的 windows 上还有一 另一个 jenkins job B 是用来上传 job A 生成的包(build)到测试平台的仓库(比如 saucelabs storage)。然而 我们测试的 jenkins job C 是在 azure 上的一台 windows server 2012 上。
2017-06-30 14:24:42
14251
原创 jenkins 出现“Error 403 No valid crumb was included in the request ”的解决方案
背景介绍开发的jenkins job 在local的 一台windows 上,而我们测试的jenkins job 在azure 上的一台windows server 2012 上。由于 azure上机器的网络比local的网络好,所以测试不愿意把测试job建在开发的jenkins上,开发也觉得迁移自己的job到azure上麻烦。那我们只能使用Remote access API(https://wik
2017-06-28 16:05:01
60072
5
原创 Java + testng +maven + appium for IOS 自动化测试
为了在自动化测试中节省时间节省真机的成本,而且更高效的覆盖所有的IOS版本,避免兼容性问题和实现全面自动化测试,我采用saucelabs(https://saucelabs.com)平台提供的虚拟设备。
2017-02-07 16:18:23
6254
1
原创 saucelabs + python +behave+ appium for android自动化测试
1. 背景介绍:为了在自动化测试中节省时间节省真机的成本,而且更高效的覆盖所有的android版本,避免兼容性问题和实现全面自动化测试,我们采用saucelabs(https://saucelabs.com)平台提供的虚拟设备。使用简单易书写的python语言和appium开源框架以及单元测试behave,结合build工具jenkins 实现全自动化android 自动化测试。2. 环境搭建:2.
2016-12-20 13:21:02
4019
1
原创 SauceLabs + Selenium+ Nunit For Web Ui Test
Part I: about seting up the environment1. I use C# language for writing test case.2. install Visual Studio 2015 like picture below:3. using NuGet on Visual Studio to install Nunit,selenium support and
2016-09-23 15:43:57
1345
原创 Jenkins + Saucelabs+ Curl上传被测app 到saucelabs storage
背景由于测试代码是运行在saucelabs的VM平台的,所以需要把被测app放在你指定位置如:http://appium.s3.amazonaws.com/TestApp6.0.app.zip当然也是可以的 。这里我选择把被测应用通过curl放到saucelabs storage,由于saucelabs会7天后清除saucelabs storage,所以 我在测试代码运行的jenkins job 前
2016-07-19 14:08:47
1003
原创 Saucelabs+Java+TestNG+Appium+Maven+Git+Jenkins+ReportNG for Android 自动化测试
最近学了利用Appium+Maven+TestNG(ReportNG)搭建全自动化测试环境,使用https://saucelabs.com/ 网站提供的VM平台(可以手动测试与自动化测试,并且可以多线程多设备并行测试Web,Android与IOS),通过Jenkins从Git下载测试代码并触发运行,实现真正意义上的完全自动化测试。
2016-07-17 15:51:12
9248
1
原创 python 报错TypeError: 'range' object does not support item assignment,解决方法
1. 例子如下:from math import sqrtif __name__ == '__main__': N = 100 a = range(0,N) for i in range(2,int(sqrt(N))): for j in range(i + 1,N): if (a[i] != 0) and (a[j] != 0):
2016-03-07 15:23:53
38674
11
原创 python中的reduce介绍:
1. 概念说明 python中的reducepython中的reduce内建函数是一个二元操作函数,他用来将一个数据集合(链表,元组等)中的所有数据进行下列操作:用传给reduce中的函数 func()(必须是一个二元操作函数)先对集合中的第1,2个数据进行操作,得到的结果再与第三个数据用func()函数运算,最后得到一个结果。 如: def myadd(x,y):
2016-02-23 21:05:41
2918
原创 StrictMode VMPolicy demo介绍
1. 背景介绍:在系统稳定性monkey测试和案例测试中,我们在dropbox发现了大量的关于strictmode严苛模式的报错,为了增强系统稳定性,我们打算在项目初期就把这些类型的报错提给开发,来解决。对此本文写了StrictMode(VmPolicy)类型的demo以供大家粗粗略了解StrictMode。2. StrictMode 详解:StrictMode 通过策略方式来让你
2016-02-23 20:57:28
2362
原创 android杀掉指定包名的应用程序
1 利用反射调用forceStopPackage来结束进程1.1 代码如下: Method forceStopPackage = am.getClass().getDeclaredMethod("forceStopPackage", String.class); forceStopPackage.setAccessible(true); forceStopPackage.invoke(
2015-12-02 10:18:16
7014
原创 Android 如何监听物理键Back,弹出一个Toast提示框或对话框
一、监听back键,退出时弹出一个对话框,在Activity中重写 onKeyDown方法,代码如下:@Overridepublic boolean onKeyDown (int keyCode, KeyEvent event) { if (keyCode == KeyEvent.KEYCODE_BACK) { // 创建退出对话框
2015-11-30 15:13:32
2926
原创 AndroidTestCase来进行android 单元测试简介
1 通过AndroidTestCase 实现的大致步骤:添加自己的test case code, 让它们继承自AndroidTestCase.定义自己的testSuite类,用来管理test cases.定义自己的testRunner,用来执行测试.2 这种方法所涉及到的android的类以及接口:Android Test Case classes需要从AndroidTestCase类派生
2015-10-20 09:13:31
10992
1
转载 Android自动化测试(UiAutomator)简要介绍
一、一个BUG引发的问题 如果研发过程中有一个BUG:“不断的切换手机语言出现花屏现象”。这个问题我们如何验证呢?我想,最好的方式应该是自动化测试。 那么,自动化测试可以完成哪些任务呢? 简单的说,那些重复性的测试工作,都可以交给自动化完成: 1、设置手机的语言 2、添加、删除、收藏联系人 3、拨号、挂
2015-10-18 21:42:11
1086
转载 搭建Android UI Testing自动化测试开发环境
最近公司在开展Android的自动化测试,美国那边的开发人员利用Android的UI Testing和powershell搭建了一个Android自动化的框架。通过几天的学习,大概熟悉了他们的这套框架了。新的Android SDK提供2个工具用以UI的自动化:uiautomatorviewer - 一个GUI工具,用来扫描识别UI上面的控件uiautomator - JAVA类
2015-10-18 21:40:17
1230
转载 使用uiautomator做UI测试
在Android 4.1发布的时候包含了一种新的测试工具– uiautomator ,uiautomator是用来做UI测试的。也就是普通的手工测试,点击每个控件元素 看看输出的结果是否符合预期。比如 登陆界面 分别输入正确和错误的用户名密码然后点击登陆按钮看看是否能否登陆以及是否有错误提示等。功能性或者黑盒UI测试不需要测试人员了解程序如何实现的,只需要验证各种操作的结果是否符合预期即可。这
2015-10-18 21:37:24
951
原创 版本控制工具(CVS、SVN、GIT)简介
1 版本控制工具的功能:版本控制工具: 提供完备的版本管理功能,用于存储、追踪目录(文件夹)和文件的修改历史,是软件开发者的必备工具,是软件公司的基础设施。版本控制软件的最高目标,是支持软件公司的配置管理活动,追踪多个版本的开发和维护活动,及时发布软件。2 版本控制软件有:CVS 、Visual SourceSafe、PVCS 、SVN、GIT……CVS(Concurrent
2015-10-01 11:12:03
13284
1
原创 Robotium 介绍
Robotium 框架概述Robotium是一款测试Android应用程序的开源的自动化测试框架(开源库)它是为了弥ActivityinstrumentationTestCase2(是Android单元测试框架Instrumentation的一个类)对集成测试不足而编写的。Robotium除了在Instrumentation API的基础上提供了更多的操作控件的函数外,还通过反射等手段,通过调用
2015-10-01 10:35:31
2635
原创 缺陷分析与处理
1 首先由4个问题开始:缺陷处理存在的通病是什么?通病产生的原因,需要如何去面对和提高?怎么分析日志和处理缺陷?缺陷的后期处理?2 听听程序猿的心声BUG的描述不清楚,表达逻辑欠缺;无效问题一大摞,重复问题数不清,偶现问题log不全;不会分析log或代码。3 看看测试童鞋们的抱怨偶现的bug已经附log,开发说log看不出相关信息,要求复现。开发不自觉自测,改的新代码引发更多的
2015-09-22 09:27:39
2188
原创 白盒测试概念
白盒测试概述白盒测试:. 又称透明盒测试、逻辑驱动测试, . 是测试被测单元内部如何工作的一种测试方法, . 根据程序内部逻辑结构及有关信息来设计和选 择- 测试用例,对程序的逻辑结构进行测试, . 可覆盖全部代码、分支、条件和路径等。2.白盒测试的目的. 保证程序中所有关键路径的测试,防止由于没有执行的路径在实际投入运行后执行到发生意外的情况; . 衡量测试完整性;
2015-09-16 09:23:19
6466
原创 Alpha和Beta测试的区别
AutoRunner是一款自动化测试工具。AutoRunner可以用来执行重复的手工测试。主要用于:功能测试、回归测试的自动化。它采用数据驱动和参数化的理念,通过录制用户对被测系统的操作,生成自动化脚本,然后让计算机执行自动化脚本,达到提高测试效率,降低人工测试成本。TestCenter(免费)是一款功能强大的测试管理工具,它实现了:测试需求管理、测试用例管理、测试业务组件管理、测试计划管理...
2015-09-08 21:07:53
1349
原创 非阻塞的AlertDialog的代码实现
非阻塞的AlertDialog的代码实现如下:main.xml<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" ...
2015-09-08 20:50:37
999
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人